2014-05-06 110 views
0

我在ActiveMQ Pub/Sub實現中遇到以下情況。如果與消息代理的連接丟失,則發佈者可以重新嘗試建立連接,因爲publish方法會引發異常。如何檢測ActiveMQ訂閱服務器中的連接丟失

但是,如果與消息代理的連接在訂戶端丟失,則訂戶不知道它。如果會話過期,這將是相同的。

建議的解決方案: 我認爲的一個解決方案是在訂戶端實施心跳以定期向單獨的主題發佈ping消息,以便訂戶可以知道連接是否被丟棄。這工作正常,但不好的一面是系統中可用訂戶生成的ping消息數量。我認爲的第二個選擇是實現心跳,嘗試在間隔內創建連接。 WDYT?

您是否看到了更好的實現方式?欣賞你的想法。

回答

1

使用ActiveMQ Failover傳輸,並且不要禁用不活動監視器,客戶端將檢查連接並根據需要自動重新連接。沒有關於你的設置的更多信息就是最好的答案。

+0

謝謝Tim!這對於發佈者和訂閱者而言通常會起作用嗎? – imesh

+0

是的,它對兩種情況都是一樣的。 –

相關問題