0

在我的产品中,我使用 SwiftMQ 作为消息传递服务。我看到它使用了 page.dg 文件,并且我读到它是 JMS 事务文件。我看到它在我的环境中变得非常大,达到 9 GB。我在网上做了一些研究,但无法明确回答我的疑问。基本上 -- 1. 为什么要使用 page.db 文件,手动删除该文件的含义是什么。会不会有什么不良影响?另外,我可以控制这个文件的增长超出某个可配置的大小吗?对这些答案的任何澄清将不胜感激。

4

3 回答 3

0

page.db 用于存储进入队列的持久消息,一旦被消费者消费,它们将被删除。如果您想限制 page.db 的最大大小,这是不可能的,但是一种解决方法是分析您的流量(查看一条消息占用多少空间 [page.db 大小/一次所有队列中的消息数] ) 然后定义队列的最大消息限制。

于 2015-04-28T07:22:07.510 回答
0

我们也在我们的 linux 服务器上使用 SwiftMQ。据我所知,page.db 和事务文件就像队列中消息的“日志”。

如果您手动删除 page.db 和事务文件,它将删除当时队列中的所有消息。我以前做过。

但是我不确定控制文件的增长?

于 2013-05-24T08:41:06.520 回答
0

page.db 包含的是实际的持久数据存储(包含页面并且是一个数据库,所以这是名称;-))。每个更改都记录在 transaction.log 中。这是在检查点期间同步的。

page.db 增长的问题非常简单。有一个或多个队列有大量的持久消息积压日志。在许多情况下,这些都是死的持久订户。所以只需检查 SwiftMQ Explorer:Queue Manager Swiftlet / Usage,右键单击“显示实体表”。单击“消息计数”列按消息计数排序。这应该有助于识别有积压的队列。

顺便说一句,有一个SwiftMQ 用户论坛,您的问题将有更多机会得到解答。

于 2013-09-06T16:37:01.340 回答