集群

2018-12-12  本文已影响18人  简书徐小耳

集群通过分片来进行数据共享,并提供复制和故障转移

节点

启动节点

集群数据结构

cluster meet 命令的实现

槽指派

记录节点的槽指派信息

传播节点的槽指派信息

记录集群中所有槽的指派信息

CLUSTER ADDSLOTS命令的实现

在集群中执行命令

计算键属于哪个槽(一共16384)

判断槽是否由当前节点负责处理

MOVED错误

节点数据库的实现

重新分片
image.png
ASK错误

cluster setslot importing命令的实现

cluster setslot migranting 命令的实现

ASK错误
比如下面的例子


image.png
image.png

ASKING命令

ASK错误和MOVED错误的区别

复制与故障转移
设置从节点
image.png
故障检测
image.png
故障转移
image.png
选举新的主节点
image.png
image.png
消息

节点发送的消息有五种

消息头

消息头包含消息正文和记录了消息发送者的一些信息
对应着clusterMsg结构


image.png
image.png

MEET ,PING,PONG消息的实现

FAIL消息的实现

PUBLISH消息的实现

image.png
上一篇下一篇

猜你喜欢

热点阅读