同步刷盘:在消息到达MQ后,RocketMQ需要将数据持久化,同步刷盘是指数据到达内存之后,必须刷到commitlog日志之后才算成功,然后返回producer数据已经发送成功。
异步刷盘:,同步刷盘是指数据到达内存之后
,
返回
producer
说数据已经发送成功。,然后再写入
commitlog
日志。
commitlog
:
commitlog
就是来存储所有的元信息,包含消息体,类似于
MySQL
、
Oracle
的
redolog,
所以主要有
CommitLog
在,
Consume Queue
即使数据丢失,仍然可以恢复出来。
consumequeue
:记录数据的位置
,
以便
Consume
快速通过
consumequeue
找到
commitlog
中的数据