基于树状的负载在应用层解决高并发问题,nginx做代理服务器进行负载均衡,场景如下:
1.本机模拟,模拟成3台
2.前置机为nginx,端口为80
3.应用服务器端口分别为8082和8083都以nginx进行模拟
4.nginx版本为:nginx-1.6.2
应用服务器1配置:
#user nobody;worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 8083; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }}
应用服务器2配置:
#user nobody;worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 8082; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }}
前置机配置:
#user nobody;worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; upstream linkrmb.com { server 127.0.0.1:8083; server 127.0.0.1:8082; } server { listen 80; server_name localhost; location / { proxy_pass http://linkrmb.com; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }}
前置机的代理配置主要点:
1.设置upstream
2.设置proxy_pass
默认的转发策略为轮询