tweproxy分片策略——modula分析
假设配置文件中servers项的配置如下:
127.0.0.1:6379:1
127.0.0.1:6380:2
127.0.0.1:6381:3
根据每个server的权重虚拟出对应权重大小个数的虚拟server节点,即:
79->1
80->2,3
81->4,5,6
根据key的hash值取模权重和(所有在线的server的权重之和),得到key对应的虚拟server节点序号,即:
virtual_server_idx = hash%total_weight
根据虚拟节点与真实节点的对应关系,给出key对应的真实节点的序号,即:
假设hash = 10,
virtual_server_idx = 10 % 6 = 4
server_idx -> 81
那么这个key就会被分发到81服务器上处理