mingdu.zhengatgmail dot com
首先,mqtt和coap沒有好不好的問題,只有適合什麼應用場景的問題。
mqtt的特點是可以保持長連線,具有一定的實時性,雲端向裝置端傳送訊息,裝置端可以在最短的時間內接收到並作出響應,所以mqtt更適合需要實時控制的場合,更適合執行器。要保持長連線,那麼就要時不時地傳送心跳包,這就不會省電了。所以低功耗的場合並不適合mqtt。mqtt的長連線需要建立在tcp的基礎上,tcp協議的複雜性決定了對裝置的要求是比較高一些的,相比udp。
coap的特點是低功耗,資料發完就可以休眠了。所以coap更適合資料採集的場合,更適合純粹的感測器裝置,特別是電池供電的感測器裝置。基於udp協議,對裝置的要求比較簡單。華為出的nb-iot晶元就只支援udp和coap,華為的決策告訴我們coap和nb-iot是一對。
協議核心特點
下層協議
應用場合
硬體要求
mqtt
長連線tcp
實時控制/執行器
較高coap
低功耗udp
資料採集/感測器
較低mqtt wiki
mqtt 3.1.1 specification
一些個人的想法
今天是2016年4月2日,星期六。目前我已經在網際網路行業裡摸爬滾打了三年有餘,加上七年的求學生涯,轉眼一看已經十年了。過去的十年是網際網路行業蓬勃發展的十年,雲計算 資料探勘以及移動網際網路的興起讓我們的生活出現了翻天覆地的變化 在這個遍地充滿機會的時代裡,出現了乙個又乙個的弄潮兒 這是乙個最好的...
對程式設計師的一些個人建議
答讀者問 以下內容摘自 冒號論壇 的乙個話題 考慮其具有一定的典型性,故轉至 冒號空間 希望能對更多的讀者有所幫助,也算是一種 重用吧。讀者jee問 之前在top language 裡的一位像我推薦您的 冒號課堂 書中 eric 向您建議開設社群,我猜測可能會有,就找到您的部落格發現此地,很幸運您是...
Golang 對閉包的一些個人理解
以下是個人理解 閉包可以理解為一種儲存函式狀態的方法,當我們呼叫乙個函式,或者執行操作,或者返回結果,總之當函式執行結束後,隨即消亡,因為函式的宣告一般是在堆上,當系統檢測到當前記憶體空間沒有被引用,那麼就會 閉包的作用就是儲存函式的執行狀態,避免記憶體被 當然會占用大量的記憶體。說明 packag...