Disruptor

Disruptor


关键标记汇总(对照图理解)
✅ 运行在 Disruptor 队列(RaftTask)
ClientRequestTask 客户端写请求处理
AppendEntriesTask Follower 处理日志复制请求
ReplicatorResponseTask Leader 处理 Follower 复制回执
StateMachineTask 状态机 apply 任务
RequestVoteTask / PreVoteTask 选举任务
TimeoutNowTask 选举超时触发任务
SnapshotSaveTask / InstallSnapshotTask 快照任务
📡 Netty 网络异步(不在 Disruptor)
rpcService.invokeAsync() 发起跨节点 AppendEntries、RequestVote
网络收发、报文编解码
⚠️ 回调逻辑绝对不能直接处理 Raft 状态,必须投递任务进 Disruptor
⏰ Scheduler 定时线程(不执行业务)
心跳、选举超时定时器触发 → 封装任务扔进 Disruptor
⚠️ 禁止阻塞链路
stateMachine.onApply() 运行在 Disruptor 单消费线程,一旦阻塞,整个节点所有 Raft 任务停滞。