设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 软件追踪 查看内容

EMQ 2.2-beta.1发布, 百万级MQTT消息服务器

2017-5-8 23:03| 发布者: joejoe0332| 查看: 1035| 评论: 0|原作者: oschina|来自: oschina

摘要: EMQ2.2-beta.1版本正式发布。EMQ 2.2正式支持MQTT协议多{敏感词}配置,支持HAProxy的Proxy Protocol V1/V2。新增Web Hook插件(emq-web-hook)、Lua Hook插件(emq-lua-hook)。MQTT协议{敏感词}配置一个EMQ节点可配置多个MQ ...

EMQ 2.2-beta.1版本正式发布。

EMQ 2.2正式支持MQTT协议多{敏感词}配置,支持HAProxy的Proxy Protocol V1/V2。新增Web Hook插件(emq-web-hook)、Lua Hook插件(emq-lua-hook)。

MQTT协议{敏感词}配置

一个EMQ节点可配置多个MQTT协议监听端口,例如下述配置external, internal{敏感词},分别用于设备连接与内部通信:

                         -------
-- External TCP 1883 --> |     |
                         | EMQ | -- Internal TCP 2883 --> Service
-- External SSL 8883-->  |     |
                         -------


EMQ 2.2 版本etc/emq.conf{敏感词}配置方式:

listener.tcp.${name}= 127.0.0.1:2883

listener.tcp.${name}.acceptors = 16

listener.tcp.${name}.max_clients = 102400

Proxy Protocol V1/2支持

EMQ 集群通常部署在负载均衡器(LB)后面,典型架构:

              -----
              |   |
              | L | --TCP 1883--> EMQ
--SSL 8883--> |   |                |
              | B | --TCP 1883--> EMQ
              |   |
              -----

HAProxy、NGINX等常用的负载均衡器(LB),一般通过Proxy Protocol协议传递TCP连接源地址、源端口给EMQ。

EMQ 2.2 版本的{敏感词}开启Proxy Protocol支持:

## Proxy Protocol V1/2
## listener.tcp.${name}.proxy_protocol = on
## listener.tcp.${name}.proxy_protocol_timeout = 3s

Web Hook插件

新增WebHook插件: emq-web-hook ,支持在MQTT客户端上下线、消息发布订阅时触发WebHook回调。

Lua Hook插件

新增Lua Hook插件: emq-lua-hook ,支持Lua脚本注册EMQ扩展钩子来开发插件。

改进认证链设计

EMQ 2.2 版本改进认证链设计,当前认证模块返回ignore(例如用户名不存在等情况下),认证请求将继续转发后面认证模块:

           -------------           ------------           -------------
Client --> | Redis认证 | -ignore-> | HTTP认证 | -ignore-> | MySQL认证 |
           -------------           ------------           -------------
                 |                       |                       |
                \|/                     \|/                     \|/
           allow | deny            allow | deny            allow | deny

支持bcrypt密码Hash

EMQ 2.2 版本支持bcrypt密码Hash方式,例如Redis认证插件配置:

auth.redis.password_hash = bcrypt

etc/emq.conf配置变更

'mqtt.queue.*' 配置变更为 'mqtt.mqueue.*'

emq-dashboard

WebSocket页面支持Unsubscribe


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部