【问题标题】:What is ActiveMQ.Advisory.Consumer.Queue Enqueue #. Why does it keep increasing什么是 ActiveMQ.Advisory.Consumer.Queue Enqueue #。为什么一直在增加
【发布时间】:2021-03-04 11:33:48
【问题描述】:

我正在使用 ActiveMQ 队列并将消息发布到队列并使用已发布的消息。 我正在使用 spring DefaultMessageListenerContainer 来使用队列中的消息。我的队列名称是 case-queue。当 DefaultMessageListenerContainer 运行时,我在 ActiveMQ Console 中看到,在 Topic 下 - 对于 ActiveMQ.Advisory.Consumer.Queue.cases-queue 和 ActiveMQ.Advisory.Connection --- Enqueue # 保持一个以 10 的增量递增。

将 ActiveMQConnectionFactory.setWatchTopicAdvisories(false) 帮助。抱歉,我对 ActiveMQ 不太熟悉。

我不确定 ActiveMQ.Advisory.Consumer.Queue.cases-queue 是什么。什么是队列#? 为什么 ActiveMQ.Advisory.Consumer.Queue.cases-queue 中的 Enqueue # 不断增加? 为什么 Enqueue # 在 ActiveMQ.Advisory.Connection 中不断增加? 这会导致服务器内存不足吗?

我还注意到,对于不同的队列,ActiveMQ.Advisory.Consumer.Queue.data-queue,Enqueue # 不会增加。我不确定这个队列监听器/消费者是如何实现的。

请看下图:

screenshot from jboss fuse activemq console

activemq console Topic -- Advisory

【问题讨论】:

    标签: out-of-memory activemq spring-jms enqueue


    【解决方案1】:

    这些都是您可以订阅的通知主题,以便从您的消息传递客户端观察代理上的活动。随着向这些主题发送通知,入队计数会增加,但如果您没有订阅它们的消费者,则该操作本质上是无操作的,因此这里没有什么需要过度关注的。

    documentation 有很多关于每个咨询主题在通知方面提供的内容。

    【讨论】:

    • 谢谢蒂姆。我主要关心的是,Enqueue # 的增加是否会导致代理服务器或侦听器代码所在的服务器内存不足?
    • 正如我的帖子所说,ActiveMQ.Advisory.Consumer.Queue.data-queue Enqueue # 始终为 5,我知道队列有 5 个并行消费者。这是否意味着建议以某种方式配置为显示此队列的消费者计数。或者没有通知发送到该主题。 ActiveMQ.Advisory.Consumer.Queue.cases-queue Enqueue # 显示其他内容。我不确定它是什么。你能解释一下吗?
    • (无法编辑我的评论,所以添加一个新评论)蒂姆。我主要担心的是,我们的代理服务器内存不足,这是否意味着 Enqueue # 的增加会导致代理服务器或侦听器代码所在的服务器内存不足?来自 [文档] (activemq.apache.org/advisory-message),您能否解释一下 ActiveMQ.Advisory.Consumer.Queue 消费者在队列上启动和停止消息。 ActiveMQ.Advisory.Connection 连接开始和停止消息。开始和停止消息的真正含义是什么。是否有 2 个通知,一个用于开始,一个用于停止。
    • 正如我所说,这些是主题,因此没有数据保留在主题上,排队计数随着发送的通知而增加,以显示所述通知已发送,但没有任何内容保留为...主题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    相关资源
    最近更新 更多