電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子論文>網(wǎng)絡(luò)協(xié)議論文>詳細(xì)解析RabbitMQ與AMQP協(xié)議

詳細(xì)解析RabbitMQ與AMQP協(xié)議

2017-10-12 | rar | 0.4 MB | 次下載 | 1積分

資料介紹

1. 消息隊(duì)列的歷史
  了解一件事情的來龍去脈,將不會(huì)對(duì)它感到神秘。讓我們來看看消息隊(duì)列(Message Queue)這項(xiàng)技術(shù)的發(fā)展歷史。
  Message Queue的需求由來已久,80年代最早在金融交易中,高盛等公司采用Teknekron公司的產(chǎn)品,當(dāng)時(shí)的Message queuing軟件叫做:the information bus(TIB)。 TIB被電信和通訊公司采用,路透社收購了Teknekron公司。之后,IBM開發(fā)了MQSeries,微軟開發(fā)了Microsoft Message Queue(MSMQ)。這些商業(yè)MQ供應(yīng)商的問題是廠商鎖定,價(jià)格高昂。2001年,Java Message queuing試圖解決鎖定和交互性的問題,但對(duì)應(yīng)用來說反而更加麻煩了。
  于是2004年,摩根大通和iMatrix開始著手Advanced Message Queuing Protocol (AMQP)開放標(biāo)準(zhǔn)的開發(fā)。2006年,AMQP規(guī)范發(fā)布。2007年,Rabbit技術(shù)公司基于AMQP標(biāo)準(zhǔn)開發(fā)的RabbitMQ 1.0 發(fā)布。
  目前RabbitMQ的最新版本為3.5.7,基于AMQP 0-9-1。
  詳細(xì)解析RabbitMQ與AMQP協(xié)議
  RabbitMQ采用Erlang語言開發(fā)。Erlang語言由Ericson設(shè)計(jì),專門為開發(fā)concurrent和distribution系統(tǒng)的一種語言,在電信領(lǐng)域使用廣泛。OTP(Open Telecom Platform)作為Erlang語言的一部分,包含了很多基于Erlang開發(fā)的中間件/庫/工具,如mnesia/SASL,極大方便了Erlang應(yīng)用的開發(fā)。OTP就類似于Python語言中眾多的module,用戶借助這些module可以很方便的開發(fā)應(yīng)用。
  2. AMQP messaging 中的基本概念
  詳細(xì)解析RabbitMQ與AMQP協(xié)議
  Broker: 接收和分發(fā)消息的應(yīng)用,RabbitMQ Server就是Message Broker。
  Virtual host: 出于多租戶和安全因素設(shè)計(jì)的,把AMQP的基本組件劃分到一個(gè)虛擬的分組中,類似于網(wǎng)絡(luò)中的namespace概念。當(dāng)多個(gè)不同的用戶使用同一個(gè)RabbitMQ server提供的服務(wù)時(shí),可以劃分出多個(gè)vhost,每個(gè)用戶在自己的vhost創(chuàng)建exchange/queue等。
  Connection: publisher/consumer和broker之間的TCP連接。斷開連接的操作只會(huì)在client端進(jìn)行,Broker不會(huì)斷開連接,除非出現(xiàn)網(wǎng)絡(luò)故障或broker服務(wù)出現(xiàn)問題。
  Channel: 如果每一次訪問RabbitMQ都建立一個(gè)Connection,在消息量大的時(shí)候建立TCP Connection的開銷將是巨大的,效率也較低。Channel是在connection內(nèi)部建立的邏輯連接,如果應(yīng)用程序支持多線程,通常每個(gè)thread創(chuàng)建單獨(dú)的channel進(jìn)行通訊,AMQP method包含了channel id幫助客戶端和message broker識(shí)別channel,所以channel之間是完全隔離的。Channel作為輕量級(jí)的Connection極大減少了操作系統(tǒng)建立TCP connection的開銷。
  Exchange: message到達(dá)broker的第一站,根據(jù)分發(fā)規(guī)則,匹配查詢表中的routing key,分發(fā)消息到queue中去。常用的類型有:direct (point-to-point), topic (publish-subscribe) and fanout (multicast)。
  Queue: 消息最終被送到這里等待consumer取走。一個(gè)message可以被同時(shí)拷貝到多個(gè)queue中。
  Binding: exchange和queue之間的虛擬連接,binding中可以包含routing key。Binding信息被保存到exchange中的查詢表中,用于message的分發(fā)依據(jù)。
  3. 典型的“生產(chǎn)/消費(fèi)”消息模型
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費(fèi)下載
  2. 0.00 MB  |  1490次下載  |  免費(fèi)
  3. 2單片機(jī)典型實(shí)例介紹
  4. 18.19 MB  |  93次下載  |  1 積分
  5. 3S7-200PLC編程實(shí)例詳細(xì)資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識(shí)別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費(fèi)
  11. 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
  12. 0.11 MB  |  4次下載  |  免費(fèi)
  13. 7基于單片機(jī)和 SG3525的程控開關(guān)電源設(shè)計(jì)
  14. 0.23 MB  |  3次下載  |  免費(fèi)
  15. 8基于單片機(jī)的紅外風(fēng)扇遙控
  16. 0.23 MB  |  3次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費(fèi)
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費(fèi)
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費(fèi)
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費(fèi)
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費(fèi)
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費(fèi)
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費(fèi)
  15. 8開關(guān)電源設(shè)計(jì)實(shí)例指南
  16. 未知  |  21539次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191183次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138039次下載  |  免費(fèi)