rocketmq 消息机制 博客分类: 常用开源
程序员文章站
2024-03-21 18:28:04
...
Broker会定期删除过期的数据,例如Broker只保存3天的消息,那么这个Buffer虽然长度无限,但是3天前的数据会被从队尾删除。
设置 Broker的Buffer 长度
RocketMQ没有内存Buffer概念,RocketMQ的队列都是持久化磁盘,数据定期清除
存储的消息最多保存 3 天,超过 3 天未消费的消息会被删除。建议配置监控报警实时监控消费进度,并根据报警信息人工介入处理。
设置持久化
RocketMQ的消息存储是由consume queue和commit log配合完成的。
刷盘时间:
消息只是被写入内存 pagecache,写操作返回快,吞吐量达,当内存里的消息积累到一定程度时,统一出发写磁盘动作,快速写入。
默认每天凌晨4点,由broker配置参数deleteWhen决定;或者磁盘空间达到阈值
fileReservedTime 文件保留时长 48小时
ldeleteWhen = “04”, 何时触发删除文件,默认凌晨4点删除文件
坏了如何恢复?重启mq
lflushIntervalConsumeQueue= 1000,消费队列刷盘间隔,默认为1秒
lflushIntervalCommitLog = 1000,commit log刷盘间隔,默认1秒
设置 Broker的Buffer 长度
RocketMQ没有内存Buffer概念,RocketMQ的队列都是持久化磁盘,数据定期清除
存储的消息最多保存 3 天,超过 3 天未消费的消息会被删除。建议配置监控报警实时监控消费进度,并根据报警信息人工介入处理。
设置持久化
RocketMQ的消息存储是由consume queue和commit log配合完成的。
刷盘时间:
消息只是被写入内存 pagecache,写操作返回快,吞吐量达,当内存里的消息积累到一定程度时,统一出发写磁盘动作,快速写入。
默认每天凌晨4点,由broker配置参数deleteWhen决定;或者磁盘空间达到阈值
fileReservedTime 文件保留时长 48小时
ldeleteWhen = “04”, 何时触发删除文件,默认凌晨4点删除文件
坏了如何恢复?重启mq
lflushIntervalConsumeQueue= 1000,消费队列刷盘间隔,默认为1秒
lflushIntervalCommitLog = 1000,commit log刷盘间隔,默认1秒