在GET参数上进行nginx散列

前端之家收集整理的这篇文章主要介绍了在GET参数上进行nginx散列前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有两个Varnish服务器,我计划添加更多的清漆服务器.我正在使用Nginx负载均衡器将流量划分到这些清漆服务器.为了利用每个清漆服务器的最大RAM,我需要相同的请求到达相同的清漆服务器.请求URL中的一个GET参数可以识别相同的请求,说’a’

在正常的代码中,我会做一些像 –
(如果我需要划分2个Varnish服务器之间的所有流量)

if($arg_a % 2 == 0) {
    proxy_pass varnish1;
}

if($arg_a % 2 == 1) {
    proxy_pass varnish2;
}

这基本上是对GET参数a进行偶数/奇数检查,然后决定发送请求的上游池.我的问题是 –

>这种代码Nginx等价物是什么.我不知道Nginx是否接受modulas
>使用Nginx(0.8.54)内置的是否有更好/更高效的散列函数,我可以使用它.将来我想添加更多的上游池,所以我不需要将%2更改为%3%4,依此类推
>任何其他解决此问题的替代方法

最佳答案
获取查询字符串变量(例如$arg_x)并将其插入http://wiki.nginx.org/HttpUpstreamRequestHashModule
原文链接:https://www.f2er.com/nginx/435331.html

猜你在找的Nginx相关文章