RocketMQ原理深入剖析
2022-03-29 09:47:23 0 举报
RocketMQ源码
作者其他创作
大纲/内容
上报处理消息成功/失败
管理LRU淘汰
相同分组名称
size 4字节
业务系统
hash 8字节
操作系统
topic缓存
NameServer注册中心
MappedFilepage cache
读取
read queue
CommitLog磁盘文件
磁盘文件
offset 8字节
消息写内存
无通讯
PullMessageServer循环拉取消息
消费线程
broker主节点
关联
根据offset定位磁盘文件起始位置读取size大小的数据
写入数据
成功/失败
BrokerbrokerId=0 主节点
存储消息
主从同步
ConsumerQueue
indexFile
Consumer
执行
监听
写入消息
后台线程
消息
写入
偏移量offset
网络连接消息传输
写入消息内存队列
业务逻辑功能
相应结果
根据消息属性查找
producer
重试机制
路由
queues
按照filed进行hash
读取pagecahce数据异步刷盘
根据偏移量读取消息数据
BrokerbrokerId=1 从节点
定时刷新
ProcessQueue
jvm offheap堆外内存
拉取topic路由信息每30s刷新
注册
同一个消费则组 topic
业务自己实现消息处理
500ms
0 条评论
回复 删除
下一页