1)接收生产者发送过来的消息,写入到commitlog,这里如果开启了堆外内存,会写到堆外内存;
2)然后是commitlog文件的刷盘,有两种策略:同步刷盘和异步刷盘,如果是同步刷盘,会将commitlog文件刷回磁盘再返回给客户端,如果是异步刷盘+不开启堆外内存,那么会有异步线程定期将commitlog文件刷回磁盘,如果是异步刷盘+开启堆外内存,那么会先把数据从堆外内存拷贝到commitlog文件对应的mmap内存区,再通知异步线程定期将commitlog文件刷回磁盘;
RocketMQ Broker存储过程
最新推荐文章于 2023-12-15 21:51:00 发布