upstream backend {
server backend1.example.com weight=5;
server backend2.example.com:8080;
server unix:/tmp/backend3;
}
server {
location / {
proxy_pass http://backend;
}
}
http {
upstream myproject {
server 127.0.0.1:8000 weight=3;
server 127.0.0.1:8001 max_fails=100 fail_timeout=30000; # 允许请求失败的次数;经过max_fails失败后,服务暂停的时间;
server 127.0.0.1:8002 backup; # 预留的备份服务器(当正在使用的后端服务异常时,启动预留服务)
server 127.0.0.1:8003 down; # 当前server暂时不参与负载均衡
server 127.0.0.1:8004 max_conns=100; # 限制最大的接受的连接数
}
server {
listen 80;
server_name www.domain.com;
location / {
proxy_pass http://myproject;
}
}
}
算法 | 说明 |
---|---|
加权轮询 | weight值越大,访问到的几率越高 |
ip_hash | 每个请求按访问IP的hash结果分配,来自同一个IP的请求会访问固定的服务器 |
least_conn | 最少链接数,哪个机器的连接数少就分配到那个机器上 |
url_hash | 按照访问的URL的hash分配请求,每个url定向到同一个服务器 |
hash关键数值 | hash自定义的key |
todo
todo
todo
原文:https://www.cnblogs.com/CSunShine/p/11529345.html