我知道db-xx.log是日志文件,db.redo是参考文件吗?
db-xx.log存储尚未使用的消息。消费后,这些消息将从db-xx.log中删除。 db.redo通过消息ID存储消息的引用(存储在db-xx.log中)。
我的理解是代理首先将消息存储在缓存(易失性内存)中,然后在检查点或缓存大小已满时将这些消息移动(附加)到db-xx.log。
由于
答案 0 :(得分:5)
db.data包含引用未消费消息的btree页面。 db.redo是将要对db.data执行的更新的重做日志。 db.free跟踪db.data中的空闲页面。
答案 1 :(得分:2)
db.redo是索引的恢复文件(db.data)。 在activemq启动期间读取db.free并将其加载到内存中。将空闲列表加载到内存后,将删除该文件。卸载消息数据库后,空闲列表将写回db.free。
删除邮件后,队列/主题的行为会有所不同。