iot: internet of things 物聯網
moiot-service-mqtt:使用mqtt協議提供物聯網服務
「一句式」理解物聯網
把所有物品通過資訊感測裝置與網際網路連線起來,進行資訊交換,即物物相息,以實現智慧型化識別和管理。
我認為mqtt協議是物聯網能實現的乙個方式。。。。
螢幕--------broker(資料中轉)--------》實現物聯網
node客戶端/ android客戶端均軍作為 mqtt客戶端,實現發布/訂閱
然而在android客戶端/node客戶端和broker建立連線時,由於broker集群,需要選擇合適的broker去連線,因此需要gate
對於不知道mqtt的肯定會問mqtt是幹什麼的.......
現在我有乙個專案需求,
看到這個專案第一想法肯定需要乙個伺服器,所有的wifi裝置和手機都去連線這個伺服器,然後伺服器進行資訊的中轉,類似於咱的qq
這個伺服器呢第一種方式是自己開發
就變成了
要是自己開發的話,其實想想就麻煩,要把誰的wifi裝置資料給誰,要事先規定好協議,如果我手機想檢視另乙個的或者好幾個的,伺服器處理的事情還真不少哦,一開始的時候還需要手機進行繫結,還需要伺服器存起來這些繫結資訊,如果再繫結了又麻煩了,,,想想都不想做了,哎有沒有人事先花了很長時間做好了什麼框架可以用呢!!!!!!!--------還真有人做了,
感覺開發mqtt的原因就是發現每次做乙個這樣的系統總是考慮的很多很多,所以呢那些喜歡偷懶的程式猿就在想,不行我要做個好點的框架出來,我要讓它自動的靈活的實現資料中轉.
mqtt呢其實就是上面的伺服器(沒有儲存哈),提供了資料中轉
比方說如果安裝了這個伺服器,可以設定這個伺服器的ip位址和埠號,然後wifi裝置(網路裝置) 和手機都去連線這個伺服器.
對於怎麼讓wifi裝置(網路裝置) 的資料發給 手機呢
人家規定了,傳送資料的時候資料頭上先加一些標識(假設是"yang"),手機那邊呢設定接收標識為"yang"的資料...額感覺就是加了協議而已,只不過,協議自己可以規定,而且可以設定接收多個標識的資料..
空說無憑,咱看一下---這是客戶端軟體(後面會給大家),然後都去連線mqtt伺服器(安裝後面會說),
可以用這個測試47.93.19.134:1883
下面這張圖只是說主題自己看著自己規定哈
其實說白了
畫了這幾張圖應該知道mqtt是幹什麼的了吧??????而且是開源的
如果專案上用mqtt,,,簡直太方便了..........我們只自己設定標識就行了......額還有一些繫結資訊,,,大大減輕了工作量
現在看mqtt的安裝---對了mqtt的伺服器軟體挺多的.....
一開始我安裝的是emq,不過沒安裝上,所以就選擇上面的apollo(mqtt伺服器)
可以看這篇文章
我呢放在了f 盤了
所以先定位到f盤
然後create mybroke 建立的名字可以隨意
就會發現
然後執行f:\mqtt\apache-apollo-1.7.1-windows-distro\apache-apollo-1.7.1\bin\mybroke\bin>apollo-broker.cmd run 開啟伺服器
後台登入介面:或
因為只是剛開始所以好多東西其實自己也沒弄好,就是簡簡單單的啟動起來
除錯助手
補充一下,終於發現連線不上的問題了...埠號寫錯了,我以為所有的mqtt都是用的1883呢....
安裝好以後就可以用除錯助手測試了---這個除錯助手不怎麼好用,有時候需要重啟這個助手才能連線上...
有的是1883,注意自己安裝的mqtt是哪一款,注意看列印的資訊
連線上是連線上了但是用這個除錯助手通訊可不咋滴.......
現在弄遠端連線
借助花生殼
可是剛才還能連線...現在不可以了..................改天換個mqtt安裝試一試
感覺還是買的雲的電腦上安裝mqtthaoy好一些,畢竟直接ip位址就是公網的ip位址
MQTT 協議理解
mqtt特點 mqtt協議是為大量計算能力有限,且工作在低頻寬 不可靠的網路的遠端感測器和控制裝置通訊而設計的協議,它具有以下主要的幾項特性 1 使用發布 訂閱訊息模式,提供一對多的訊息發布,解除應用程式耦合 2 對負載內容遮蔽的訊息傳輸 3 使用 tcp ip 提供網路連線 4 有三種訊息發布服務...
理解MQTT協議資料報結構
在本教程中,我們將更詳細地介紹mqtt協議,以及mqtt訊息或資料報的格式。我們將研究 mqtt訊息格式。mqtt訊息頭 訊息欄位和編碼 控制訊息編碼示例 mqtt是基於二進位制的協議,控制元素是二進位制位元組而不是文字字串。mqtt使用命令和命令確認格式。這意味著每個命令都有乙個對應的確認。主題名...
關於專案的管理
從上學到現在已經2個學期了。再過一學年就畢業了。準確的說是再過6個月!學了不少,專案也做了不少,我常常聽見人們說程式設計師是在專案中成長起來的。不做專案,你自認為學得再精,也是無用的,就像乙個書呆子,飽腹經綸,卻毫無用處。在學習中老師也經常提及專案的流程,技巧,但真正體會到團隊合作專案時的流程的好處...