- 浏览: 9718 次
- 性别:
- 来自: 深圳
最新评论
-
hellwhj:
所以说,其实完全可以专门做一个迁移服务来做这个事的,不需要改变 ...
一致性哈希算法的优化----关于如何保正在环中增加新节点时,命中率不受影响 -
hellwhj:
感觉在实践中,本方案应用面比较窄,仅适用于不用虚拟节点的情况, ...
一致性哈希算法的优化----关于如何保正在环中增加新节点时,命中率不受影响 -
lanceyan:
scott怎么没有继续写文章了
一致性哈希算法的优化----关于如何保正在环中增加新节点时,命中率不受影响 -
biankai008:
最近正准备做memcache集群,受益良多啊。
一致性哈希算法的优化----关于如何保正在环中增加新节点时,命中率不受影响 -
malphi:
的确另辟蹊径。不过貌似找key的需求非常少
另辟蹊径-检查memcached中指定的key是否存在
文章列表
我们都知道,memcached的协议中是没有任何一个协议提供给我们检查某个key是否存在的。但是我们可能会有这样的需求。
一些开源的客户端提供了KeyExists()这样的方法,但是其实现原理是调用了memcached的get协议,以此来达到判断某个key是否存在的目的:能取到表示这个key存在,取不到则不存在。这样的效率是比较低的,特别是当数据包比较大的情况下。
在不读取memcached的数据的情况下,如何高效的判断某个key是否存在呢?
大家都知道memcached的cas(check and set)协议吧,该协议在写memcach ...
背景
09年初,我们做了一个memcached的智能客户端库,业务只要将这个库链上,就能跟memcached服务器通信。并且实现了一致性哈希的分布式算法,后端memcached服务器可以无限制扩展,而且客户端能对memcached做自动故障转移以及恢复。
我们知道,在没有对数据做冗余存储的情况下,无论是一致性哈希还是求余数分布式算法,在新增或删除memcached节点时,命中率都会不同程度的降低。本文旨在解决当新增memcached节点时,如何保证命中率不变。
基本原理