簡體   English   中英

為Java客戶端實現故障轉移模式的最佳方法

[英]Best way to implement Failover Pattern for Java Clients

我們正在設計一個Java客戶端(將在Tomcat,Windows 2008 R2上部署),該客戶端需要訂閱一些Sonic MQ上的JMS主題。

客戶端希望為此Java客戶端提供冗余,並且在任何時間點,僅一個訂閱者應訂閱主題。

我們的要求與此職位相似。

是否為此目的構建了任何標准化的開源項目,還是我們不得不編寫自己的代碼來檢查服務器的運行狀況(耗時)? 實現此Java客戶端的最佳方法是什么。

我們正在探索以下用於消耗JMS消息的技術:

  • 春季整合
  • 阿帕奇駱駝

我們朝着正確的方向前進嗎? 我們應該能夠即時啟動/停止對主題的訂閱。

Apache Camel開箱即用就可以 它實現了EAI負載均衡器模式。 您可以選擇“故障轉移”策略。 似乎正在使用Exception來決定下一步要使用的處理器。

其他方法可以是在訂戶之間實施基於簡單自定義jms的聽音,以相互跟蹤運行狀況並平衡負載或故障轉移。 每個訂戶都可以跟蹤他們要處理的內容。 例如,從您提供的鏈接中,每個訂閱者都知道其正在偵聽的主題,並在心跳失敗的情況下繼續接收來自其他訂閱者的聲音,故障轉移監聽器將開始為失敗的監聽器接收消息。 我認為您可以使用JMS消息選擇器來實現過濾器。 可以從Javaworld上的這篇舊文章開始很好地參考。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM