PHP memcached模块中的一致性哈希是如何工作的?
虽然我在互联网上搜索了很多,但我还是无法回答一些关于memcached的问题PHP memcached模块中的一致性哈希是如何工作的?,php,memcached,consistent-hashing,Php,Memcached,Consistent Hashing,虽然我在互联网上搜索了很多,但我还是无法回答一些关于memcached的问题 PHP的memcached模块使用的一致哈希算法是什么 它的设置是什么(即,它在环上添加了多少次服务器?) 一致性哈希数组(连续环)是否缓存在某个位置,或者在每次脚本执行时重新计算?如果是后者,是否会导致性能问题/计算能力浪费 谢谢 PHP的memcached模块使用的哈希算法是什么 根据您的需要有不同的。有关选项,请参阅本页:您可以对池中的实例计数使用标准的模运算(DISTRIBUTION\u MODULA),也可以
DISTRIBUTION\u MODULA
),也可以使用一致的散列密钥分发算法(DISTRIBUTION\u consistent
)。如果需要,还可以在项键本身上为哈希算法提供选项(hash\uuu
)
如果您要经常将实例放入池中或从池中取出,那么您应该看看一致性散列方法。我从未实际使用过它,可能也应该使用它,因为它可以减轻服务器故障的影响,而且这样做不会影响可测量的性能。。。事后看来,这似乎是不需要动脑筋的。认为memcached扩展可能会将默认值更改为该值。我已经读到,使用一致的散列,您可以期望丢失10-25%的密钥(或者更少,如果池中有更多服务器),而使用默认方法,可能会接近100%的丢失
更具体地说,一致性算法基于。那里的自述很好地总结了它产生的原因和工作原理