Nginx 负载均衡配置
upstream
配置多个域名 多个监听端口
# 服务
server
{
listen 888;
listen 666;
server_name aaa.baidu.com bbb.csdn.net;
默认策略 = 轮询 平均分配请求
轮询
weight 加权轮询指令(能力越强责任越大-需手动配置)
根据权重配置 weight后数字越大 责任越大
upstream tomcats{
server 1.1.1.1 weight=1;
server 1.1.1.2;
server 1.1.1.3 weight=5;
server 1.1.1.4 weight=3;
}
upstream 指令参数
max_conns 限制某台服务器最大连接数 默认0 不限制 起到保险丝作用 限流
slow_start 【商业版】 缓慢的启动 权重 慢慢往上走 不健康到健康 有权重才支持 slow_start=60s 在60秒内慢慢到配置的最大权重
down 关闭 访问不了改服务器
backup 备份 备用机 备胎 只有在其他服务器挂掉之后才使用
max_fails 最大失败次数 配合fail_timeout使用 如果超过次数 默认为坏的服务器 以后就不会再请求了
fail_timeout 失败的时间段 配合 max_fails 使用 如果超过最大失败次数之后 等待 fail_timeout 秒后会重新请求
upstream tomcats{
server 1.1.1.1 max_conns=1;
server 1.1.1.2;
server 1.1.1.3 weight=5;
server 1.1.1.4 weight=3;
}
keepalive 长连接配置 不用关闭再请求 增加吞吐量 吞吐量越大越好
upstream tomcats{
server 1.1.1.1 max_conns=1;
server 1.1.1.2;
server 1.1.1.3 weight=5;
server 1.1.1.4 weight=3;
keepalive 32;
}
#需要以下配置配合
server{
***
location / {
proxy_pass http://tomcats;
proxy_http_version 1.1;
proxy_set_header Connection "";
}
}
ip_hash
负载均衡原理介绍
根据用户IP hash算法之后分配到某个服务器
upstream tomcats{
#启用IP Hash算法分配
ip_hash;
server 1.1.1.1 max_conns=1;
server 1.1.1.2;
server 1.1.1.3 weight=5;
server 1.1.1.4 weight=3;
keepalive 32;
}
待补充...