activemq官方文档分析
ActiveMQ實(shí)時(shí)特性:
???????????????? 多播:ActiveBlaze提供基礎(chǔ)設(shè)施的快速、可靠的點(diǎn)對(duì)點(diǎn)消息傳遞來(lái)滿足高性能和協(xié)作應(yīng)用程序的要求。使用一個(gè)通道的基本構(gòu)建塊,存在一個(gè)功能層次結(jié)構(gòu)用于不同的問(wèn)題領(lǐng)域,每一個(gè)的一個(gè)超集。BlazeChannel支持廣播主題——使用可靠多播或point-cast;?
????????? 組的成員關(guān)系 :ActiveBlaze支持組成員使用GroupChannel——這可以從GroupChannelFactory創(chuàng)建。必須顯式地說(shuō)哪一組你想加入/離開(kāi),你可以加入多個(gè)組。每個(gè)GroupChannel既有全局惟一id和一個(gè)名字。
??????? 生命周期:通道是在五個(gè)之一: 構(gòu)造-通道不是初始化或被關(guān)閉
??????? ActiveBlaze消息類型:消息和事件解析的基礎(chǔ)ActiveBlaze BlazeMessage。 BlazeMessage是一個(gè)映射的鍵值對(duì),鑰匙在哪里字符串和原始對(duì)象的值。
Broker Camel Component
嵌入Apache ActiveMQ內(nèi)駱駝代理提供了極大的靈活性,擴(kuò)展message broker駱駝的整合力量。Apache駱駝路線也受益,可以避免遠(yuǎn)程連接到ActiveMQ的序列化和網(wǎng)絡(luò)成本——如果你使用ActiveMQ組件
集群
? ? ? ? ??集群是一個(gè)很大的主題,通常對(duì)不同的人意味著不同的東西。我們將試著列出集群的各個(gè)方面以及它們與ActiveMQ
?????????? Queue consumer clusters:ActiveMQ支持可靠的高性能負(fù)載平衡在消費(fèi)者隊(duì)列上的消息。在企業(yè)集成,這種情況被稱為競(jìng)爭(zhēng)消費(fèi)者模式。下圖說(shuō)明了這個(gè)概念。
????? 這個(gè)解決方案發(fā)送接收消息的生產(chǎn)者,可以分配他們之間所有的注冊(cè)用戶。這有許多好處:
負(fù)載是分布在一個(gè)非常動(dòng)態(tài)的時(shí)尚。額外的消費(fèi)者可以供應(yīng)和連接到隊(duì)列在高負(fù)載時(shí)期,無(wú)需修改任何配置的隊(duì)列,為新的消費(fèi)者會(huì)表現(xiàn)為另一個(gè)消費(fèi)者的競(jìng)爭(zhēng)。 更好的可用性比系統(tǒng)使用一個(gè)負(fù)載均衡器。負(fù)載平衡器通常依靠monitorization系統(tǒng)找出哪些真實(shí)的服務(wù)器不可用。與競(jìng)爭(zhēng)消費(fèi)者,消費(fèi)者不會(huì)爭(zhēng)奪失敗消息,因此不會(huì)交付消息即使沒(méi)有monitorization。 可靠性高,如果消費(fèi)失敗,任何不被承認(rèn)的隊(duì)列上的消息被發(fā)送到其他消費(fèi)者。缺點(diǎn)是,這種模式可能不是理想的系統(tǒng)訂單處理是必需的。消費(fèi)者競(jìng)爭(zhēng)模式應(yīng)該與其他ActiveMQ特性一起使用獨(dú)家消費(fèi)者和消息組所ActiveMQ的FAQ,來(lái)緩解這一問(wèn)題,同時(shí)保持了好處。
????????????? Broker clusters
最常見(jiàn)的心智模型聚類在一個(gè)JMS上下文是一個(gè)集合的JMS代理和一個(gè)JMS客戶機(jī)將連接到其中一個(gè);如果JMS代理下降,它會(huì)自動(dòng)重連到另一個(gè)代理。 我們實(shí)現(xiàn)這個(gè)使用故障轉(zhuǎn)移:/ / JMS客戶機(jī)協(xié)議。有關(guān)詳細(xì)信息,請(qǐng)參閱故障轉(zhuǎn)移運(yùn)輸參考頁(yè)面如何配置故障轉(zhuǎn)移的協(xié)議。注意:可靠:/ /協(xié)議ActiveMQ 3。x已經(jīng)更改為故障轉(zhuǎn)移:/ /協(xié)議failover://如果我們只是網(wǎng)絡(luò)上運(yùn)行多個(gè)代理,告訴客戶使用發(fā)現(xiàn)靜態(tài)或動(dòng)態(tài)發(fā)現(xiàn),然后客戶可以很容易地從一個(gè)代理故障轉(zhuǎn)移到另一個(gè)。然而,獨(dú)立經(jīng)紀(jì)人不知道消費(fèi)者在其他經(jīng)紀(jì)人;如果沒(méi)有消費(fèi)者一定的代理,信息可以堆積而不被消耗。我們有一個(gè)顯著特點(diǎn)要求解決這個(gè)問(wèn)題在客戶端,但目前此問(wèn)題的解決方案是創(chuàng)建一個(gè)網(wǎng)絡(luò)經(jīng)紀(jì)人之間的存儲(chǔ)和轉(zhuǎn)發(fā)消息的經(jīng)紀(jì)人。
?????????? Discovery of brokers
我們支持自動(dòng)發(fā)現(xiàn)發(fā)現(xiàn)經(jīng)紀(jì)人使用靜態(tài)或動(dòng)態(tài)發(fā)現(xiàn),這樣客戶就可以自動(dòng)檢測(cè)并連接到代理的邏輯組的經(jīng)紀(jì)人和經(jīng)紀(jì)公司發(fā)現(xiàn)和連接到其他代理形成大型網(wǎng)絡(luò)。
?????????? Networks of brokers
如果您使用的是客戶端/服務(wù)器或中心/說(shuō)話風(fēng)格拓?fù)浜湍阌泻芏嗫蛻艉徒?jīng)紀(jì)人,有一個(gè)機(jī)會(huì),一個(gè)代理生產(chǎn)商,但沒(méi)有消費(fèi)者,這消息堆積而不被處理。為了避免這種情況,ActiveMQ支持網(wǎng)絡(luò)經(jīng)紀(jì)商提供存儲(chǔ)和轉(zhuǎn)發(fā)與消費(fèi)者與生產(chǎn)者將消息從經(jīng)紀(jì)人,經(jīng)紀(jì)人可以讓我們通過(guò)網(wǎng)絡(luò)支持分布式隊(duì)列和主題的經(jīng)紀(jì)人。這允許客戶端連接到任何代理,故障轉(zhuǎn)移到另一個(gè)代理如果有失敗——提供一個(gè)集群的經(jīng)紀(jì)人從客戶的角度來(lái)看。
的經(jīng)紀(jì)人還允許我們擴(kuò)大網(wǎng)絡(luò)網(wǎng)絡(luò)中大量的客戶我們可以運(yùn)行我們需要盡可能多的經(jīng)紀(jì)人。 你可以把這作為一個(gè)集群的客戶聯(lián)系一個(gè)集群的經(jīng)紀(jì)人auto-failover和發(fā)現(xiàn),做一個(gè)簡(jiǎn)單的和易于使用的消息結(jié)構(gòu)。??????????????? Master Slave
運(yùn)行大量的獨(dú)立經(jīng)紀(jì)人的問(wèn)題或經(jīng)紀(jì)人在一個(gè)網(wǎng)絡(luò)消息屬于單個(gè)物理代理在任何時(shí)候。如果代理下降,你必須等待它重新啟動(dòng)之前,消息可以交付。(如果您正在使用非持久性消息和經(jīng)紀(jì)人下降通常你失去你的消息)。主從的背后的想法是,消息復(fù)制到一個(gè)奴隸代理,這樣即使你有一個(gè)災(zāi)難性的碩士機(jī)器的硬件故障,文件系統(tǒng)或數(shù)據(jù)中心,得到直接的故障轉(zhuǎn)移到奴隸而不丟失任何信息。
????????? Replicated Message Stores
主從的另一種選擇是有辦法復(fù)制消息存儲(chǔ),所以在某種程度上共享的磁盤(pán)文件。例如使用SAN或共享網(wǎng)絡(luò)驅(qū)動(dòng)器可以共享文件的代理,這樣如果失敗的另一個(gè)代理可以直接接管。所以通過(guò)支持復(fù)制消息存儲(chǔ)可以減少信息損失的風(fēng)險(xiǎn)提供完整HA備份或數(shù)據(jù)中心解決方案能夠幸存博士失敗
總結(jié)
以上是生活随笔為你收集整理的activemq官方文档分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【资料合集】2018云栖大会上半年深圳、
- 下一篇: 计算机三级周跃视频笔记