Loading... # 配置在http 下 ## 方式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; } ``` Last modification:January 17th, 2021 at 02:04 am © 来自互联网