emqttd是採用Erlang語言開發,全面支持MQTT V3.1.1協議,支持集羣和大規模鏈接的開源MQTT消息服務器。git
emqttd致力於發佈一個基於Erlang/OTP語言平臺,企業級穩定可靠,徹底開源免費,可集羣支持大規模物聯網(IoT/M2M)、移動互聯網鏈接的MQTT消息服務器。github
Erlang MQTT是在2012年一個客戶項目結束後,把簡單的MQTT協議服務器部分開源在GitHub。項目在沒任何推廣狀況下得到了100+ Stars,從2014年開始做爲正式開源項目來專職維護,歡迎你們試用和參與開發。ubuntu
emqttd可跨平臺運行在Linux、FreeBSD、Windows與 Mac OS X。
http://emqtt.io/downloads頁面下載程序安裝包。服務器
解壓tgz格式程序包,到安裝目錄啓動。例如:架構
shtar xvf emqttd-ubuntu64-0.8.1-alpha-20150525.tgz && cd emqttd # 控制檯模式啓動,用於調試。控制檯能夠打印全部收發的MQTT報文 ./bin/emqttd console # 守護進程模式啓動,默認佔用1883端口用於MQTT鏈接,8083端口用於HTTP接口 ./bin/emqttd start # 查看運行狀態 ./bin/emqttd_ctl status # 中止 ./bin/emqttd stop
下載源碼編譯:curl
git clone https://github.com/emqtt/emqttd.git cd emqttd && make && make dist
emqttd支持經過HTTP接口從應用程序向MQTT客戶端發佈消息。測試
例子:url
curl -v --basic -u user:passwd -d "qos=1&retain=0&topic=/a/b/c&message=hello" -k http://localhost:8083/mqtt/publish
URL:spa
HTTP POST http://host:8083/mqtt/publish插件
參數: