nginx负载均衡302跳转设置,基于perl的一致性哈希。 目的:降低 后端大文件服务器由于新增和故障调整的影响 通过nginx的perl_module来实现302,根据请求的哈希跳转crc32校验 工作环境: perl版本在>=5.10.0 nginx版本 >==0.8.33 二点必要
rewrite.pm 配置
复制代码代码如下:
package rewrite; use nginx; use Hash::ConsistentHash;
use String::CRC32;
my $url = $chash->get_bucket($uri);
nginx server 配置
复制代码代码如下:
server {
listen 80 ; server_name www.hello.com; root /tmp/hello; location ~ \.exe { perl rewrite::handler; } }
nginx conf配置(加2行)
由于Hash::ConsistentHash对perl要求版本>=5.10.0,如果你系统perl较低需升级perl版本并重新编译nginx; |