一 RocketMQ的工作流程
1.1 生产环节producer
Producer可以将消息写入到某Broker中的某Queue中:其中Producer发送消息之前,会先向NameServer发出获取消息Topic的路由信息的请求,NameServer返回该Topic的路由表及Broker列表。简单的说:路由表的key为Topic名称,value则为所有涉及该Topic的BrokerName列表。
1.2 MQ的存储
RocketMQ中的消息存储在本地文件系统中,这些相关文件默认在当前用户主目录下的store目录中。
abort:该文件在Broker启动后会自动创建,正常关闭Broker,该文件会自动消失。若在没有启动Broker的情况下,发现这个文件是存在的,则说明之前Broker的关闭是非正常关闭。

1.2.1 mq的commitlog
commitlog目录中存放着很多的mappedFile文件,当前Broker中的所有消息都是落盘到这些mappedFile文件中的。需要注意的是,一个Broker中仅包含一个commitlog目录,所有的mappedFile文件都是存放在该目录中的。
mappedFile文件是顺序读写的文件,所有其访问效率很高。
<
最低0.47元/天 解锁文章
1104

被折叠的 条评论
为什么被折叠?



