代码改变世界

随笔档案-2011年12月30日

【C#|.NET】跳出一致性Hash算法 打造更高效的分布式缓存

2011-12-30 18:11 by 熬夜的虫子, 6323 阅读, 收藏,
摘要: 前文 所谓“高效”,觑头而已。背景 谈到分布式缓存,大家首先想到的是memcached。确实memcached是目前最流行的方案之一。不过很多互联网公司不用memcached,例如新蛋。为什么不选择memcached呢,命中率?热插拔?还是性能。这里先不放结论,用事实来说话。算法篇 -1.除余法 如果你手上有老版本的memcache官方文档。你会发现他们用的是除余法来保持节点的一致性。假如你有N台缓存服务器,你需要将某个对象set进某一台节点上。用hash取模这样可以很均匀的保证每台的负载。那么,作为最基本的轮询算法,是否适合分布式缓存我们来看实例。这里假设有4台缓存节点,先设置除余... 阅读全文