转自:https://www.cnblogs.com/bonelee/p/6244410.html
https://www.cnblogs.com/lpfuture/p/5796398.html
总结:
一致性哈希算法有效解决,分布式缓存节点增减缓存导致不可用问题,创造性加入虚拟节点解决数据倾斜问题。
比以往根据id分段哈希取模要灵活,如果id非连续采用32位uuid必将导致写入数据倾斜,一个节点宕机导致无法读/写入这个节点.
疑问:
新加入节点将导致新节点和逆时针上一个节点之间的数据,存入缓存节点变化,原存入节点数据怎么处理 ? 怎么存入新节点?
已经存入原节点数据不清理将带来资源浪费,存入新节点还依赖程序缓存采用策略,若是缓存获取失败从数据库获取,能天然支持动态增减缓存节点
读取是否也采用按照一致性算法,从memcache源代码中暂时未找到