分布式消息服务ROCKETMQ版-查看RocketMQ消息:消息清理机制

时间:2024-06-06 10:34:18

消息清理机制

无论消息是否被消费,RocketMQ的消息默认保留时间为48小时,最长保留时间为720小时。RocketMQ消息存储在CommitLog文件中,CommitLog文件大小为1GB,当一个CommitLog文件写满后,会生成一个新的CommitLog文件。RocketMQ删除消息是删除CommitLog文件,而不是删除一条消息。CommitLog文件为顺序写入,当最后写入的一条消息过期时,表示CommitLog文件过期。满足如下任意一个条件,CommitLog文件将会被清理:

  • 每天凌晨4点会清理过期的文件,部分老实例由于未设置时区,清理时间为每天中午12点。
  • 当磁盘使用率达到70%时,会立刻清理过期的文件。
  • 当磁盘使用率达到85%时,会从最早创建的文件开始清理,不管文件是否已过期,直到磁盘空间充足。
support.huaweicloud.com/usermanual-hrm/hrm-ug-027.html