集群與負(fù)載均衡
在配置中聲明一個(gè)服務(wù)器組
上游配置upstream {}模塊把多服務(wù)器加到一個(gè)組
// 這是個(gè)服務(wù)器組
upstream imageserver {
// server ip:port 權(quán)重 聯(lián)系失敗次數(shù) 失敗超時(shí)時(shí)間
server 192.168.1.204:8080 weight=1 max_fails=2 fail_timeout=30s;
server 192.168.1.204:8080 weight=1 max_fails=2 fail_timeout=30s;
}
下游server配置轉(zhuǎn)發(fā)
location ~ \.(jpeg|jpg|png|gif)$ {
// 轉(zhuǎn)發(fā)到服務(wù)器組
proxy_pass http://imgserver;
proxy_set_header X-Forwarded-For $remote_addr;
}
負(fù)載均衡常用算法/策略
- 設(shè)置計(jì)數(shù)器,輪流請(qǐng)求N臺(tái)服務(wù)器
- 可以安裝第三方模式,來(lái)利用不同參數(shù)把請(qǐng)求均衡到不同的服務(wù)器去
- 如基于cookie值區(qū)別用戶(hù)做負(fù)載均衡,為了解決session不一致或丟失問(wèn)題(nginx sticky模塊)
- 基于URI利用一致性哈希算法做負(fù)載均衡(NginxHttpUpstreamConsistentHash模塊)
- 基于IP做負(fù)載均衡(根據(jù)地區(qū)分配服務(wù)器)等