一致性Hash算法(KetamaHash)的c#实现最近在研究一致性HASH算法(ConsistentHashing),用于解决memcached集群中当服务器出现增减变动时对散列值的影响。后来在JAVAEYE上的一篇文章中,找到了其中的KetamaHash算法的JAVA实现(一种基于虚拟结点的HASH算法),于是为了加深理解,对照JAVA版本,用C#重写了一个。放到这里,如果大家感兴趣的话,可以下载测试一下,如果发现写法有问题请及时告之我,以便我及时修正。下面是对Ketama的介绍:田日Ketamaisanimplementationofaconsistenthashingalgorithm,meaningyoucanaddorremoveserversfromthememcachedpoolwithoutcausingacompleteremapofallkeys.Hereshowitworks:* Takeyourlistofservers(eg:1.2.3.4:11211,5.6.7.8:11211,9.8.7.6:11211)* Hashea