(1) 轮询
upstream backserver { server 192.168.0.1; server 192.168.0.2; }
(2) 加权轮询
upstream backserver { server 192.168.0.1 weight=3; server 192.168.0.2 weight=7; }
(3) ip_hash[解决登录态问题]
upstream backserver { ip_hash; server 192.168.0.1; server 192.168.0.2; }
(4) fair模块[跟踪后端服务器的负载来分发请求]
按后端的响应时间来分配请求,响应时间短的优先分配
upstream backserver { server server1; server server2; fair; }
(5) check模块[check后端节点检查扩展]
nginx_upstream_check_module (后端服务器健康检测模块)
upstream backserver { server server1; server server2; fair; check interval=3000 rise=2 fall=5 timeout=1000 type=http }
timeout=1000 超时1s即失败
fall=5 检测5次,都失败则标记rs为down
interval=3000 每隔3s检测一次
rise=2 请求2次则标记rs为up
type=http 发送http请求,通过后端的回复包状态来判断后端是否存活