文章目錄
- 1、介紹
- 2、nginx配置負載均衡
- 3、啟動nginx
- 4、測試日志
- 5、備注
1、介紹
伺服器:1台
服務:一個
端口:三個(一個對外接口(80),兩個内部服務接口(3002, 3022))
nginx:一份
思路:配置負載,不管我們後端服務有沒有啟動,nginx是可以正常啟動的。那麼我可以認為nginx目前在監聽的端口有兩個3002和3022,那麼如果我們3002服務挂了,那麼這個時候nginx是将我們的請求轉發到3022上面。那麼我們在更新背景服務的時候,隻需要啟動另外一個端口成功後,在将開始的一個端口關閉掉就可以讓使用者無感更新,背景使用運作一個項目,更新内外一個端口,停掉開始的

2、nginx配置負載均衡
Nginx目前支援6種方式的負載均衡政策:
輪詢(預設方式)
weight(權重方式)
ip_hash(依據ip配置設定方式)
least_conn(最少連接配接方式)
fair(第三方提供的響應時間方式)
url_hash(第三方通過的依據URL配置設定方式)
server {
listen 80;
server_name 111.11.111.21;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://real_server;
}
}
// 權重
upstream real_server {
server 127.0.0.1:3002 weight=1; #輪詢伺服器和通路權重
server 127.0.0.1:3022 weight=2;
}
// 最少連接配接方式,把請求發給連結數最少的後端伺服器
//upstream real_server {
// least_conn;
// server [IP位址]:[端口号] weight=2;
// server [IP位址]:[端口号];
//}
3、啟動nginx
參考下一遍文章:docker部署nginx
4、測試日志
啟動3002端口:
啟動3022端口:
啟動3002、3022端口: