对GET参数的nginx哈希

我有两台Varnish服务器,我打算添加更多的清漆服务器。 我正在使用nginx负载平衡器来将stream量分配给这些清漆服务器。 为了利用每个清漆服务器的最大RAM,我需要相同的请求到达相同的清漆服务器。 请求URL中的一个GET参数可以标识相同的请求,说'a'

在一个正常的代码中,我会做类似的事情(如果我需要划分2个清漆服务器之间的所有stream量)

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

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

  1. 什么是这样的代码的nginx等价物。 我不知道如果nginx接受modulas
  2. 有一个更好的/有效的散列函数内置nginx(0.8.54),我可以使用。 在将来,我想添加更多的上游池,所以我不需要将%2更改为%3%4等等
  3. 任何其他替代方法来解决这个问题

以查询stringvariables(例如$ arg_x)并将其插入http://wiki.nginx.org/HttpUpstreamRequestHashModule