美文网首页
RocketMQ-同步、异步刷盘和同步、异步复制

RocketMQ-同步、异步刷盘和同步、异步复制

作者: 快点给我想个名 | 来源:发表于2019-06-24 21:57 被阅读0次

原文链接:https://www.cnblogs.com/toUpdating/p/10021372.html

RocketMQ消息存储

内容+磁盘存储

  • RocketMQ的消息是存储到磁盘上的,这样既能保证断电后恢复,又可以让存储的消息量超出内存的限制。RocketMQ为了提高性能,会尽可能地保证磁盘的顺序写。消息在通过Producer写入RocketMQ的时候,有两种
    写磁盘方式

    • 同步刷盘
      在返回写成功状态时,消息已经被写入磁盘。具体流程是,消息写入内存的PAGECACHE后,立刻通知刷盘线程刷盘,然后等待刷盘完成,刷盘线程执行完成后唤醒等待的线程,返回消息写成功的状态。
    • 异步刷盘
      在返回写成功状态时,消息可能只是被写入了内存的PAGECACHE,写操作的返回快,吞吐量大;当内存里的消息量积累到一定程度时,统一触发写磁盘操作,快速写入。
  • 如果一个broker组有Master和Slave,消息需要从Master复制到Slave上,有同步和异步两种复制方式。

    • 同步复制
      同步复制是等Master和Slave均写成功后才反馈给客户端写成功状态。
    • 异步复制
      异步复制方式是只要Master写成功即可反馈给客户端写成功状态。

相关文章

网友评论

      本文标题:RocketMQ-同步、异步刷盘和同步、异步复制

      本文链接:https://www.haomeiwen.com/subject/pvpaqctx.html