溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mqtt mosquitto怎么安裝

發(fā)布時(shí)間:2021-12-07 09:44:53 來源:億速云 閱讀:228 作者:iii 欄目:互聯(lián)網(wǎng)科技

這篇文章主要介紹“mqtt mosquitto怎么安裝”,在日常操作中,相信很多人在mqtt mosquitto怎么安裝問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”mqtt mosquitto怎么安裝”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

mosquitto 安裝

make & make install

  • 問題 編譯過程找不到ares.h 打開config.mk文件,把WITH_SRV:=yes 改成WITH_SRV:=no 就可以編譯了

  • 問題 Invalid user 'mosquitto'
    adduser mosquitto

  • 問題 libmosquitto.so.1: cannot open shared object file
    ldconfig

  • 問題 uuid/uuid.h
    yum install libuuid-devel

mosquitto -c /etc/mosquitto/test.conf -d
mosquitto_passwd -b /etc/mosquitto/test.pwfile dev1 123
mosquitto_passwd -b /etc/mosquitto/test.pwfile admin 123
mosquitto_passwd -b /etc/mosquitto/test.pwfile mqtt_server 123
mosquitto_sub -u admin -P 123 -d -t 'device/#'
mosquitto_pub -u dev1 -P 123 -d -t 'device/dev1/report_info' -m 'xxx'
-r 保留retained

mosquitto

  • retained保留消息
    broker保存最后一次topic的保留消息,每當(dāng)有客戶端訂閱這個(gè)topic,都會(huì)收到保留消息
    刪除保留消息:
    方式1:發(fā)送空消息體的保留消息;
    方式2:發(fā)送最新的保留消息覆蓋之前的(推薦);

  • 增加用戶 mosquitto_passwd -b /etc/mosquitto/test.pwfile 11010611100000000008 ryrnog

  • 刪除用戶 mosquitto_passwd -D /etc/mosquitto/test.pwfile 11010611100000000008

  • 重新load
    kill -1 $pid 發(fā)送SIGHUP信號(hào),讓mosquitto重新load conf

  • mosquittoconf
    log_dest file /var/log/mosquitto/mosquitto.log
    出現(xiàn)Unable to open log file /var/log/mosquitto/mosquitto.log for writing問題
    chmod 777 /var/log/mosquitto/

MQTT Control Packet

  1. Fixed header 固定頭 MQTT Control Packet type 控制類型,包括CONNECT,CONNACK,PUBLISH,SUBSCRIBE等等

  2. Variable header 變量頭

  3. Payload

QOS

  • 最多一次(0) 客戶端發(fā)送一次就不再發(fā)了

  • 最少一次(1) 客戶端會(huì)一直重復(fù)發(fā)送,知道收到服務(wù)端的PUBACK

  • 只一次(2) 確保消息服務(wù)端只會(huì)收到一次

php mqtt-client

  • 安裝

pecl install Mosquitto-alpha
/usr/local/php/etc/php.ini
extension=mosquitto.so
  • loopForever($timeout=1000)
    在回調(diào)里調(diào)用disconnect就會(huì)退出
    或者exitLoop退出
    exitLoop 表示不斷開連接退出loopForever
    $timeout 表示等待網(wǎng)絡(luò),并不是說loop長時(shí)間

到此,關(guān)于“mqtt mosquitto怎么安裝”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI