2014-05-06 70 views
0

我在ActiveMQ Pub/Sub实现中遇到以下情况。如果与消息代理的连接丢失,则发布者可以重新尝试建立连接,因为publish方法会引发异常。如何检测ActiveMQ订阅服务器中的连接丢失

但是,如果与消息代理的连接在订户端丢失,则订户不知道它。如果会话过期,这将是相同的。

建议的解决方案: 我认为的一个解决方案是在订户端实施心跳以定期向单独的主题发布ping消息,以便订户可以知道连接是否被丢弃。这工作正常,但不好的一面是系统中可用订户生成的ping消息数量。我认为的第二个选择是实现心跳,尝试在间隔内创建连接。 WDYT?

您是否看到了更好的实现方式?欣赏你的想法。

回答

1

使用ActiveMQ Failover传输,并且不要禁用不活动监视器,客户端将检查连接并根据需要自动重新连接。没有关于你的设置的更多信息就是最好的答案。

+0

谢谢Tim!这对于发布者和订阅者而言通常会起作用吗? – imesh

+0

是的,它对两种情况都是一样的。 –

相关问题