Nginx配置 upstream 使用的五种方式

2020-04-02  本文已影响0人  师娘哪里去了

upstream配置nginx.conf中的http 下,与server同级。

方式1: 轮询

upstream xxx_server_name{
    server 192.168.10.1:80;
    server 192.168.10.2:80;
    server 192.168.10.3:80;
 }

方式2: 权重轮询

upstream xxx_server_name{
    server 192.168.10.1:80 weight=1;
    server 192.168.10.2:80 weight=2;
    server 192.168.10.3:80 weight=3;
}

方式3: ip_hash

每一个请求按訪问ip的hash结果分配

upstream xxx_server_name{
    ip_hash;
    server 192.168.10.1:80;
    server 192.168.10.2:80;
    server 192.168.10.3:80;
}

方式4: 按后端服务器的响应时间来分配请求。响应时间短的优先分配

fair(第三方), fair顾名思义,公平地按照后端服务器的响应时间(rt)来分配请求,响应时间短即rt小的后端服务器优先分配请求。如果需要使用这种调度算法,必须下载Nginx的upstr_fair模块。

upstream xxx_server_name{
    server 192.168.10.1:80;
    server 192.168.10.2:80;
    server 192.168.10.3:80;
    fail;
}

方式5:url_hash

目前用consistent_hash替代url_hash与ip_hash类似,但是按照访问url的hash结果来分配请求,使得每个url定向到同一个后端服务器,主要应用于后端服务器为缓存时的场景下。

upstream xxx_server_name{
    server 192.168.10.1:80;
    server 192.168.10.2:80;
    server 192.168.10.3:80;
    hash $request_uri; 
    hash_method crc32; 
    }

使用方式

将server节点下的location节点中的proxy_pass配置为:http:// + upstream名称,即“
http://xxx_server_name
示例:

location / { 
    root  html; 
    index  index.html index.htm; 
    proxy_pass http://xxx_server_name; 
}

作者:清晨的小白
链接:https://www.jianshu.com/p/ab7cf5484e8f
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

上一篇下一篇

猜你喜欢

热点阅读