Nginx upstream_hash_module 基于任意关键字实现负载均衡
Nginx upstream_hash_module 基于任意关键字实现负载均衡
upstream_hash模块不再局限于仅仅只能通过用户的IP来作为关键字,我们可以指定任意的关键字。关键字当中既可以含有字符串也可以含有变量,我们可以随意的组合。这和我们大部分的模块如map模块相似。
upstream iphashups{ hash user_$arg_username; #这里使用字符串来做hash,而不是使用客户端真实IP,构造了一个前缀加上变量 server 192.168.179.100 ; server 192.168.179.101 ; keepalive 256; }server { listen 80; server_name test.com; location /{ proxy_pass proxy_1.1; proxy_set_header Connection ""; proxy_next_upstream error proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }[root@vhost]# while true;do curl 192.168.179.99?username=thrh;sleep 1;done --可以看到username传值不同访问的后端服务器也不一样proxy this is 192.168.179.100 pageproxy this is 192.168.179.100 pageproxy this is 192.168.179.100 page^C[root@vhost]# while true;do curl 192.168.179.99?username=tWVwvV;sleep 1;doneproxy this is 192.168.179.101 pageproxy this is 192.168.179.101 pageproxy this is 192.168.179.101 page
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~