ActiveMQ是一個非常流行的消息隊列服務(wù)中間件,基于JMS(Java Message Service)規(guī)范,并且它是一個純Java程序,運行環(huán)境只需要Java虛擬機(jī)。

JMS規(guī)范定義了2類消息發(fā)送接收模型:點對點queue,發(fā)布訂閱topic,區(qū)別是能夠重復(fù)消費和是否保存。
1,點對點queue:不可重復(fù)消費,消息被消費前一直保存。
生產(chǎn)者發(fā)送消息到queue,一個消費者取出并消費消息。
消息被消費后,queue中不再保存,所有只有一個消費者能夠取到消息。
queue支持多個消費者存在,但是一個消息只有一個消費者可以消費。
當(dāng)前沒有消費者時,消息一直保存,直到被消費者消費。

2,發(fā)布訂閱topic:可重復(fù)消費,發(fā)布給所有訂閱者。
生產(chǎn)者發(fā)布消息到topic中,多個訂閱者收到并消費消息。
和queue不同,發(fā)布到topic中的消息會被所有訂閱者消費。
當(dāng)生產(chǎn)者發(fā)布消息時,不管是否有訂閱者,都不保存消息。

JMS規(guī)范定義的2類消息傳輸模型queue和topic比較:
Queue | Topic | |
模型 | 點對點Point-to-Point | 發(fā)布訂閱publish/subscribe |
有無狀態(tài) | queue消息在消費前被一直保存在mq服務(wù)器上的文件或者配置DB | topic數(shù)據(jù)默認(rèn)不保存,是無狀態(tài)的。 |
完整性保障 | queue保證每條消息都被消費者接收到 | topic不保證生產(chǎn)者發(fā)布的每條消息都被訂閱者接收到 |
消息是否會丟失 | 生產(chǎn)者發(fā)送消息到queue,消費者接收到消息。如果沒有消費者,將一直保存,不會丟失。 | 生產(chǎn)者發(fā)布消息到topic時,當(dāng)前的訂閱者都能夠接收到消息。如果當(dāng)前沒有訂閱者,該消息就丟失。 |
消息發(fā)布接收策略 | 一對一的消息發(fā)布接收策略,一個生產(chǎn)者發(fā)送的消息只被一個消費者接收。mq服務(wù)器收到回復(fù)后,將這個消息刪除。 | 一對多的消息發(fā)布接收策略,同一個topic的多個訂閱者都能收到生產(chǎn)者發(fā)布的消息。 |
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
名稱欄目:queue和topic消息發(fā)送接收模型是什么-創(chuàng)新互聯(lián)
分享URL:http://www.chinadenli.net/article8/diooop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、小程序開發(fā)、網(wǎng)站收錄、網(wǎng)站導(dǎo)航、云服務(wù)器、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容