很久以前就想写这个算法,一直没有时间,搁置了大概半年,趁着国庆还没女票,花了一天写了这个算法
github链接:
https://github.com/shuaidong1996/Consistent-Hashing/tree/master
利用C++11和STL实现的Consistent Hashing
很适合新手看,代码量也不长,但是功能还是有的
就看看最终的功能吧,想看源码可以去下载
直接make
./conHash
然后插入几台服务器
add 1.4.4.255 80 10
add 27.98.248.120 80 20
add 43.228.127.121 80 5
add 58.152.1.247 8080 30
add 58.152.1.248 8080 8
add 115.85.223.255 80 20
add 121.17.134.47 8080 50
add 121.17.134.50 8080 20
add 202.103.12.69 80 60
add 202.103.12.80 80 30
查看服务器具体情况
统计节点的分布情况
可以看出你的hash函数是否合理
我默认设置的是MD5
看这情况分布的还算合理