мой вариант: (CRC32(uri) ^ CRC32(args)) % num_servers, без предварительной конкатенации - xor двух crc32 ничем не хуже, чем CRC32 от конкатенации.
Красиво :)А еще можно честно посчитать, как-то так: crc = CRC32(uri, 0); crc = CRC32(args, crc);
Не пойму, зачем повторять алгоритм бекенда, если его явно неудобно считать в энжинксе? ИМХО, было бы надежнее поменять алгоритм.
С уважением, Петр.
|