我有jms主题,可能有0,1,2个订阅者(意味着某些订阅者可能已关闭或停止)。 我有生产者不断向主题发送消息,我可以看到消息在主题中排队,我看到有订阅者,我看到我的消费者正在接收消息。但是从activemq web admin intefrace我看到没有消息出列。此外,从heapdump我看到,当时主题中的消息正在增加,但消费者正在慢慢消耗它们,并且生产者正在更快地发送消息。所以过了一段时间我就失去了记忆。
我的问题是,如果消息没有出列,这是否意味着他们在主题中,并且由于计数增长,内存正在增加?我该如何解决这个问题?
来自activemq admin intefrace的副本: 名称消费者数量消息排队的消息排队 TEST_TOPIC 1 26490 0
答案 0 :(得分:1)
默认情况下,消息将存储在您在配置文件中配置的持久性存储中,但只要:
如果您以与生成邮件相同(或更高)的费率消费邮件时遇到问题,您有以下几种可能:
在您的情况下,我将实施上述3种策略中的一种。我个人会选择第二个(待定消息限制策略)。