Nginx是一款轻量级高并发WEB软件。占用内存很小的情况下依然能处理多量请求。因此很多方面得到应用。
比如WEB网站。
Nginx代理转发轮询负载
Nginx服务器 可以把用户的请求,根据算法,把请求转发到后端不同的WEB服务器上。实现业务分担。
环境准备服务器三台:
一 Nginx 服务器,负责转发前端请求至后端WEB服务器,系统Linux 7.3 1台,IP地址:192.168.132.100:8080
二 WEB 1服务器,业务网站,系统 Linux 7.3 1台 IP地址:192.168.132.88:80
三 WEB 2服务器,业务网站,系统 Linux 7.3 1台 IP地址:192.168.132.100:80
实际应用,需要企业映射 Nginx服务器出公网,即可。
三台服务器。
配置好WEB1 ,WEB2业务网站服务器。这里不做配置指导。
为了好区分,WEB服务器做了两个主页,内部文字不一致。便于区分。
WEB1 主页:
WEB2 主页:
核心配置在Nginx 服务器192.168.132.99:
如果Linux没有安装 vim编辑器,可以在线安装:yum install vim 安装
配置Nginx配置文件:
vim /usr/local/nginx/conf/nginx.conf
核心配置文件:
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
pid /usr/local/nginx/logs/nginx.pid;
events {
worker_connections 1024;
}
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 0;
keepalive_timeout 65;
#gzip on;
upstream xli1994 { # 配置服务器集群 定义名xli1994 下面需要引用
server 192.168.132.100:80 weight=1; # 配置后端服务器 IP 端口 权重值
server 192.168.132.88:80 weight=1; # 配置后端服务器 IP 端口 权重值
}
server {
listen 8080; #监听 Nginx服务器 8080端口
server_name 127.0.0.1; #Nginx 服务器IP 如果在公网,请填写 公司的正确域名地址。
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://xli1994; #引用 上面服务器集群的名 xli1994 , proxy_pass 请求转发 给上面集群服务器 xli1994
add_header backendIP $upstream_addr;
add_header backendCode $upstream_status;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
root html;
index index.html index.htm;
}
测试:
访问 Nginx代理服务器 192.168.132.99:8080 ,看页面变化情况。再次刷新,看到页面来回变化。这Nginx 服务器就实现了按照权重,把用户的请求 转发给后端WEB服务器。实现业务压力分担。
下节,如何配置Nginx 服务器。
2020.11.10