RocketMQ的消息存储结构 高可用机制

CommitLog(消息内容文件)是以物理文件的形式就行存储,Consume Queue(存储offset的索引)存储消息在CommitLog中的位置信息

RocketMQ的消息存储方式:内存+磁盘存储

两种刷盘方式:

1.异步刷盘:生产者发送消息到消息服务器(Broker),消息只是写到了内存里的pageCach中,然后就返回给生产者发送成功的信息,性能高,当消息占用一定的内存后,会触发一次顺序写机制,快速的将内存里的数据刷到磁盘上。

2.同步刷盘:生产者发送消息到消息服务器(Broker),消息写到了内存里的pageCach后,请求线程阻塞,等到内存中的数据刷到磁盘上后,唤醒阻塞线程,然后就返回给生产者发送成功的信息。

Master-Slave 高可用  brokerid=0是Master节点 其他为从节点  

Master具有读写的功能,Slave只有只读功能

当Master繁忙或不可用时,可以自动切换到Slave读取消息

发布了43 篇原创文章 · 获赞 2 · 访问量 641

猜你喜欢

转载自blog.csdn.net/qq_33348135/article/details/104127509