我还没能回答一些关于memcached的问题,我在网上搜索了很多。
谢谢
发布于 2015-07-30 18:51:46
根据你的需要,有不同的选择。请参阅此页面中的选项:http://php.net/manual/en/memcached.constants.php --您可以在池中的实例计数(DISTRIBUTION_MODULA)上使用标准的模块化操作,或者使用一致的散列密钥分发算法(DISTRIBUTION_CONSISTENT)。如果需要的话,项目键本身的哈希算法也有选项(HASH_)。
如果要频繁地从池中删除实例,则应该查看一致的散列方法。我从来没有实际使用过它,而且可能应该这样做,因为它可以减轻服务器故障的影响,没有任何可衡量的性能影响。事后看来似乎没什么大不了的。考虑到memcached扩展应该更改为默认的扩展。我已经读过,使用一致的散列,您可以期望丢失10-25%的密钥(或者在池中有更多的服务器),如果采用默认的方法,则可能会接近100%的损失。
具体来说,一致性算法是基于利勃卡马的。readme很好地总结了它产生的原因以及它是如何工作的。
我不太明白你在问什么。在每台新服务器中添加了多少个“滴答”?认为我们需要更多地关注ketama库--猜测它试图在性能和关键失误之间取得平衡。
不是百分之百确定诚实。虽然这可能是浪费计算,但仍然显得微不足道-- md5算法和一些算法。我能说的是Memcached非常快。如果您需要高可用性、持久的分布式存储,您可能会看到类似于couchDB的其他东西。Memcached很擅长做什么..。在内存键/值存储“小”值。
你可能会喜欢这些文章:
https://stackoverflow.com/questions/31730912
复制相似问题