Nginx中的upstream 分配方法

Posted 想翻身的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx中的upstream 分配方法相关的知识,希望对你有一定的参考价值。


轮询
轮询是upstream的默认分配方式,即每个请求按照时间顺序轮流分配到不同的后端服务器,如果某个后端服务器down掉后,能自动剔除。
upstream www_cc_com {
server 192.168.1.1:8001;
server 192.168.1.2:8002;
server 192.168.1.3:8003;
}
weight
指定轮询比率,weight和访问几率成正比,主要应用于后端服务器性能差异的场景下。
upstream www_cc_com{
server 192.168.1.1 weight=1; #1/6的概率
server 192.168.1.2 weight=2; #1/3的概率
server 192.168.1.3 weight=3; #1/2的概率
}
ip_hash
每个请求按照访问ip(即nginx的前置服务器或者客户端IP)的hash结果分配,这样每个访客会固定访问一个后端服务器,可以解决session一致问题。
upstream www_cc_com{
ip_hash;
server 192.168.1.1:8001;
server 192.168.1.2:8002;
server 192.168.1.3:8003;
}
fair
公平地按照后端服务器的响应时间来分配请求,响应时间短的后端服务器优先分配请求。
upstream www_cc_com{
server 192.168.1.1;
server 192.168.1.2;
server 192.168.1.3;
fair;
}
url_hash (没怎么去用 所以就不写啦)
访问url的hash结果来分配请求,使得每个url定向到同一个后端服务器,主要应用于后端服务器为缓存时的场景下。

































以上是关于Nginx中的upstream 分配方法的主要内容,如果未能解决你的问题,请参考以下文章

nginx: [emerg] "upstream" directive is not allowed

xdebug 一直报错 upstream timed out (110: Connection timed out) while reading response header from upstre

nginx的upstream目前支持5种方式的分配

nginx upstream的五种分配方式

详解 Nginx 服务器的六种负载均衡策略

nginx的upstream目前支持5种方式的分配