2013-05-15 157 views
1

我知道在HornetQ中,您可以執行活動備份對類型的集羣。我還從文檔中注意到,您可以在集羣中的兩個或多個節點之間進行負載平衡。那些是唯一可能的兩種拓撲嗎?你將如何實現羣集隊列模式?HornetQ集羣拓撲結構

謝謝!

回答

3

我來回答這個使用兩個術語:一是從HornetQ的核心隊列:

當你創建一個集羣連接,您是在設置用於負載平衡HornetQ的地址和核心隊列(包括其直接翻譯地址到jms隊列和jms主題中),對於作爲羣集連接基本地址(通常地址是jms)一部分的地址

當您負載平衡核心隊列時,它將在不同節點之間進行負載平衡。那就是每個節點當時會得到一條消息。

當您在同一地址上有多個隊列時,羣集上的所有隊列都將收到消息。如果這些隊列中的一個隊列在多個節點中,則每個正在負載均衡的消息上的前一個規則也將應用。

在JMS術語:

主題訂閱將接收所有發送到主題的消息。如果主題訂閱名稱/標識存在於多個節點中(比如在不同節點上使用相同的clientID和subscriptionName),則它們將進行負載平衡。

隊列將通過所有存在的隊列進行負載平衡。

請注意,當沒有消費者時,有一個轉發設置。這意味着如果你沒有消費者,你可能得不到消息。你也可以用它來配置它。

0

您將如何實現羣集隊列模式?

提示EAP 6.1/2.3的HornetQ要實現分佈式隊列/主題:

沒有它,沒有錯誤顯示,核心橋連接 建立......但消息沒有被分發,再沒有錯誤 或警告的所有...

  • 確保安全域安全領域,用戶,密碼,角色設置正確。

例如,我與境界ID (「ApplicationRealm」)混淆了域ID(「其他」),並得到了AUTH錯誤,但錯誤是 通用的,所以我浪費時間檢查用戶,密碼,角色......直到我最終發現了 。

  • 調試通過啓用調試(logger.org.hornetq.level=DEBUG