消息中間件概述

一.JMS

  • JMS規(guī)范,Java api,不跨語言
  • 提供兩種消息模型:p2p,pub/sub
  • 消息類型:
    TextMessage,MapMessage,BytesMessage,StreamMessage,ObjectMessage,Message
  • Java消息服務(wù)(Java Message Service)即JMS,是一個(gè)java平臺(tái)中關(guān)于面向消息中間件的API,用于在兩個(gè)應(yīng)用程序之間,或分布式系統(tǒng)中發(fā)送消息,進(jìn)行異步通信.
  • JMS定義了JAVAAPI層面標(biāo)準(zhǔn);在java體系中,多個(gè)client均可以通過JMS進(jìn)行交互,不需要應(yīng)用修改代碼,但是其對(duì)跨平臺(tái)支持較差.

二.AMQP

  • AMQP協(xié)議,Wire-protocol,跨語言
  • 提供了五種消息模型:direct,fanout,topic,headers,system
  • 消息類型:byte[]
  • AMQP(advanced message queuing protocol)是一個(gè)提供統(tǒng)一消息服務(wù)的應(yīng)用層標(biāo)準(zhǔn)協(xié)議,基于此協(xié)議的客戶端與消息中間件可傳遞消息,并不受客戶端/中間件不同產(chǎn)品,不同開發(fā)語言等條件的限制.
  • AMQP的主要特征是面向消息,隊(duì)列,路由(包括點(diǎn)對(duì)點(diǎn)和發(fā)布/訂閱),可靠性,安全.

三.常見消息中間件對(duì)比

    1. ActiveMQ

ActiveMQ是Apache出品,最流行的,能力強(qiáng)勁的開源消息總線.ActiveMQ是一個(gè)> 完全支持JMS1.1和J2EE1.4規(guī)范的JMS Provider實(shí)現(xiàn),盡管JMS規(guī)范出臺(tái)已經(jīng)>
是很久的事情了,但是JMS在當(dāng)今的J2EE應(yīng)用中間仍然扮演著特殊的地位.

  • 多種語言和協(xié)議編寫客戶端.語言:
    Java,C,C++,C#,Ruby,Perl,Python,PHP.應(yīng)用協(xié)議:OpenWire,Stomp REST,WS Notification,XMPP,AMQP
  • 完全支持JMS1.1和J2EE 1.4規(guī)范(持久化,XA消息,事務(wù))
  • 虛擬主題,組合目的,鏡像隊(duì)列
  • 支持持久化
  • 2.RabbitMQ

RabbitMQ是一個(gè)開源的AMQP實(shí)現(xiàn),服務(wù)器端用Erlang語言編寫.用于在分布式
系統(tǒng)中存儲(chǔ)轉(zhuǎn)發(fā)消息,在易用性,拓展性,高可用性等方面表現(xiàn)不俗.

  • 特性:支持多種客戶端,如:Python,Ruby,.NET,Java,JMS,C,PHP,ActionScript等
  • AMQP的完整實(shí)現(xiàn)(vhst,Exchange,Binding,Routing Key等)
  • 事務(wù)支持/發(fā)布確認(rèn)
  • 消息持久化
  • Kafka

Kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),是一個(gè)分布式的,分區(qū)的,可靠>的分布式日志存儲(chǔ)服務(wù).它通過一種獨(dú)一無二的設(shè)計(jì)提供了一個(gè)消息系統(tǒng)的功能.

  • 通過O(1)的磁盤數(shù)據(jù)結(jié)構(gòu)提供消息持久化,這種結(jié)構(gòu)對(duì)于即使數(shù)以TB的消息存儲(chǔ)也能夠保持長時(shí)間的穩(wěn)定性能
  • 高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒數(shù)百萬的消息.
  • Partition,Consumer Group
  • 以Java平臺(tái)為主
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末归斤,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌型酥,老刑警劉巖怀各,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件壳影,死亡現(xiàn)場(chǎng)離奇詭異虑润,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)骇两,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門速种,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人低千,你說我怎么就攤上這事配阵。” “怎么了示血?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵棋傍,是天一觀的道長。 經(jīng)常有香客問我难审,道長瘫拣,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任告喊,我火速辦了婚禮麸拄,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘黔姜。我一直安慰自己拢切,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布秆吵。 她就那樣靜靜地躺著淮椰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪纳寂。 梳的紋絲不亂的頭發(fā)上主穗,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音毙芜,去河邊找鬼忽媒。 笑死,一個(gè)胖子當(dāng)著我的面吹牛爷肝,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播陆错,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼灯抛,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了音瓷?” 一聲冷哼從身側(cè)響起对嚼,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎绳慎,沒想到半個(gè)月后纵竖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體漠烧,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年靡砌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了已脓。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡通殃,死狀恐怖度液,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情画舌,我是刑警寧澤堕担,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站曲聂,受9級(jí)特大地震影響霹购,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜朋腋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一齐疙、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧乍丈,春花似錦剂碴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至请垛,卻和暖如春催训,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背宗收。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來泰國打工漫拭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人混稽。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓采驻,卻偏偏與公主長得像,于是被迫代替她去往敵國和親匈勋。 傳聞我的和親對(duì)象是個(gè)殘疾皇子礼旅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)洽洁,斷路器痘系,智...
    卡卡羅2017閱讀 134,599評(píng)論 18 139
  • 一、 消息隊(duì)列概述 消息隊(duì)列中間件是分布式系統(tǒng)中重要的組件饿自,主要解決應(yīng)用耦合汰翠、異步消息龄坪、流量削鋒等問題。實(shí)現(xiàn)高性能...
    步積閱讀 56,857評(píng)論 10 138
  • kafka的定義:是一個(gè)分布式消息系統(tǒng)复唤,由LinkedIn使用Scala編寫健田,用作LinkedIn的活動(dòng)流(Act...
    時(shí)待吾閱讀 5,302評(píng)論 1 15
  • 1 消息隊(duì)列概述 消息隊(duì)列中間件是分布式系統(tǒng)中重要的組件,主要解決應(yīng)用耦合苟穆,異步消息抄课,流量削鋒等問題。實(shí)現(xiàn)高性能雳旅,...
    Bobby0322閱讀 10,847評(píng)論 0 24
  • 對(duì)蘇州產(chǎn)生初印象就是源于“上有天堂跟磨,下有蘇杭”這句話,但是從來沒有產(chǎn)生過要去蘇州的念頭攒盈,理由很簡(jiǎn)單抵拘,我是老海,老海...
    海貍先生Helen閱讀 206評(píng)論 0 0