2.0-beta.1 版本

发布日期: 2016-08-30

版本别名: 西湖以西(West of West Lake)

EMQ 2.0-beta1预览版本(Preview Release)发布。EMQ 2.0版本改进了项目结构、发布方式、Git分支结构以及配置文件格式,以奠定EMQ消息服务器项目长期演进基础。

Tip

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 版本后 emqttd2.0-beta.1 版本 - 图1 (opens new window) 项目只包括消息服务器应用源码,分离发布(rel)为独立项目: emqttd_relx2.0-beta.1 版本 - 图2 (opens new window) ,以解决1.0版本的插件(plugins)与emqttd应用编译依赖问题。

源码编译请clone emqttd_relx2.0-beta.1 版本 - 图3 (opens new window):

  1. git clone https://github.com/emqtt/emqttd-relx.git
  2. cd emqttd-relx && make
  3. cd _rel/emqttd && ./bin/emqttd console

erlang.mk与relx

2.0 版本发布项目 emqttd_relx2.0-beta.1 版本 - 图4 (opens new window) 采用 erlang.mk2.0-beta.1 版本 - 图5 (opens new window)relx2.0-beta.1 版本 - 图6 (opens new window) 编译发布工具替换1.x版本使用的rebar。原因: https://erlang.mk/guide/why.html2.0-beta.1 版本 - 图7 (opens new window)

Git分支结构

stable1.x 稳定版本分支
master2.x 主版本分支
emq101.x 版本开发分支
emq202.x 版本开发分支
emq303.x 版本开发分支
issue#{id}Issue修复分支

etc/emqttd.conf配置文件 ————-=——————-

2.0 版本改进项目配置文件格式,采用rebar.config、relx.config类似格式,提高配置文件的可读性和可编辑性。

etc/emqttd.conf配置示例:

  1. %% Max ClientId Length Allowed.
  2. {mqtt_max_clientid_len, 512}.
  3. %% Max Packet Size Allowed, 64K by default.
  4. {mqtt_max_packet_size, 65536}.
  5. %% Client Idle Timeout.
  6. {mqtt_client_idle_timeout, 30}. % Second

MQTT-SN协议支持

2.0-beta1版本正式发布 emqttd_sn2.0-beta.1 版本 - 图8 (opens new window) 项目支持MQTT-SN协议,插件加载方式启用emqttd_sn项目,MQTT-SN默认UDP端口: 1884:

  1. ./bin/emqttd_ctl plugins load emqttd_sn

改进插件架构

2.0 版本从emqttd项目删除plugins/目录,插件作为一个普通的Erlang应用,直接依赖(deps)方式在编译到lib目录,插件配置文件统一放置在etc/plugins/目录中:

  1. emqttd-relx/
  2. etc/
  3. modules/
  4. plugins/
  5. emqtt_coap.conf
  6. emqttd.conf
  7. emqttd_auth_http.conf
  8. emqttd_auth_mongo.conf
  9. emqttd_auth_mysql.conf
  10. emqttd_auth_pgsql.conf
  11. emqttd_auth_redis.conf
  12. emqttd_coap.conf
  13. emqttd_dashboard.conf
  14. emqttd_plugin_template.conf
  15. emqttd_recon.conf
  16. emqttd_reloader.conf
  17. emqttd_sn.conf
  18. emqttd_stomp.conf

2.0 版本项目文档

2.0 版本中文文档: http://emqtt.com/docs/v2/index.html2.0-beta.1 版本 - 图9 (opens new window)http://docs.emqtt.cn/zh_CN/emq202.0-beta.1 版本 - 图10 (opens new window)

2.0 版本英文文档: https://developer.emqx.io/docs/emq/v2/en/index.html2.0-beta.1 版本 - 图11 (opens new window)http://docs.emqtt.com/2.0-beta.1 版本 - 图12 (opens new window)

发布订阅流程