deldger 消一致性.
Dlegger 集群 主节点是选举产生的.
slave 投票选举产生.
Raft 协议 先到先得,少数服从多数
MemberState 选举看这个类即可.
Statemachine 状态机
Rpc 请求 io.openmessaging.storage.dledger.protocol
-- 消息丢失:
producer->broker 磁盘 -> consumer
Screenshot 2024-12-16 at 00.31.23.png
- 发送端
rocketmq 同步异步Oneway
kafka 同步和异步发送
主从同步数据如何不丢失?
slave 只是做一个数据备份,但是主从同步失败了,那么Broker这部分也就失败了。
ASYNC_MASTER: 异步同步的主节点
SYNC_MASTER 同步的主节点
SLVE 从节点..
deldger 2阶段提交,多数同意.
消费端 confirm机制,回传状态.
MQ挂掉的情况
Screenshot 2024-12-16 at 00.39.10.png
先写到降级缓存中,然后启动线程不断获取数据,往MQ里面投递,等MQ恢复,继续往下游推。 说白了就是缓存兜底.
Screenshot 2024-12-16 at 00.41.10.png
幂等
生产端: 消息设置唯一的msgId,通过这个id就可以判断是否重复投递过.
消费端: 很多策略
大量消息,临时topic












网友评论