EMQTT v2.0-beta.1 發布,物聯網MQTT消息服務器

jopen 8年前發布 | 12K 次閱讀 emqttd 分布式 MQTT ErLang

emqttd(Erlang MQTT Broker)是基于Erlang/OTP語言平臺開發,支持大規模連接和分布式集群, 發布訂閱模式的開源MQTT消息服務器。

emqttd完整支持MQTT V3.1/V3.1.1版本協議規范,并擴展支持WebSocket、Stomp、CoAP、MQTT-SN或私有TCP協議。emqttd消息服務器支持單節點100萬連接與多節點分布式集群:

_images/emqtt.png

emqttd項目為大規模客戶端連接(C1000K+)的移動推送、移動消息、物聯網、車聯網、智能硬件等應用,提供一個完全開放源碼、安裝部署簡便、企業級穩定可靠、容易擴展定制的MQTT消息服務器。

更新日志

EMQ 2.0-beta1預覽版本(Preview Release)發布。EMQ 2.0版本改進了項目結構、發布方式、Git分支結構以及配置文件格式,以奠定EMQ消息服務器項目長期演進基礎。

.. NOTE:: 1.x版本產品部署用戶請勿升級到該版本,2.0正式版本發布前會有API變更。

項目簡稱 - EMQ

項目簡稱變更為EMQ(Erlang/Enterprise/Elastic MQTT Broker),E含義Erlang/OTP平臺、企業(Enterprise)、彈性(Elastic)。

項目發布方式

2.0 版本后采用預覽版(Preview Release) + 候選版本(Release Candidate)版本方式迭代發布,2.0版本將陸續發布beta1, beta2, beta3, rc1, rc2等迭代,直到2.0正式版本發布。

應用與發布

2.0 版本后 emqttd_ 項目只包括消息服務器應用源碼,分離發布(rel)為獨立項目: emqttd_relx_ ,以解決1.0版本的插件(plugins)與emqttd應用編譯依賴問題。

源碼編譯請clone emqttd_relx_::

git clone https://github.com/emqtt/emqttd-relx.git

cd emqttd-relx && make

cd _rel/emqttd && ./bin/emqttd console

erlang.mk與relx

2.0 版本發布項目 emqttd_relx 采用 erlang.mkrelx_ 編譯發布工具替換1.x版本使用的rebar。原因: https://erlang.mk/guide/why.html

Git分支結構

stable 1.x 穩定版本分支
master 2.x 主版本分支
emq10 1.x 版本開發分支
emq20 2.x 版本開發分支
emq30 3.x 版本開發分支
issue#{id} Issue修復分支

etc/emqttd.conf配置文件

2.0 版本改進項目配置文件格式,采用rebar.config、relx.config類似格式,提高配置文件的可讀性和可編輯性。

etc/emqttd.conf配置示例::

%% Max ClientId Length Allowed.
{mqtt_max_clientid_len, 512}.

%% Max Packet Size Allowed, 64K by default.
{mqtt_max_packet_size, 65536}.

%% Client Idle Timeout.
{mqtt_client_idle_timeout, 30}. % Second

MQTT-SN協議支持

2.0-beta1版本正式發布 emqttd_sn_ 項目支持MQTT-SN協議,插件加載方式啟用emqttd_sn項目,MQTT-SN默認UDP端口: 1884::

./bin/emqttd_ctl plugins load emqttd_sn

改進插件架構

2.0 版本從emqttd項目刪除plugins/目錄,插件作為一個普通的Erlang應用,直接依賴(deps)方式在編譯到lib目錄,插件配置文件統一放置在etc/plugins/目錄中::

? emqttd-relx/
  ? etc/
    ? modules/
    ? plugins/
        emqtt_coap.conf
        emqttd.conf
        emqttd_auth_http.conf
        emqttd_auth_mongo.conf
        emqttd_auth_mysql.conf
        emqttd_auth_pgsql.conf
        emqttd_auth_redis.conf
        emqttd_coap.conf
        emqttd_dashboard.conf
        emqttd_plugin_template.conf
        emqttd_recon.conf
        emqttd_reloader.conf
        emqttd_sn.conf
        emqttd_stomp.conf

下載

本站原創,轉載時保留以下信息:
本文轉自:深度開源(open-open.com)
原文地址:http://www.baiduhome.net/news/view/b837372

 

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!