由于消息是存磁盘的,但是磁盘空间是有限的,所以对于磁盘上的消息是需要清理的。
当出现以下几种情况下时就会触发消息清理:
手动执行删除 默认每天凌晨4点会自动清理过期的文件 当磁盘空间占用率默认达到75%之后,会自动清理过期文件 当磁盘空间占用率默认达到85%之后,无论这个文件是否过期,都会被清理掉
上述过期的文件是指文件最后一次修改的时间超过72小时(默认情况下),当然如果你的老板非常有钱,服务器的磁盘空间非常大,可以将这个过期时间修改的更长一点。
有的小伙伴肯定会有疑问,如果消息没有被消息,那么会被清理么?
答案是会被清理的,因为清理消息是直接删除CommitLog文件,所以只要达到上面的条件就会直接删除CommitLog文件,无论文件内的消息是否被消费过。
当消息被清理完之后,消息也就结束了它精彩的一生。
还没有评论,来说两句吧...