【问题标题】:ActiveMQ monitorActiveMQ 监视器
【发布时间】:2012-10-13 00:14:17
【问题描述】:

在使用ActiveMQ时,有些问题困扰着我:

1. 当broker crash或stop时,sender的消息会丢失(我设置了timeout,因为sender有其他事情要做)。
2. 消费者从代理收到所有消息,但我怎么知道消费者收到了所有消息(零丢失)。
3. 如果消息丢失,我想立即知道。

在生产中,我想监控activemq,知道哪条消息丢失了。 谁能帮我一个忙?

【问题讨论】:

    标签: activemq monitor


    【解决方案1】:

    您可以实现一个侦听器,一旦您的生产者/消费者与代理失去联系,该侦听器就会被调用。

    http://activemq.apache.org/maven/5.5.0/activemq-core/apidocs/org/apache/activemq/transport/TransportListener.html

    如果消费者崩溃 使用显式确认:activemq.apache.org/should-i-use-transactions.html

    您可以使用持久消息来避免在代理崩溃时丢失消息: activemq.apache.org/what-is-the-difference-between-persistent-and-non-persistent-delivery.html

    【讨论】:

    • 谢谢。您如何处理生产中的监视器?
    • 假设我正在使用持久消息,消息应该存储在代理持久适配器中,直到消费者接收并确认消息。但是我使用了'useAsyncSend'和'soTimeout',在这种情况下,丢失消息的发生非常频繁。
    猜你喜欢
    • 2012-07-23
    • 2012-09-27
    • 1970-01-01
    • 2014-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    相关资源
    最近更新 更多