Erlang集群MQTT消息服务器,emqttd 0.10.0 发布

wb26 9年前

emqttd 是采用Erlang语言开发,全面支持MQTT V3.1.1协议,支持集群和大规模连接的开源MQTT消息服务器。 [emqttd]致力于发布一个基于Erlang/OTP语言平台,企业级稳定可靠,完全开源免费,可集群支持大规模物联网、移动互联网连接的MQTT消 息服务器。

Erlang集群MQTT消息服务器,emqttd 0.10.0 发布

emqttd 0.10.0-beta版本正式发布,支持Web管理控制台、MySQL/PostgreSQL认证鉴权。

Erlang集群MQTT消息服务器,emqttd 0.10.0 发布

Web管理控制台(Web Dashboard)

1. Erlang虚拟机的CPU、内存、进程数量、文件句柄监控

2. 消息服务器节点名称、版本、启动时间、服务器时间

3. 消息服务器连接客户端(Clients)、会话(Sessions)、Topics、订阅(Subscribers)查询

4. 消息服务器性能指标数据,包括流量、收发报文数量、收发消息数量统计

5. 查看所有连接到消息服务器的客户端

6. 查看消息服务器所有会话的详细信息,包括inflight队列、消息队列、等待回执等

7. 查看消息服务器创建和订阅的所有Topics

8. MQTT over WebSocket测试客户端

9. JSON/HTTP查询接口,第三方应用可以查询消息服务器的统计数据、在线客户端、会话列表和Topics数据


改进插件架构(New Plugin Design)

0.10.0版本重新设计了插件架构,支持用户方便的开发插件,扩展消息服务器认证和定制功能。

插件设计:https://github.com/emqtt/emqttd/wiki/Plugin%20Design

插件模版:https://github.com/emqtt/emqttd_plugin_template

MySQL/PostreSQL MQTT认证鉴权插件

MySQL认证插件: https://github.com/emqtt/emqttd_plugin_mysql

PostgreSQL认证插件: https://github.com/emqtt/emqttd_plugin_pgsql

1. 支持基于任意用户表进行认证

2. 支持md5, sha, sha256密码Hash算法

3. 支持附带Salt的密码Hash

4. 提供了一个灵活的ACL数据库表,用于配置客户端发布、订阅权限

基于浏览器Cookie的认证

MQTT Over WebSocket连接支持基于浏览器Cookie的认证(#231)

会话详细统计(Session statistics)

统计会话的Inflight队列长度、消息队列长度、等待发布(QoS2)、等待回执(QoS1)消息数量

'./bin/emqttd_ctl'命令行增加会话管理命令,可查询全部或单个会话详细信息

连接客户端管理

可以通过Dashboard、HTTP API或者命令行查询所有连接客户端(#228, #230, #148, #129)

'./bin/emqttd_ctl'命令行支持查询连接客户端,支持踢出某个客户端(#233)

安装包下载

http://emqtt.io/downloads