最近几天研究了下一致性哈希算法,总算是搞明白它是怎么一回事了,这里记录一下自己的理解。一致性哈希算法主要是针对分布式缓存系统的算法。要想搞清楚一致性哈希的的优缺点,那就必须从它的发应用场景说起,也就是为什么分布式缓存中要使用一致性哈希算法,传统的做法有什么缺点,会带来什么问题。首先来看一下传统的做法,我们知道缓存在大型的应用系统中的地位是很重要的,它能有效的减少数据库的访问次数,从而减少IO提高系统的反应速度,得到较好的用户体验。因此一般应用系统都会使用Redis或者Memcached等中间件做缓存。而在数据量比较大的情况下,一台缓存服务器往往是不足以扛住大数据量的压力,所以会搭建一个缓存服务器的集群。缓存数据就会由原来在一台服务器上变为分布在一个缓存集群上,那数据怎么才能均匀的分布在集群中的节点上呢。又该怎么快速去定位待查询的数据在哪台缓存服务器上呢。
more >>