MQTT測(cè)試工具mosquitto軟件功能強(qiáng)大大,簡(jiǎn)單易用,能提供輕量級(jí)的支mqtt開源信息,支持可發(fā)布可訂閱讀等功能,東坡這附上MQTT測(cè)試工具電腦安裝包,歡迎免費(fèi)下載。
簡(jiǎn)單易用的MQTT測(cè)試工具
MQTT測(cè)試工具功能介紹
mosquitto是一款實(shí)現(xiàn)了消息推送協(xié)議 MQTT v3.1 的開源消息代理軟件,提供輕量級(jí)的,支持可發(fā)布/可訂閱的的消息推送模式,使設(shè)備對(duì)設(shè)備之間的短消息通信變得簡(jiǎn)單,比如現(xiàn)在應(yīng)用廣泛的低功耗傳感器,手機(jī)、嵌入式計(jì)算機(jī)、微型控制器等移動(dòng)設(shè)備。一個(gè)典型的應(yīng)用案例就是 Andy Stanford-ClarkMosquitto(MQTT協(xié)議創(chuàng)始人之一)在家中實(shí)現(xiàn)的遠(yuǎn)程監(jiān)控和自動(dòng)化。并在 OggCamp 的演講上,對(duì)MQTT協(xié)議進(jìn)行詳細(xì)闡述。
MQTT測(cè)試工具使用方法
在本例中,發(fā)布者、訂閱者和服務(wù)器均為localhost,實(shí)際情況下三者并不是一個(gè)設(shè)備
啟動(dòng)broker
windows下使用命令提示符,進(jìn)入mosquitto安裝目錄
輸入命令 mosquitto -c mosquitto.conf
無提示信息,表示mqtt的broker端已經(jīng)啟動(dòng)
保持broker啟動(dòng),打開兩個(gè)命令窗口測(cè)試發(fā)布與訂閱
啟動(dòng)Mosquitto服務(wù)很簡(jiǎn)單,直接運(yùn)行命令行“mosquitto -c /etc/mosquitto/mosquitto.conf -d”即可。另外,Mosquitto是個(gè)純異步IO框架,經(jīng)測(cè)試可以輕松處理20000個(gè)以上的客戶端連接。當(dāng)然,實(shí)際的最大承載量還和業(yè)務(wù)的復(fù)雜度有比較大的關(guān)系。測(cè)試的時(shí)候不要忘記調(diào)整系統(tǒng)的最大連接數(shù)和棧大小,比如Linux上可用ulimit -n20000 -s512命令設(shè)置你需要的系統(tǒng)參數(shù)。
相關(guān)新聞
在《物聯(lián)網(wǎng)核心協(xié)議—消息推送技術(shù)演進(jìn)》一文中已向讀者介紹了多種消息推送技術(shù)的情況,包括HTTP單向通信、Ajax輪詢、Websocket、MQTT、CoAP等,其中MQTT協(xié)議為IBM制定并力推,其具有開放、簡(jiǎn)單、輕量級(jí)以及易于實(shí)現(xiàn)的特點(diǎn)使得其即便在資源受限的環(huán)境中也能得到很好的使用,比如運(yùn)行在資源緊缺型的嵌入式系統(tǒng)中或網(wǎng)絡(luò)帶寬非常昂貴的環(huán)境中,除此之外,它也被廣泛用于遙感勘測(cè)、智能家居、能源監(jiān)測(cè)和醫(yī)療應(yīng)用程序等各個(gè)領(lǐng)域,是物聯(lián)網(wǎng)的重要組成部分,將來可能會(huì)成為物聯(lián)網(wǎng)的事實(shí)標(biāo)準(zhǔn)。
本篇文章將幫助讀者認(rèn)識(shí)MQTT協(xié)議以及在Linux環(huán)境下部署MQTT的開源實(shí)現(xiàn)Mosquitto進(jìn)行體驗(yàn)驗(yàn)證,在后續(xù)文章中將展開對(duì)其源碼框架的分析,為構(gòu)建物聯(lián)網(wǎng)平臺(tái)做好鋪墊。
一、MQTT協(xié)議分析
1.1、MQTT協(xié)議簡(jiǎn)介
MQTT(MessageQueueing Telemetry Transport Protocol)的全稱是消息隊(duì)列遙感傳輸協(xié)議的縮寫,是由IBM公司推出的一種基于輕量級(jí)代理的發(fā)布/訂閱模式的消息傳輸協(xié)議,運(yùn)行在TCP協(xié)議棧之上,為其提供有序、可靠、雙向連接的網(wǎng)絡(luò)連接保證。由于其開放、簡(jiǎn)單和易于實(shí)現(xiàn)所以能夠應(yīng)用在資源受限的環(huán)境中,對(duì)于M2M和物聯(lián)網(wǎng)應(yīng)用程序來說是一個(gè)相當(dāng)不錯(cuò)的選擇。
1.2、發(fā)布者/訂閱者
MQTT采用代理的發(fā)布/訂閱模式實(shí)現(xiàn)了發(fā)布者和訂閱者的解耦(decouple),因此,在MQTT協(xié)議中有三種角色:代理服務(wù)器、發(fā)布者客戶端以及訂閱者客戶端,其中發(fā)布者和訂閱者互不干擾,也就是說發(fā)布者和訂閱者互不知道對(duì)方的存在,它們只知道代理服務(wù)器,代理服務(wù)器負(fù)責(zé)將來自發(fā)布者的消息進(jìn)行存儲(chǔ)處理并將這些消息發(fā)送到正確的訂閱者中去。這種解耦體現(xiàn)在以下3個(gè)方面上:
·空間解耦:發(fā)布者和訂閱者不必知道對(duì)方的存在,例如對(duì)方的IP地址或者端口;
·時(shí)間解耦:發(fā)布者和訂閱者不必同時(shí)建立連接;
·同步解耦:發(fā)布者和訂閱者在發(fā)布消息或接收消息的時(shí)候不需要同步;
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版