#配置上游服务器,weight为负载均衡的权重
upstream tests{
server 192.168.1.150:8080 weight=1;
server 192.168.1.151:8080 weight=2;
server 192.168.1.152:8080 weight=5;
#设置长连接,提高吞吐量
keepalive 32;
}
server{
listen 80;
server_name localhost;
location / {
proxy_pass http://tests;
proxy_http_version 1.1;
proxy_set_header Connection "";
}
}
upstream指令参数
max_conns 最大连接数 (版本>1.11.5才能生效)
slow_start 可设置延迟时间后启动指定集群结点(至少两个集群、且需要权重,商业版有效)
down 标识集群中某结点不可用
backup 标识集群中某结点为备用机,只有现有服务器不可用才会启用
max_fail 最大失败次数(默认1,达到会被nginx剔除集群)
fail_timeout 失败时长(默认10s,超过该值会再次尝试连接)
负载均衡之 ip_hash
upstream tests{
#设置ip_hash 负载均衡
ip_hash;
server 192.168.1.150:8080;
server 192.168.1.151:8080;
server 192.168.1.152:8080;
}
负载均衡之 url_hash
upstream tests{
hash $request_uri;
server 192.168.1.150:8080;
server 192.168.1.151:8080;
server 192.168.1.152:8080;
}
负载均衡之least_conn
根据最少连接数去分配请求
upstream tests{
least_conn;
server 192.168.1.150:8080;
server 192.168.1.151:8080;
server 192.168.1.152:8080;
}