永发信息网

如何查看redis cluster

答案:1  悬赏:0  手机版
解决时间 2021-03-19 08:09
如何查看redis cluster
最佳答案
Redis Cluster设计要点:

架构:无中心
Redis Cluster采用无中心结构,每个节点都保存数据和整个集群的状态
每个节点都和其他所有节点连接,这些连接保持活跃
使用gossip协议传播信息以及发现新节点
node不作为client请求的代理,client根据node返回的错误信息重定向请求

数据分布:预分桶
预分好16384个桶,根据 CRC16(key) mod 16384的值,决定将一个key放到哪个桶中
每个Redis物理结点负责一部分桶的管理,当发生Redis节点的增减时,调整桶的分布即可
例如,假设Redis Cluster三个节点A/B/C,则
Node A 包含桶的编号可以为: 0 到 5500.
Node B 包含桶的编号可以为: 5500 到 11000.
Node C包含桶的编号可以为: 11001 到 16384.
当发生Redis节点的增减时,调整桶的分布即可。
预分桶的方案介于“硬Hash”和“一致性Hash”之间,牺牲了一定的灵活性,但相比“一致性Hash“,数据的管理成本大大降低

可用性:Master-Slave
为了保证服务的可用性,Redis Cluster采取的方案是的Master-Slave
每个Redis Node可以有一个或者多个Slave。当Master挂掉时,选举一个Slave形成新的Master
一个Redis Node包含一定量的桶,当这些桶对应的Master和Slave都挂掉时,这部分桶对应的数据不可用


Redis Cluster使用异步复制
一个完整的写操作步骤:
1.client写数据到master
2.master告诉client "ok"
3.master传播更新到slave
存在数据丢失的风险:
1. 上述写步骤1)和2)成功后,master crash,而此时数据还没有传播到slave
2. 由于分区导致同时存在两个master,client向旧的master写入了数据。
当然,由于Redis Cluster存在超时及故障恢复机制,第2个风险基本上不可能发生

数据迁移
Redis Cluster支持在线增/减节点。
基于桶的数据分布方式大大降低了迁移成本,只需将数据桶从一个Redis Node迁移到另一个Redis Node即可完成迁移。
当桶从一个Node A向另一个Node B迁移时,Node A和Node B都会有这个桶,Node A上桶的状态设置为MIGRATING,Node B上桶的状态被设置为IMPORTING
当客户端请求时:
所有在Node A上的请求都将由A来处理,所有不在A上的key都由Node B来处理。同时,Node A上将不会创建新的key

多key操作
当系统从单节点向多节点扩展时,多key的操作总是一个非常难解决的问题,Redis Cluster方案如下:
1. 不支持多key操作
2. 如果一定要使用多key操作,请确保所有的key都在一个node上,具体方法是使用“hash tag”方案
hash tag方案是一种数据分布的例外情况
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
绝对值小于10的所有负整数的和是多少
得胜村这个地址在什么地方,我要处理点事
张老板是什么意思
两个人合伙干厂子,但是其中一人没有钱要怎么
9岁儿童吃哪种钙片好
1磅等于多少克?1加仑等于多少升?
大益茶茶包一袋能喝多长时间
此物妖惑人间数千年的动物,猜一个动物,来猜
海南港航职工运动场这个地址在什么地方,我要
一台变压器过负荷了两台变压器运行时中间的母
白果和银杏是一种 果子吗
那里可以看湿度爱情电影
鼻子长痣
我想去当兵 难不难 没有什么大病 一般去体检
关于融通深证100指数基金赎回
推荐资讯
曳步舞 鬼凤跳的是大步还是豪迈步
祥凤银饰店我想知道这个在什么地方
猕猴桃跟火龙果打汁怎么那么苦
几根眉毛长长怎么回事
广东省东莞中学的莞中校歌
去除鲜榨果汁的青味
张家口到五台山怎么走
一位歌手因不满评奖结果 拒绝演出 引起了议论
要交实习鉴定表了,可我因为之前实习期没到就
飞南美洲哪家航空公司最便宜?
传统中国人的姓名是有一定讲究的,它严格按照
走金桥类似的儿歌
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?