Mosquitto搭建Android推送服務(二)Mosquitto簡介及搭建


文章鋼要:

1、了解Mosquitto服務器

2、在Liunx中搭建Mosquitto服務器

3、設置Mosquitto集群 

一、Mosquitto簡介

一款實現了消息推送協議 MQTT v3.1 的開源消息代理軟件,提供輕量級的,支持可發布/可訂閱的的消息推送模式,使設備對設備之間的短消息通信變得簡單,比如現在應用廣泛的低功耗傳感器,手機、嵌入式計算機、微型控制器等移動設備。一個典型的應用案例就是 Andy Stanford-ClarkMosquitto(MQTT協議創始人之一)在家中實現的遠程監控和自動化。並在 OggCamp 的演講上,對MQTT協議進行詳細闡述。

Mosquitto管網:http://mosquitto.org/ 

Mosquitto最新的源碼:http://mosquitto.org/files/source/ 

二、Liunx下安裝Mosquitto

在windows下安裝比較簡單,在windows環境下需要先下載安裝Cygwin,安裝成功后在管網下載Mosquitto.exe之后點擊安裝即可。圓子里有很多教程講解,就不闡述了。並且在實際開發環境中使用windows環境在少數,大部分使用Liunx,因此下面介紹下在Liunx下安裝Mosquitto。

Liunx下安裝Mosquitto方法有2中,下載安裝包到本地安裝以及yum安裝。推薦用yum安裝因為比較方便,如果安裝失敗再考慮使用壓縮包安裝。

使用yum安裝:

1、默認情況下Mosquitto的安裝需要OpenSSL的支持,所以先安裝OpenSSL

yum install gcc gcc-c++

yum install openssl-devel

yum install c-ares-devel

yum install libuuid-devel

yum install wget

yum install cmake

yum install build-essential python quilt devscripts python-setuptools python3 

yum install libssl-dev libc-ares-dev uuid-dev daemon openssl-devel

在安裝過程中如果服務器已經安裝過上述軟件程序,將不會在安裝,如果發現新版本或者未安裝會提示更新和安裝,用戶輸入‘Y’確認安裝即可。

 

2、下載並編譯安裝mosquitto

下載壓縮包(截止目前2016-11最新的壓縮包是1.4.10):

wget http://mosquitto.org/files/source/mosquitto-1.4.9.tar.gz

解壓:

tar -xzvf mosquitto-1.4.9.tar.gz

進入目錄並安裝:

cd mosquitto-1.4.9 

make 

make install
 
 
3、配置mosquitto.conf文件 

整個目錄中最重要的文件就是mosquitto.conf,將其復制到ect下面

cp mosquitto.conf /etc/mosquitto

修改mosquitto.conf文件

cd /etc/mosquitto/

使用vi命令打開mosquitto.conf文件

vi mosquitto.conf

按“↓”移動光標,找到Default Listeners下的

(可以使用“/Extra listeners”來查找文本,按“N”鍵可以繼續超找。按“I”鍵進入編輯狀態,按ESC返回。退出是鍵入“:wq”保存退出。不保存強制退出“:q!”)

服務的端口號

#port 1883 改為 port 1883 

 

最大連接數,-1表示不限制

#max_connections -1 改為 max_connections -1 

 

因為我的登錄用戶是root,所以這里使用root

#use_username_as_clientid 改為 user root 

 

4、啟動Mosquitto服務器

執行

mosquitto -c /etc/mosquitto/mosquitto.conf

在啟動的時候會出現報錯的情況,執行mosquitto客戶端程序時出現找不到動態庫:libmosquitto.so.1

錯誤信息:./mosquitto_sub: error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory

解決方案,執行命令:

sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1

和 ldconfig 即可.

如果顯示如下提示說明啟動成功,警告不用管。

5、測試服務器訂閱與發布

訂閱服務:

mosquitto_sub -t HelloWord

mosquitto_sub 訂閱命令

-t 訂閱主題

Helloworld 主題名稱,可以隨便取名

發布服務:

mosquitto_pub -t HelloWord -h localhost -m "Hello Word"

mosquitto_pub 發布命令

-t 發布主題

Helloworld 主題名稱

-h 主機地址

localhost 發布到本地,如果遠程主機直接寫ip地址(不用寫端口號)

-m 發布的信息

“Hello world” 發布的內容

如果一切順,應當如下圖所示,可以成功訂閱一條信息,並且可以成功發布信息,訂閱端可以接受到信息。

 

 下一篇將對Mosquitto集群搭建進行闡述。
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM