上一篇介绍到Redis的主从复制的相关的知识点,它解决了单机、单节点、单实例存在问题中-单点故障
。那么今天我们来说说剩下的问题-容量有限
如何应对。
数据可以分类、交集不多
数据可分类.png数据没办法划分拆解
-
hash + 取模
取模.png
弊端-取模的数必须固定,如%3、%5、%7,影响分布式下的扩展性。 -
消息队列
消息队列.png -
一致性hash
一致性hash.png一致性哈希算法的基本实现原理是将机器节点和key值都按照一样的hash算法映射到一个
0~2^32
的圆环上。
当有一个写入缓存的请求到来时,计算 Key 值 k 对应的哈希值 Hash(k),如果该值正好对应之前某个机器节点的 Hash 值,则直接写入该机器节点,
如果没有对应的机器节点,则顺时针查找下一个节点,进行写入,如果超过2^32
还没找到对应节点,则从0开始查找(因为是环状结构)。
推荐使用该方式来解决实际容量的问题。
————————————————————
坐标帝都,白天上班族,晚上是知识的分享者
如果读完觉得有收获的话,欢迎点赞加关注
网友评论