mq 即時通訊 MQ 訊息中介軟體常用協議

2021-10-14 10:54:10 字數 1002 閱讀 1725

應用程式架構師需要使用訊息傳遞**來加速和擴充套件他們的應用程式,特別是在雲端。即使您選擇了訊息傳遞中介軟體應用程式,應用程式開發人員也需要選擇協議。今天,我們將考慮三種最常見和最流行的基於tcp / ip的訊息傳遞協議,並對amqp,mqtt和stomp各自優勢提供摘要。
amqp即advanced message queuing protocol,乙個提供統一訊息服務的應用層標準高階訊息佇列協議,是應用層協議的乙個開放標準,為面向訊息的中介軟體設計。基於此協議的客戶端與訊息中介軟體可傳遞訊息,並不受客戶端/中介軟體不同產品,不同開發語言等條件的限制。

優點:可靠、通用

mqtt(message queuing telemetry transport,訊息佇列遙測傳輸)是ibm開發的乙個即時通訊協議,有可能成為物聯網的重要組成部分。該協議支援所有平台,幾乎可以把所有聯網物品和外部連線起來,被用來當做感測器和致動器(比如通過twitter讓房屋聯網)的通訊協議。

優點: 格式簡潔、占用頻寬小、移動端通訊、push、嵌入式系統

stomp(streaming text orientated message protocol)是流文字定向訊息協議,是一種為mom(message oriented middleware,面向訊息的中介軟體)設計的簡單文字協議。stomp提供乙個可互操作的連線格式,允許客戶端與任意stomp訊息**(broker)進行互動。

優點: 命令模式(非topicqueue模式)

優點: 通用公開、相容性強、可擴充套件、安全性高,但xml編碼格式占用頻寬大

有些特殊框架(如:redis、kafka、zeromq等)根據自身需要未嚴格遵循mq規範,而是基於tcpip自行封裝了一套協議,通過網路socket介面進行傳輸,實現了mq的功能。

分析 MQ訊息佇列中介軟體 在IM即時通訊系統的用途

mq訊息佇列廣泛應用在中大型分布式系統中,主要使用的場景包括 非同步處理 應用解耦 流量削峰和即時通訊四個場景.場景介紹 典型的im即時通訊系統中,使用者註冊成功後需要傳送註冊郵件 註冊通知簡訊 傳統解決方案 引入訊息佇列 場景說明 典型的電商購物平台,使用者下單之後,訂單系統需要通知庫存系統 傳統...

訊息中介軟體 MQ

1 為什麼需要訊息佇列mq 因為在高併發環境下,由於來不及同步處理,請求往往會發生阻塞,比如 大量的insert,update語句請求同時到達mysql,直接導致無數的行鎖鎖表,甚至最後的請求會堆積過多,從而觸發too many connections錯誤。通過使用訊息佇列,可以非同步的處理請求,從...

MQ訊息中介軟體

mq是message queue,就是訊息佇列。是進行通訊的中介軟體產品,可以把訊息佇列比作是乙個存放訊息的容器,呼叫的方法就是訊息,把方法存到佇列中然後從佇列中取出方法去執行。目前使用較多的訊息佇列有activemq,rabbitmq,kafka,rocketmq。訊息佇列的作用有非同步 削峰 解...