nginx分发算法upstream
分发算法有:轮询,weight(权重),ip_hash(每个访客固定访问一个后端服务器),fair(按响应时间分类),url_hash(每个url定向一个后端服务器)
轮询和weight适合静态页面,不适合动态页面
ip_hash 适合动态页面
基于请求分发:
- 基于host分发
- 基于开发语言分发
- 基于浏览器分发
- 基于源ip
分发算法
1.轮询
upstream web {
server 192.168.10.41;
server 192.168.10.42;
}
server {
listen 80;
server_name www.bac.com;
location / {
proxy_pass http://web;
}
}
默认比例1:1
权重weight
upstream web {
server 192.168.10.41 weight=1;
server 192.168.10.42 weight=2;
}
server {
listen 80;
server_name www.bac.com;
location / {
proxy_pass http://web;
}
}
按比例分配,每次1个请求分给41服务器,2个请求分给42服务器
性能差的服务器比例少,性能好的服务器比例大
ip_hash
upstream web{