日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

activemq网络桥接_ActiveMQ –经纪人网络解释

發布時間:2023/12/3 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 activemq网络桥接_ActiveMQ –经纪人网络解释 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

activemq網絡橋接

目的

這個由7部分組成的博客系列將分享有關如何創建ActiveMQ代理網絡以實現高可用性和可伸縮性的信息。

為什么要建立經紀人網絡?

ActiveMQ消息代理是企業中消息傳遞基礎結構的核心組件。 它需要高度可用并且可以動態伸縮,以促進具有不同容量需求的動態異構分布式應用程序之間的通信。

如今,在商用硬件上擴展企業應用程序已成為當務之急。 ActiveMQ通過能夠創建代理網絡來分擔負載而很好地滿足了這一要求。

很多時候,跨地理分布的數據中心運行的應用程序需要協調消息。 使用代理網絡可以更好地設計跨地理區域/數據中心的運行消息生產者和消費者。

ActiveMQ使用傳輸連接器,通過它與消息生產者和使用者進行通信。 但是,為了促進代理之間的通信,ActiveMQ使用網絡連接器 。

網絡連接器是兩個代理之間的橋,允許按需轉發消息。

換句話說,如果代理B1啟動到代理B2的網絡連接器,則如果B2上至少有一個消費者使用同一通道,則B1上的通道(隊列/主題)上的消息將轉發到B2。 如果將網絡連接器配置為雙工,則消息將按需從B2轉發到B1。

這非常有趣,因為經紀人現在可以彼此動態通信。

在這個由7部分組成的博客系列中,我們將研究以下主題,以了解這一非常強大的ActiveMQ功能:

  • 網絡連接器基礎知識–第1部分
  • 雙工網絡連接器–第2部分
  • 在本地/遠程代理上對使用者進行負載平衡–第3部分
  • 平衡遠程代理上的使用者/訂戶的負載
  • 隊列:負載均衡遠程并發使用者–第4部分
  • 主題:遠程代理上的負載均衡持久訂閱–第5部分
  • 存儲/轉發消息和使用者故障轉移–第6部分
  • 如何防止郵件被卡住
  • 虛擬目的地–第7部分
  • 為了表示應有的信譽,以下URL已幫助我創建了此博客文章系列。

  • 使用ActiveMQ進行高級消息傳遞 by Dejan Bosanac [幻燈片32-36]
  • Jakub Korab的 理解ActiveMQ Broker網絡
  • 先決條件

  • ActiveMQ 5.8.0 –創建代理實例
  • Apache Ant –運行ActiveMQ樣本生產者和使用者進行演示。
  • 為了便于演示,我們將在同一臺計算機上使用多個ActiveMQ代理實例。

    網絡連接器基礎知識–第1部分

    下圖顯示了網絡連接器的功能。 它橋接兩個代理,并且如果由Broker-1建立消息,則根據需要將消息從Broker-1轉發給Broker-2。

    網絡連接器可以是雙工的,因此消息可以沿相反的方向轉發; 從Broker-2到Broker-1,一旦Broker-1上存在某個使用者,并且該使用者存在于Broker-2中。 第2部分中的更多內容

    在Broker-1和Broker-2之間設置網絡連接器

    • 創建兩個代理實例,例如broker-1和broker-2
    Ashwinis-MacBook-Pro:bin akuntamukkala$ pwd /Users/akuntamukkala/apache-activemq-5.8.0/bin Ashwinis-MacBook-Pro:bin akuntamukkala$ ./activemq-admin create ../bridge-demo/broker-1Ashwinis-MacBook-Pro:bin akuntamukkala$ ./activemq-admin create ../bridge-demo/broker-2

    由于我們將在同一臺計算機上運行兩個代理,因此我們將broker-2配置為沒有端口沖突。

    • 編輯 /Users/akuntamukkala/apache-activemq-5.8.0/bridge-demo/broker-2/conf/activemq.xml
  • 將傳輸連接器從61616更改為61626
  • 將AMQP端口從5672更改為6672(此博客不使用它)
    • 編輯 /Users/akuntamukkala/apache-activemq-5.8.0/bridge-demo/broker-2/conf/jetty.xml
  • 將Web控制臺端口從8161更改為9161
    • 配置從Broker-1到Broker-2的網絡連接器
      將以下XML代碼段添加到 /Users/akuntamukkala/apache-activemq-5.8.0/bridge-demo/broker-1/conf/activemq.xml
    networkConnectors><networkConnector name="T:broker1->broker2" uri="static:(tcp://localhost:61626)" duplex="false" decreaseNetworkConsumerPriority="true" networkTTL="2" dynamicOnly="true"><excludedDestinations><queue physicalName=">" /></excludedDestinations></networkConnector><networkConnector name="Q:broker1->broker2" uri="static:(tcp://localhost:61626)" duplex="false" decreaseNetworkConsumerPriority="true" networkTTL="2" dynamicOnly="true"><excludedDestinations><topic physicalName=">" /></excludedDestinations></networkConnector></networkConnectors>

    上面的XML代碼段配置了兩個網絡連接器“ T:broker1-> broker2”(僅隊列中的主題除外)和“ Q:broker1-> broker2”(僅隊列中的主題除外)。 這樣可以很好地分隔用于主題和隊列的網絡連接器。

    盡管我更喜歡指定[type]:-> [destination broker],但名稱可以是任意的。

    URI屬性指定如何連接到broker-2

    • 開始經紀人2
    Ashwinis-MacBook-Pro:bin akuntamukkala$ pwd /Users/akuntamukkala/apache-activemq-5.8.0/bridge-demo/broker-2/binAshwinis-MacBook-Pro:bin akuntamukkala$ ./broker-2 console
    • 開始經紀人1
    Ashwinis-MacBook-Pro:bin akuntamukkala$ pwd /Users/akuntamukkala/apache-activemq-5.8.0/bridge-demo/broker-1/binAshwinis-MacBook-Pro:bin akuntamukkala$ ./broker-1 console

    在broker-1上的日志顯示了與broker-2建立的2個網絡連接器

    INFO | Establishing network connection from vm://broker-1?async=false&network=true to tcp://localhost:61626INFO | Connector vm://broker-1 StartedINFO | Establishing network connection from vm://broker-1?async=false&network=true to tcp://localhost:61626INFO | Network connection between vm://broker-1#24 and tcp://localhost/127.0.0.1:61626@52132(broker-2) has been established.INFO | Network connection between vm://broker-1#26 and tcp://localhost/127.0.0.1:61626@52133(broker-2) has been established.

    broker-1上的Web控制臺@ http:// localhost:8161 / admin / connections.jsp顯示了已建立到broker-2的兩個網絡連接器

    broker-2上的相同內容未顯示任何網絡連接器,因為broker-2沒有啟動任何網絡連接器

    讓我們看看這個動作

    讓我們在broker-1的名為“ foo.bar”的隊列上產生100條持久消息。

    Ashwinis-MacBook-Pro:example akuntamukkala$ pwd /Users/akuntamukkala/apache-activemq-5.8.0/example Ashwinis-MacBook-Pro:example akuntamukkala$ ant producer -Durl=tcp://localhost:61616 -Dtopic=false -Ddurable=true -Dsubject=foo.bar -Dmax=100

    broker-1 Web控制臺顯示已將100條消息放入隊列“ foo.bar”

    http:// localhost:8161 / admin / queues.jsp

    讓我們在broker-2的名為“ foo.bar”的隊列上啟動一個使用者。 這里要注意的重要一點是目標名稱“ foo.bar”應該完全匹配。

    Ashwinis-MacBook-Pro:example akuntamukkala$ ant consumer -Durl=tcp://localhost:61626 -Dtopic=false -Dsubject=foo.bar

    我們發現來自broker-1的foo.bar隊列的所有100條消息都轉發到了broker-2的foo.bar隊列使用方。

    位于http:// localhost:8161 / admin / queues.jsp的broker-1管理控制臺

    broker-2管理控制臺@ http:// localhost:9161 / admin / queues.jsp顯示,我們啟動的使用者已經使用了從Broker-1按需轉發的所有100條消息

    foo.bar隊列上的broker-2消費者詳細信息

    broker-1管理控制臺顯示所有100條消息都已出隊[已通過網絡連接器轉發到broker-2]。

    “ foo.bar”隊列上的broker-1使用者詳細信息顯示該使用者是按需創建的:[連接器名稱] _ [目標代理] _inbound_

    因此,我們已經了解了ActiveMQ中網絡連接器的基礎。

    請繼續關注第2部分…

    翻譯自: https://www.javacodegeeks.com/2014/04/activemq-network-of-brokers-explained.html

    activemq網絡橋接

    總結

    以上是生活随笔為你收集整理的activemq网络桥接_ActiveMQ –经纪人网络解释的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。