RabbitMQ:4、跨越集羣

跨越集羣主要兩種插件:Federation和Shovel。

原來的rabbitmq集羣將多個broker將多個節點鏈接起來組成邏輯上獨立的單個broker,可是集羣也有其侷限性:集羣內部藉助 Erlang 進行消息傳輸,因此
集羣中的每一個節點的 Erlang cookie 務必要保持一致。同時,集羣內部的網絡必須是可靠的,RabbitMQ Erlang 的版本也必須一致。cookie

Federation

Federation 能夠經過 AMQP 協議(可配置 SSL)讓本來發送到某個 Broker(或集羣)中的交換器(或隊列)上的消息可以轉發到另外一個 Broker(或集羣)中的交換器(或隊列)上,
兩方的交換器(或隊列)看起來是以一種"聯邦"的形式在運固然必需要確保這些"聯邦"的交換器或者隊列都具有合適的用戶和權限。
聯邦交換器 (federated exchange) 經過單向點對點的鏈接 CFederation link) 形式進行通訊,默認狀況下,消息只會由 Federation 鏈接轉發一次,能夠容許有複雜的路由拓撲來提升轉發次數。
具體操做是從upstream(上游交換器或者隊列)到exchange創建fed-link連接。網絡

Shovel

shovel模式,從源」挖「消息到目的地。
做用:鬆耦合、支持廣域網、高度制定。通常配隊列爲源(用交換器爲源會默認建隊列),交換器爲目的地(用隊列爲目的地也是走的默認交換器)。插件

相關文章
相關標籤/搜索