PHP使用Memcached的扩展addServers使用权重,但是结果还是1:1,权重10:0,请问是什么原因呢?
addServers( [ // ['192.168.33.4',11201,10], ['192.168.33.4',11202,0] ] ); //$mem->setOption(Memcached::OPT_DISTRIBUTION, Memcached::DISTRIBUTION_CONSISTENT); //$mem->setOption(Memcached::OPT_HASH, Memcached::HASH_MD5); for($i=0;$i<10000;$i++){ $key = md5(uniqid($i.'_')); $mem->add($key,'1'); }
结论:
1 权重只有在使用一致性哈希的时候才有效
2 一致性哈希的时候必须使用OPT_LIBKETAMA_COMPATIBLE
*
疑问:两个参数必须同时才能生效,为什么要做成2个呢?