RocketMQ的部署方式及持久化方式

RocketMQ 的 Broker 有三种集群部署方式: 1. 单台 Master 部署; 2. 多台 Master部署; 3. 多 Master 多 Slave 部署;采用第 3 种部署方式时, Master 和 Slave 可以采用同步复制和异步复制两种方式。

 

刷盘策略

在commitLog.putMessage中决定刷盘方式,在MessageStoreConfig中配置刷盘的方式

RocketMQ的消息都是持久化的:所有消息保存在commitlog文件夹下的文件中
先写入系统PageCache:所有commitlog下的文件都是使用的直接内存,采用mmap文件映射的方法,每次接收到消息的时候先把消息写入直接内存PageCache——即mapedFile
然后刷盘:启动commitLog的时候会启动刷盘的线程(FlushCommitLogService)定时刷盘

posted @ 2018-04-11 17:38  跨境电商杂货铺  阅读(839)  评论(0编辑  收藏  举报