ホームページ  >  記事  >  バックエンド開発  >  Nginx 構成は、TCP プロトコルに基づいてリバース プロキシと負荷分散を実装します。

Nginx 構成は、TCP プロトコルに基づいてリバース プロキシと負荷分散を実装します。

WBOY
WBOYオリジナル
2016-08-08 09:24:191432ブラウズ

1. インストール環境

システム環境: centos6.3_x64

ソフトウェアバージョン: nginx-1.4.2.tar.gz nginx_tcp_proxy_module-master.zip

2. ソフトウェアのインストールcd /root/
http://nchc.dl.sourceforge.net/project/pcre/pcre/8.12/pcre-8.12.tar.gz
tar zxvf pcre-8.12.tar.gz
cd pcre-8.12/
./configure
make && make install
cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar - zxvf openssl-1.0.1c.tar.gz
cd /root/
wget http://nginx.org/download/nginx-1.4.2.tar.gz
groupadd www
useradd - g www www
tar zxvf nginx-1.4.2.tar.gz
cd nginx-1.4.2/
# https://github.com/yaoweibin/nginx_tcp_proxy_module にアクセスして、nginx_tcp_proxy_module モジュールをダウンロードします
unzip nginx_tcp_proxy_module-master.zip
patch -p1 < /root/nginx-1.4.2/nginx_tcp_proxy_module-master/tcp.patch
./configure --user=www --group=www --prefix =/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-openssl=/usr/local/src/openssl-1.0.1c --add-module=/root/nginx-1.4.2/ nginx_tcp_proxy_module-master
make && make install

3.nginx設定

# cat /usr/local/nginx/conf/nginx.conf
user www;
worker_processes 8;   #等価CPU核数
error_log logs/error.log;
pid logs/nginx.pid;
events {
use epoll;
worker_connections 51200;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$ http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
client_header_buffer_size 4k;
large_client_header_buffers 4 16k;
client_max_body_size 50m;
client_body_buffer_size 256k;
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
proxy_buffer_size 64k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
gzip on;
}
tcp {
#### dhserver ####
アップストリーム dh {
サーバー 192.168.5.83:26888;
サーバー 192.168.5.84:26888;
チェック間隔=3000 上昇=2 降下=5 タイムアウト=1000;
}
サーバー {
リッスン 26888 ;
proxy_pass dh;
}
#### メインサーバー###
アップストリームメイン{
サーバー192.168.5.85:8088;
サーバー 192.168.5.86:8088;
check interval=3000 rise=2 fall=5 timeout=1000;
}
server {
listen 8088;
proxy_pass main;
}
#### ファイル # ###
アップストリーム ファイル1 {
サーバー 192.168.5.93:30001;
サーバー 192.168.5.94 :30001;
チェック間隔=3000 上昇=2 下降=5 タイムアウト=1000;
}
server {
listen 30001;
proxy_pass files1;
}
サーバー{30002を聞きます。

さらに、NGINX がインストールされているサーバーは、パッチ適用段階がインストール パッケージ内で行われるため、アンインストールして再インストールする必要がある場合があります。少なくとも今のところ、インストールされている nginx サービスにパッチを適用する方法は見つかりません。 README では、インストール パッケージに含まれるパッチのみが紹介されています。
上記では、TCP プロトコルに基づいてリバース プロキシとロード バランシングを実装するための Nginx 構成を、関連する側面も含めて紹介しています。PHP チュートリアルに興味のある友人にとって役立つことを願っています。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。