大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 ActiveMQ集群的簡單介紹

ActiveMQ集群的簡單介紹

更新時間:2021-07-28 16:37:13 來源:動力節點 瀏覽1221次

1.為什么使用集群?

實現高可用,以排除單點故障引起的服務中斷。

實現負載均衡,以提升效率為更多的客戶提供服務。

2.ActiveMQ集群部署方式

ActiveMQ集群的部署方式主要有下面2種:

Broker Clusters模式:實現負載均衡,多個broker之間同步消息,已達到服務器負載的可能。

Master Slave模式:實現高可用,當主服務器宕機時,備用服務器可以立即補充,以保證服務的繼續。

失效轉移連接

該策略用于控制消費者的訪問,這是我們在編寫代碼的時候要使用的連接方式。一個消費者連接到多個broker集群的中的一個broker,當該broker出問題時,消費者自動連接到其他一個正常的broker。消費者使用failover協議來連接broker,通常叫做失效轉移(也叫故障轉移,斷線重連機制,FailOver)策略,語法如下:

failover:(uri1,uri2,...,uriN)?transportOptions
uri:消息服務器的地址 
transportOptions參數說明: 
    randomize:默認為 true ,表示在URI列表中選擇URL連接時是否采用隨機策略。 
    initialReconnectDelay:默認為10,單位為毫秒,表示一次嘗試重連之間等待的時間。 
    maxReconnectDelay:默認 30000,單位毫秒,最長重連的時間間隔。

例如:

<!-- 
    1. client使用failover協議來與有效的master交互  
    2. master地址在前,slavew 在后,randomize 為 false讓 Client優先與master通信  
    3. 如果 master 失效,failover協議將會嘗試與slave建立鏈接,并依此重試
-->
failover:(tcp://localhost:61616,tcp://localhost:61617)?randomize=false

下面考慮一下master slave + broker cluster環境下客戶端的失效轉移鏈接。

舉例,客戶端:

<property name="brokerURL" value="failover:(tcp://uri1:port,
                                      tcp://uri2:port,
                                      tcp://uri3:port,
                                      tcp://uri4:port,
                                      tcp://uri5:port,
                                      tcp://uri6:port)?startupMaxReconnectAttempts=2" />

uri1~uri3構成一個高可用集群,其中只有一個broker是master ,另外的兩個broker是slave,slave不接受客戶端的請求,只是對master的數據進行同步(個人覺得不接受客戶端的請求太過分了,最起碼可以將請求轉發給maser也行啊),客戶端若沒有采用失效轉移機制而直接去鏈接集群中的某一個broker;如下:

ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("tcp://192.168.8.201:61616");

此時很有可能你鏈接到的是slave,而不是master,而salve是完全不接受客戶端的請求,更不會好心腸的給你轉發給master,所以必然的結果就是鏈接超時。如果運氣好直接鏈接的就是master,那是沒有問題的,客戶端可以得到響應。

采用failover,會在提供的uri列表中不斷嘗試鏈接,在同一次嘗試過程中對于無效的聯機,只會訪問一次。

ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("failover:(tcp://192.168.8.201:61616,tcp://192.168.8.202:61616,tcp://192.168.8.203:61616)?startupMaxReconnectAttempts=2");

基于此,uri1~uri3構成一個高可用集群,uri4~uri6構成另外一個高可用集群,組內高可用,組件負載均衡。無論是producer還是consumer一定會在failover的指導下,鏈接到某一組的master上,若鏈接到同一組的master,消息的產生和消費就是順利成章。若producer和consumer了解到不同組的master,則consumer所鏈接的master會通過network of broker機制去producer所在集群中請求消息,然后返回給consumer。

以上就是動力節點小編介紹的"ActiveMQ集群的簡單介紹",希望對大家有幫助,想了解更多可查看ActiveMQ教程。動力節點在線學習教程,針對沒有任何Java基礎的讀者學習,讓你從入門到精通,主要介紹了一些Java基礎的核心知識,讓同學們更好更方便的學習和了解Java編程,感興趣的同學可以關注一下。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 日本精品久久久久中文字幕2 | 狼人香蕉香蕉在线视频播放 | 国内精品久久久久久西瓜色吧 | 亚洲精品乱码一区二区在线观看 | 国产成人一区二区视频在线观看 | 无码免费一区二区三区免费播放 | 日本亚洲精品久久 | 色爱区综合| 国产第一综合另类色区奇米 | 国产一级一片免费播放 | 国产一级α片 | 5g影院天天爽 | 欧美日韩综合视频 | 国产精品女在线观看 | 亚洲第一成年人网站 | 手机看片一区二区 | 久久久久国产精品免费网站 | 91精品国产亚一区二区三区 | 久热综合| 七七七久久久久人综合 | 欧美视频亚洲视频 | 老司机午夜网站 | 三级天堂 | 国产精品原创永久在线观看 | 国产日韩一区二区三区在线播放 | 全免费一级午夜毛片 | 999热这里只有精品 999人在线精品播放视频 | 99热久久国产精品这里 | 日日干夜夜骑 | 韩国办公室激情 | 久久综合狠狠综合久久综合88 | 四虎精品福利视频精品 | 97精品视频在线观看 | 国产在线不卡视频 | 欧美日韩在线视频播放 | 中文字幕精品在线视频 | 黄色网毛片 | 91国内在线国内在线播放 | 国产精品视频观看 | 夜夜欢视频 | 天天看天天射 |