簡談MQTT和CoAP對比

2021-08-19 17:31:07 字數 746 閱讀 8757

coap和mqtt的協議除了考慮裝置的tcp/udp堆疊實現能力和對裝置的壓力之外,更加注重的考慮點是:

伺服器架構和開發成本;

應用本身資料流向,流量,頻率,持久的需求;

長連線還是短連線;

資料分享api的需求;

mqtt,基於tcp的

,其實就是ibm把伺服器間非同步通訊用的訊息佇列message queue(mq)中介軟體前置到iot接入而已。天生適合

多對多非同步

,後台應用

,以及即時通訊

(多客戶端對等)場景。不過就是約定了報文頭而已,用redis pubsub/mq也可以構建。

如果不需要儲存資料,最簡單的iot架構:

如果需要資料持久儲存,iot架構可以是:

coap,基於udp介面,參考http上的rest api,適合資料採集這種

多(裝置)對一(伺服器)

場景,系統架構類似於傳統web。但是由於coap udp不是面對連線的,所以方向控制需要高層構建協議。coap支援多播,也可以實現一對多場景,但是好像和mqtt不一樣。應該是區域網內的多播?了解的兄弟請提點一下。

但總的**架構迎來類似於傳統web:

。所以,不足之處就是資料必須流經db轉給第三方。當然,如果web內部有mq,可以通過rest api暴露給第三方。變成:

mqtt是非常流行的裝置的接入協議,包括ibm、亞馬遜、微軟的iot託管服務都有支援,而coap在這方面幾乎沒有露面的機會。感覺以下幾點是mqtt優於coap的主要原因:

對MQTT和CoAP的一些個人見解

mingdu.zhengatgmail dot com 首先,mqtt和coap沒有好不好的問題,只有適合什麼應用場景的問題。mqtt的特點是可以保持長連線,具有一定的實時性,雲端向裝置端傳送訊息,裝置端可以在最短的時間內接收到並作出響應,所以mqtt更適合需要實時控制的場合,更適合執行器。要保持長...

簡談awk和sed的區別

它們之間有很多相似點,但是同樣也各有各的特色,相似的地方是它們都可以匹配文字,其中sed和awk還可以用於文字編輯,而grep則不具備這個功用 使用awk,我們可以做以下事情 1,將文字檔案視為由字段和記錄組成的文字資料庫 2,在操作文字資料庫的過程中能夠使用變數 3,能夠使用數 算和字串操作 4,...

簡談Python中的 new 和 init

今天想跟大家談談有關python中的 new 和 init 的問題,其實這個問題對於我來說還是比較難的,想要徹底弄明白這兩個的區別的確不是一件容易的事情。下面就是我自己的一些簡單的看法。首先我們要明白一點的是,只有繼承於object的類,或者更準確的說,祖先類是object類才有 new 方法,其他...