文档章节

EMQ 9 月 新发 | EMQ X Enterprise 3.4.0 功能概览

EMQX
 EMQX
发布于 09/05 11:25
字数 2027
阅读 23
收藏 0

9 月正式开启,EMQ 发布了 EMQ X Enterprise 3.4.0 正式版。该版本强化了管理配置和规则引擎功能,新增消息编解码、集群热配置及车联网协议支持,设计了全新的管理监控 Dashboard 页面,是目前企业应用推荐使用的稳定版本。

相关安装包已在 EMQ 官网 开放下载,同时官网提供 License 免费自助申请试用、在线购买 License 授权服务。

EMQ X Enterprise 企业级物联网 MQTT 消息平台,支持百万级物联网设备一站式接入、MQTT&CoAP 多协议处理、低时延实时消息通信。支持基于 SQL 的内置规则引擎,灵活处理/转发消息到后端服务,存储消息数据到各种数据库,或桥接 Kafka、RabbitMQ、Pulsar 等企业中间件。

EMQ X Enterprise 适用于各种物联网应用场景,助企业快速构建物联网应用,并支持公有云、私有云、物理机、容器/K8S 任意部署。

全新的 Dashboard UI

在以往版本的 EMQ X 里 EMQ 围绕 MQTT 消息接入,拓展了一系列方便快速构建物联网应用的基础功能,如认证鉴权/ACL,数据持久化和消息桥接(企业版)并集成至 Dashboard 中。

为了支撑更多新功能的引入及功能引入后系统易用性、监控管理能力的同步改进提升,EMQ 开发团队率先针对企业版设计了全新的 Dashboard UI,对界面风格、操作性、应用结构和数据展示重点进行了调整,致力于打造一个功能全面的 IoT Hub 管理平台:

  • 实现对 EMQ X 集群状态全面掌控,增加关键运行指标实时展示界面;
  • 提供运行指标汇聚统计与持久化记录并前端展示,集群历史消息、连接、主题、订阅指标一目了然;
  • 强化商业功能,展示 License 授权信息包括签发公司、授权线数、到期日期,企业运维使用更加方便快捷;
  • 实现基础的设备管理功能,简化连接信息,支持在线踢出设备、查看并管理设备订阅信息,手动添加订阅关系等;
  • 优化规则创建步骤、提供创建向导方便企业快速学习掌握,明确规则引擎应用关系;
  • 新增告警管理,全局展示当前告警条数,提供历史告警记录排查,便于发现问题、解决问题规避告警带来的风险。

Dashboard 支持热配置参数

在 3.4.0 之前所有对 EMQ X 主要配置 etc/emqx.conf 进行的修改都需要重启才能应用,比如匿名认证(allow_anonymous)、ACL 开关与策略(enable_acl)、连接统计(enable_stats)等等都存在不停机更改的需求。

EMQ 评估后列举了数十项不会影响系统稳定性但是存在热配置需求的配置项,同时在 Dashboard 与 REST API 中提供了热配置功能。

Dashboard 支持集群管理

此版本中 Dashboard 新增了针对集群的管理操作功能,可视化界面在手动集群模式下提供集群的邀请加入、踢出功能;其他自动集群的模式下下展示了集群参数,极大的方便了监控管理和新节点的参考配置工作。

强大的 Schema Registry

物联网应用中为了兼顾网络传输性能与设备处理能力,很多底层设备通信依赖的消息数据都是较为底层、精简的格式,Broker 需要处理编解码各种压缩的二进制数据格式、行业专有的数据格式甚至是私有数据格式。

以往的处理方案是将这类数据桥接到应用系统中,应用系统编解码处理后再发送回 Broker 进行处理,整个架构集成起来十分复杂,存在处理时延较高、处理逻辑不清晰的问题。

为解决这一痛点 EMQ 设计开发出一套 Broker 内置的、实时的编解码系统 Schema Registry 。Schema Registry 支持 Avro, Protocol Buffers 和第三方编解码服务报文解析。

Schema 与规则引擎结合使用示意图:

目前 EMQ X 支持三种协议解析方式:

  • Avro 是一种远程过程调用和数据序列化框架,是在 Apache 的 Hadoop 项目之内开发的。它使用 JSON 来定义数据类型和通讯协议,使用压缩二进制格式来序列化数据,EMQ X Enterprise 内置支持;
  • Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式,EMQ X Enterprise 内置支持;
  • 第三方编解码服务是通过 TCP、HTTP 通信向外置编解码服务传递原始报文数据,等待返回编解码后的数据而后进行后续逻辑,第三方服务可以是自建的编解码网关甚至可以是目前云计算中火热的 Serverless 应用。

上图所示我们新建了一个编解码服务,该服务在规则引擎中这样使用:

SELECT decode('schema:1.0', payload) as payload
FROM 
	"message.publish"
WHERE
	topic =~ 't/#'

使用 Schema Registry 结合规则引擎功能,在规则引擎中直接通过 decode、encode 函数调用创建好的编解码规则,这一过程极大的简化消息应用的集成能力。

车联网中国国标协议 JT/T808 的支持

新增车联网协议接入 JT/T808,全称 《JT/T 808 - 2013 道路运输车辆卫星定位系统 北斗兼容车载终端通讯协议技术规范》,该协议是行业性较强的通信协议。通过该协议的适配,EMQ 建立起了完整的行业/私有协议接入开发模式,为后续其他协议定制开发提供了成功的模板。

JT/T808 协议接入架构示意图:

新版本功能规划

未来版本中,Dashboard 的功能将被继续增强,计划持续进行调整优化实现以下功能改进:

  • 优化插件配置功能:出于安全性考虑目前 Dashboard 上进行的插件配置不会持久化至 Broker,稳定的配置需要调试成功后手动写入到配置文件。随着 Dashboard 及相关 API 安全性的提升,后续 EMQ 计划将界面上的插件配置进行持久化,大部分场景下无需再对配置文件进行额外操作;
  • 提供插件功能管理界面:目前 Dashboard 对插件的管理仅限于进行配置,众多插件如 emqx_auth_clientid、emqx_auth_username、emqx_configs 除了基础配置外还有相应的业务功能和使用方式,EMQ 将逐一在 Dashboard 中适配开发,提供插件的配置与使用界面;
  • 插件热安装与热升级:在 Dashboard 中上传二进制插件包,实现不停机的插件安装、升级,热安装热升级主要用于应对 EMQ X 的重要修复和小规模功能升级;
  • 自定义告警实现:后续将支持用户自定义告警规则与告警触发方式,实现告警提醒不离线。

更多信息请访问我们的官网 emqx.io,或关注我们的开源项目 github.com/emqx/emqx ,详细文档请访问 官方文档

© 著作权归作者所有

EMQX
粉丝 5
博文 55
码字总数 74079
作品 0
杭州
私信 提问
EMQ X Meetup 深圳

活动简介: Since the EMQ X open source project first launch in 2013, EMQ has rapidly became a global leader of providing messaging and streaming solutions for IoT in 5G era. Its ......

映云科技
03/26
28
0
EMQ 获得2019无锡世界物联网博览会 “新技术新产品新应用” 金奖

2019年9月7日,一年一度的世界物联网博览会在无锡顺利开幕。当晚,由物博会组委会主办的物联网之夜颁奖典礼——2019 年新技术新产品新应用成果发布会隆重举行。今年的评审专家委员会由中国工...

EMQX
09/11
22
0
EMQ 2.3-beta.1 发布, 百万级 MQTT 消息服务器

EMQ R2.3-beta.1版本发布!该版本正式支持集群节点自动发现与集群脑裂自动愈合,支持基于IP Multicast、Etcd、Kubernetes等多种策略自动构建集群。 节点发现与自动集群 EMQ R2.3 版本支持多种...

emqtt
2017/07/25
2.2K
4
Mosquitto 上建立到 EMQ X 的桥接

EMQ X 节点可以被其他类型的 MQTT 消息中间件桥接,实现跨平台的消息订阅和发送。本文我们以一个配置实例来说明如何配置 Mosquitto 到 EMQ X 的桥接。 Mosquitto 是一个小型轻量的开源 MQTT...

EMQX
08/28
55
0
EMQ 2.1.0-beta.1 发布, 百万级 MQTT 消息服务器

EMQ v2.1.0-beta.1 版本正式发布。 改进Session/Inflight窗口设计,一个定时器负责全部Inflight QoS1/2消息重传。优化MQTT连接的GC机制,降低高消息吞吐情况下的CPU/内存占用。 EMQ 2.1.0版本...

emqtt
2017/02/24
1K
4

没有更多内容

加载失败,请刷新页面

加载更多

好程序员大数据教程分享Scala系列之模式匹配和样例类

好程序员大数据教程分享Scala系列之模式匹配和样例类 1.样例类 在Scala中样例类是一中特殊的类,样例类是不可变的, 可以通过值进行比较,可用于模式匹配。 定义一个样例类: 构造器中每一个...

好程序员官网
8分钟前
3
0
让nginx上的静态网页在访问的时候没有html后缀

需求背景: 公司产品小姐姐觉得这个访问带html后缀不专业,要求访问不带html后缀 nginx 配置 #原配置 location / { index index.html index.htm index.php; try_files $...

Linux_Anna
8分钟前
2
0
beetl的内置函数

函数调用Beetl内置函数请参考附录,以下列出了常用的函数date 返回一个java.util.Date类型的变量,如 date() 返回一个当前时间(对应java的java.util.Date); ${date( "2011-1-1" , "yy...

gantaos
9分钟前
1
0
spring cloud 2.x版本 Gateway自定义过滤器教程

前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 [toc] 本文基于前两篇文章eureka-server、eureka-client、eureka-ribbon、eureka-feign和spring-gataway的实现。 参考......

毛毛向前冲V5
13分钟前
2
0
VPGAME 的 Kubernetes 迁移实践

作者 | 伍冲斌 VPGAME 运维开发工程师 导读:VPGAME 是集赛事运营、媒体资讯、大数据分析、玩家社群、游戏周边等为一体的综合电竞服务平台。总部位于中国杭州,在上海和美国西雅图分别设立了...

阿里巴巴云原生
18分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部