欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:Rocketmq系統(tǒng)架構(gòu)

柚子快報激活碼778899分享:Rocketmq系統(tǒng)架構(gòu)

http://yzkb.51969.com/

3、系統(tǒng)架構(gòu)

RocketMQ的系統(tǒng)架構(gòu)主要有路由注冊中?(NameServer)、消息存儲服務(wù)器(Broker)、消息客戶端(Client)組成。其中Client由?產(chǎn)者(Producer)和消費者(Consumer)組成。

3.1、路由注冊中?—Nameserver

NameServer是?個簡單的 Topic 路由注冊中?,?持 Topic、Broker 的動態(tài)注冊與發(fā)現(xiàn)。

主要包括兩個功能:

Broker管理:

NameServer 接受 Broker 集群的注冊信息并且保存下來作為路由信息的基本數(shù)據(jù)。然后提供?跳檢測機制,檢查 Broker 是否還存活;

路由信息管理:

每個 NameServer 將保存關(guān)于 Broker 集群的整個路由信息和?于客戶端查詢的隊列信息。Producer 和 Consumer 通過 NameServer 就可以知道整個 Broker 集群的路由信息,從?進?消息的投遞和消費。

NameServer 通常會有多個實例部署,各實例間相互不進?信息通訊。Broker 是向每?臺 NameServer 注冊??的路由信息,所以每?個 NameServer 實例上?都保存?份完整的路由信息。當(dāng)某個 NameServer 因某種原因下線了,客戶端仍然可以向其它 NameServer 獲取路由信息

某些異常場景下,NameServer未及時收到某個Broker的?跳信息,NameServer會將該Broker剔除出可?Broker列表。NameServer服務(wù)器內(nèi)設(shè)由?個定時任務(wù),默認(rèn)每間隔10s掃描?次Broker列表,對?每個Broker當(dāng)前最新的時間戳與當(dāng)前時間是否相差?于120s,若超過則判定該Broker失效。

3.2、消息存儲服務(wù)器—Broker

消息存儲服務(wù)器Broker主要是負(fù)責(zé)客戶端管理(Client Manager)、消息存儲服務(wù)(Store Service)、?可?實現(xiàn)(HA Service)、索引功能(Index Service)等。

Client Manager主要是實現(xiàn)接收和解析Client的請求以及管理Client,例如維護Consumer的訂閱信息等。Store Service?于將消息數(shù)據(jù)持久化到物理磁盤。HA Service主要是實現(xiàn)Master Broker和Slave Broker之間數(shù)據(jù)的同步,保證Master發(fā)?異常時,消息流轉(zhuǎn)功能的?可?性。Index Service是對Broker內(nèi)的消息數(shù)據(jù)實現(xiàn)了索引功能,可以根據(jù)特定的Message Key進?快速定位查詢。

Broker的主動發(fā)送?跳機制:Broker節(jié)點默認(rèn)每間隔30s向NameServer發(fā)送?次?跳數(shù)據(jù),NameServer會更新其Broker列表中對應(yīng)的路由信息以及時間戳。

3.3、消息客戶端—Client

Client也就是消息客戶端,包括Producer(?產(chǎn)者)和Consumer(消費者)。Producer和Consumer在某?時刻下只會連接?個Nameserver節(jié)點(不?定是同?個),只有在連接出現(xiàn)異常時才會向嘗試連接另外?個。

當(dāng)Topic路由信息發(fā)?變化時,NameServer不會主動推送給Client,導(dǎo)致客戶端?法被動感知Topic信息的動態(tài)變化,因此客戶端會每30s去NameServer拉取Topic最新的路由信息。

注意:Nameserver是在內(nèi)存中存儲Topic的路由信息,持久化Topic路由信息是在Broker中完成的。

3.4 、?作流程

1)啟動NameServer集群,啟動后開始監(jiān)聽端?,等待與Broker、Producer、Consumer建??連接;

2)啟動Broker集群,每個Broker主動發(fā)起請求,與NameServer集群內(nèi)所有節(jié)點建??連接,每隔30s發(fā)送?次?跳包數(shù)據(jù);

3)Producer啟動時,先跟NameServer集群中的某?個節(jié)點建??連接,并從中獲取當(dāng)前訂閱Topic的Queue與Broker的地址(IP+Port)之間的映射關(guān)系。若建?連接失敗,則會取輪詢下?個NameServer節(jié)點,直?成功建??連接。然后與對應(yīng)的Broker建??連接,推送消息數(shù)據(jù)。

Producer獲取到相關(guān)的路由信息后,會將其緩存到本地,隨后會每隔30s從NameServer拉取并更新?次。

4)Consumer同樣會跟某?個NameServer節(jié)點建??連接,獲取到當(dāng)前訂閱Topic的Queue與Broker的地址之間的映射關(guān)系。同樣的,若建?失敗,則會輪詢下?個NameServer節(jié)點?成功。隨后從對應(yīng)的Broker中拉取消息進?處理。

Consumer獲取相關(guān)的路由信息后,同樣會緩存到本地,會每隔30s從NameServer更新?次。但不同的是,Consumer會向Broker發(fā)送?跳,確保Broker的存活狀態(tài)。

柚子快報激活碼778899分享:Rocketmq系統(tǒng)架構(gòu)

http://yzkb.51969.com/

好文鏈接

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19055324.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機訪問

文章目錄