幂等:每次用同一个值去计算Hash必须保证能得到同一个值
一,特点
1. 平衡性:指哈希的结果能够尽可能分布到所有缓冲空间里面,
2.单调性: 指如果已经有一些内容通过哈希分派到了相应的缓冲中,又有新的缓冲区加入到系统中,那么哈希的结果应能够保证原有已分配的内容可以被映射到新的缓冲区中去,而不会被映射到旧的缓冲集合中的其他缓冲区。
3.分散性:数据应该分散地存放在分布式集群中的各个节点(节点自己可以有备份),不必每个节点都存储所有的数据
二,原理
1,一致性哈希算法是将每个node接待你映射到一个圆环上,将各Node的key采用hash计算,可得到一个整数数组, 将服务请求使用哈希算法算出对应的hash值,然后根据hash值的位置沿圆环顺时针查找,进行排序 然后首尾相连
2,node的Key 分布在不同的弧段上,
解决机器负载不均衡问题 : 新增副本数,使他们更加分散
三,优点
可扩展性,一致性哈希算法保证了增加或减少服务器时,数据存储的改变最少
更好地使用数据的快速增长,