php调用memcahe的权重无效
<code>PHP使用Memcached的扩展addServers使用权重,但是结果还是1:1,权重10:0,请问是什么原因呢? </code>
<code><?php/** * 测试memcache一致性hash * 使用docker运行 * * docker pull memcached * docker stop memcache-01 * docker stop memcache-02 * docker rm memcache-01 * docker rm memcache-02 * docker run --name memcache-01 -p 11201:11211 -d memcached * docker run --name memcache-02 -p 11202:11211 -d memcached */$mem = new Memcached;$mem->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;$iadd($key,'1');}</code>
回复内容:
php调用memcahe的权重无效
<code>PHP使用Memcached的扩展addServers使用权重,但是结果还是1:1,权重10:0,请问是什么原因呢? </code>
<code><?php/** * 测试memcache一致性hash * 使用docker运行 * * docker pull memcached * docker stop memcache-01 * docker stop memcache-02 * docker rm memcache-01 * docker rm memcache-02 * docker run --name memcache-01 -p 11201:11211 -d memcached * docker run --name memcache-02 -p 11202:11211 -d memcached */$mem = new Memcached;$mem->addServers( [// ['192.168.33.4',11201,10], <em>8本文来源gao.dai.ma.com搞@代*码(网$</em><pre>搞代gaodaima码
[‘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;$iadd($key,’1’);}
-
结论:
-
1 权重只有在使用一致性哈希的时候才有效
-
2 一致性哈希的时候必须使用OPT_LIBKETAMA_COMPATIBLE
* -
疑问:两个参数必须同时才能生效,为什么要做成2个呢?