Skip to content

EMQX Edge ​

v1.5.0 ​

发布日期:2026-06-15

新功能 ​

MQTT Stream & Parquet ​

  • 新增 MQTT Stream。该内置功能支持本地 MQTT 数据持久化和按时间范围查询,且不影响实时消息转发。
  • 新增自描述 Parquet 元数据,并通过 parquet_file_queue 支持按主题管理文件。
  • 新增 REST API,支持按主题、时间范围和分页查询 MQTT Stream 数据,并通过 /api/v4/tools_vg/aes_enc_parquet_meta 加密 Parquet 元数据。

AES-GCM 加密 ​

  • 新增动态密钥选择和加密方法配置支持,包括 CLI 加密工具,以及新的 encrypt_method 和 encrypted_key SSL 配置参数。

Topic Alias ​

  • 通过可配置的 max_topic_alias 参数,在 CONNACK 报文中新增最大 Topic Alias 协商能力,并增强校验逻辑。

REST API ​

  • 增强 client_info,支持多条件查询;重构 client_case;合并安全检查和边界校验;并新增 message_expiry_interval 支持。

Dashboard 更新到 0.0.8 ​

  • 新增 MQTT Stream:
    • 按主题、时间范围和 schema 查询消息数据,并查看 payload。
    • 管理 Flow,包括主题、Flow 类型、队列以及 Parquet/加密配置。

增强 ​

MQTT Handler ​

  • 优化 MQTT handler 解析器,并增强共享订阅保护,防止溢出崩溃。
  • 修正清理顺序,在发送 Will 消息前释放 conn_param。
  • 通过 AI fuzzing 发现的问题,对 MQTT 协议解析器和编解码器进行加固,修复内存损坏和溢出问题。

Bridge ​

  • 新增 TLS 支持,包括 SNI 和 SSL peer verification;支持 TCP 和 QUIC 客户端自动启动 dialer;并新增 no_local_v4 和 try_private 选项用于连接控制。

TLS ​

  • 新增 TLS 连接超时,避免握手挂起。

NNG ​

  • 同步最新 NNG 上游更新,包括以下修复和改进:
    • 将 QoS 消息重发从协议层重构到传输层(TCP/TLS/WebSocket),修复数据竞争并强制按序重发。
    • 提升并发安全性,包括在 timer_cb 中安全访问 p->busy、在获取 conn_param 时保护 pipe 关闭,以及更安全地重写 hash_table 和 qos_db。
    • 提升传输层安全性,包括拒绝无效报文类型,以及修复 WebSocket CONNACK 中的 conn_param 引用计数。

配置 ​

  • 更新示例配置,加入 max_topic_alias 并澄清相关选项。

修复 ​

  • 修复 decode_pub_message 和 REST API 中的 heap-buffer-overflow。
  • 修复 unsub_handler、fuzz_unsub_handler 和 sub_handler 共享订阅保护器中的崩溃问题。
  • 修复调用 quic_dialer_close 时的类型混淆问题。
  • 修复 publish、subscribe 和 unsubscribe handler 中 MQTT v5 属性在 decode error 路径下未释放的问题。
  • 修复 fuzzing 发现的属性解析崩溃。
  • 修复 exchange node 中 Parquet 配置未初始化的问题。
  • 修复 WebSocket send callback 中 QoS ack 消息泄漏。
  • 修复高并发 MQTT v5 QoS 1 负载下,由 timer callback 中不安全访问 p->busy 导致的 SIGABRT 崩溃。

v1.4.1 ​

发布日期:2026-06-10

该包版本仅包含修复。

修复 ​

  • 修复未设置 file_name_prefix 时的崩溃。
  • 修复使用 AES_GCM_CTR_V1 读取加密的新版本 Parquet 时的错误。
  • 修复 REST API 和 webhook HTTP 响应处理中的内存泄漏,以及 sub_handler 中的空指针解引用。

v1.4.0 ​

发布日期:2026-04-13

增强 ​

  • 将二进制文件名从 nanomq 重命名为 emqx-edge。
  • 新增多 Dashboard 账号支持。可在 Dashboard UI 中创建和管理额外账号。
  • HTTP server 配置中的密码现在以加密形式存储。
  • 新增 HTTP server 的 TLS/HTTPS 支持。
  • 新增 OpenSSL 和 MbedTLS TLS 层的 ALPN 设置支持。
  • 新增为每个 Bridge 主题创建按主题 LMQ 的支持。
  • 为实验性 MQTT Stream 实现新增 fuzz testing 支持。
  • 将 l8w8jwt 从 2.1.0 更新到 2.5.0。
  • 将 EMQX Edge Dashboard 更新到 0.0.7。
    • 将 superuser 配置从 Authentication 移动到 Authorization。
    • 新增多个 Dashboard 登录账号支持。
    • 新增 HTTP ACL 请求中 access 和 topic 参数支持。
    • 新增 ACL 和 superuser HTTP 请求的 ACL cache TTL 配置支持。

修复 ​

  • 修复读取配置文件路径时参数解析提前停止的问题。
  • 修复消息未投递时 retain 标志不正确的问题。
  • 修复客户端将 keepalive 设置为 0 时 keepalive 行为不正确的问题。
  • 修复 WebSocket 传输层中互斥锁保护范围不正确的问题。
  • 修复启用 no_local 时 macOS 上 POSIX send 接口兼容性问题。
  • 修复 retained message 中缺少 pipe ID 属性的问题。
  • 修复访问 HTTPS server 时的 TLS alert 和 PSA API 错误。
  • 修复配置中出现额外用户名和密码的问题。
  • 修复导致 MQTT v5 Will message 编码失败的错误。
  • 修复 Parquet search 和消息拼接/拆分中的潜在内存泄漏。
  • 修复 Webhook AIO callback 中 HTTP 响应处理的潜在内存泄漏。
  • 修复 base62 encoding 相关 CI 错误。
  • 修复若干拼写错误和 CI 问题。

v1.3.0 ​

发布日期:2025-01-29

增强 ​

  • 更新许可政策。许可过期时,EMQX Edge 将停止接受新的 MQTT 连接,而不是退出。
  • 新增 MQTT over QUIC 桥接,支持通过 QUIC 传输进行安全、低延迟桥接。
  • 新增不同 Docker 平台共享 tag 支持。
  • 优化 MQTT 桥接中的消息重发流程和检查逻辑。
  • 优化 GitHub workflow 以简化 Docker 镜像构建,减小镜像体积并缩短构建时间。
  • 将 EMQX Edge Dashboard 更新到 0.0.6。
    • 在 Dashboard 中新增 Subscription Topic Tree,用于 MQTT 订阅主题的层级可视化。
    • 增强认证和授权配置的易用性。
    • 新增 MQTT over QUIC 桥接支持。
    • 新增许可过期提醒。

修复 ​

  • 修复处理 MQTT v3.1.1 SUBSCRIBE 报文时缺少 UTF-8 字符串长度校验的问题。
  • 更新 Docker 镜像中的配置文件路径。
  • 修复 SNI 和 SQLite 相关配置错误。
  • 修复 WebSocket 层中的内存地址安全问题。
  • 修复 Rule Engine 中的内存地址安全问题。
  • 修复 QUIC 桥接指标无法正常工作的问题。
  • 修复启用 ACL 时内置 MQTT client hook trigger 持续重连的问题。
  • 修复启用 ACL cache 时 Super Request 无法工作的问题。
  • 修复 Dashboard reload 后无法获取 QUIC 桥接状态的问题。
  • 修复读取带毫秒(ms)单位的配置项时的错误。
  • 修复执行 Parquet 历史查询时的错误。
  • 修复 QUIC 桥接 reload 时关闭空 QUIC 连接的问题。
  • 当配置无效值时,将 max_ack_delay 重置为默认最大值。
  • 修复 Dashboard 无法访问 quic_handshake_timeout 的问题。
  • 修复证书设置为 null 时 QUIC 桥接行为不正确的问题。
  • 修复解析空加密密码时的错误。
  • 修复部分 QUIC 选项默认值不正确的问题。

v1.2.0 ​

发布日期:2025-11-14

增强 ​

  • EMQX Edge Docker 镜像现已可用。
  • 新增通过 HTTP API 发布 Base64 解码二进制 payload 的支持。
  • 新增通过配置文件为 TLS bridge 配置 SNI 的支持。
  • 新增在 Windows 上下载所有日志的能力。
  • 将 Dashboard 更新到 0.0.5。

修复 ​

  • 修复 Home 页面中 Windows 发布包未正确更新的问题。
  • 修复发布包名称。
  • 修复 reload bridge 时触发的 heap use-after-free 错误。
  • 修复使用 TCP bridge 时仍显示 TLS 相关日志的误导性日志输出。

注意 ​

  • 在该版本中,SQLite 功能默认启用。这可能会影响 Broker 和 Bridge 的性能。如有需要,请按照全局配置中的说明禁用。

v1.1.1 ​

发布日期:2025-10-27

增强 ​

  • 调整 heartbeat 日志打印间隔。
  • 新增 MQTT Bridge 连接中配置 Server Name Indication(SNI)的支持。
  • 新增无行号日志输出支持,便于在需要时获得更简洁的日志格式。
  • 重构 Linux CI workflow,改为基于 Dockerfile 的方式。

修复 ​

  • 修复 ee 包未正确上传到网站的问题。
  • 修复 ee release notes 未正确同步到网站的问题。

v1.1.0 ​

发布日期:2025-09-19

概览 ​

  • EMQX Edge 现在可以安装并运行在 Windows 系统上。
  • 在配置文件中引入加密密码支持,提升安全性。
  • 新增用于获取系统和应用日志的 REST API。
  • 实现新的 HTTP 框架,并集成 AES 加密模块,以提升性能和安全性。
  • 将 Dashboard 升级到 v0.0.4,提供更流畅的用户体验。
  • 修复多个问题,提升整体可靠性和性能。

增强 ​

安全 ​

  • 引入新的 AES 加密模块。
  • 通过新的 REST API 新增 AES 加密数据支持。
  • 新增配置文件中加密 bridge 密码支持。
  • 将认证中的明文密码替换为 Base64 解码后的加密密码。

REST API ​

  • 新增获取最新日志条目的 REST API。
  • 新增下载包含所有日志文件的 tarball archive 的 REST API。
  • 新增启用或禁用 ACL 规则和 bridge cache 的 REST API。
  • 增强授权 REST API,支持访问客户端 IP 地址。
  • 扩展 metrics REST API,加入更多指标。

Windows 支持 ​

  • 发布 Windows 版本 EMQX Edge 包。
  • 新增专用于 Windows 部署的配置文件。
  • 在 Windows 上启用 TLS、SQLite caching 和 JWT authentication 支持。

配置和协议 ​

  • 更新配置文件以反映新功能和选项。
  • 更新默认最大报文大小,以符合 MQTT 协议定义的限制。

性能和可观测性 ​

  • 实现新的 HTTP 请求处理框架,提供更好的性能。
  • 改进客户端事件的在线/离线通知消息。
  • 新增 heartbeat 日志消息,用于监控运行状态。

Dashboard ​

  • 将 Dashboard 升级到 0.0.4,带来 UI 和稳定性改进。

修复 ​

安装 ​

  • 修复 Windows 上的启动命令,使其与 Linux 行为一致,统一跨平台启动流程。

连接和桥接 ​

  • 修复 QUIC 层中的潜在数据竞争。
  • 修复本地 WebSocket 和 TLS 客户端无法接收订阅消息的问题。
  • 修复启用 auth.http 时内置 MQTT client 持续重连的问题。
  • 修复 hybrid bridging 模式中 resend aio 可能为 null 的问题。

可观测性 ​

  • 修复发送和接收流量字节计数不正确的问题。
  • 修复 Windows 上 CPU 和内存使用统计不准确的问题。
  • 修复 hybrid bridging 模式中 bridge cache 字节统计不正确的问题。

Dashboard ​

  • 修复 Dashboard 与可用 API endpoint 不匹配的问题。
  • 修复 Dashboard 无法在 Windows 上获取最新日志的问题。
  • 修复 Dashboard 无法在 Windows 上切换日志页面的问题。

v1.0.0 ​

发布日期:2025-08-19

增强 ​

  • 新增 Dashboard 支持,包括监控、安全设置、数据桥接设置和 MQTT 客户端工具。
  • 新增企业许可支持。
  • 新增独立的 EMQX Edge 配置文件。
  • 新增用于获取许可全部信息的 REST API。
  • 新增用于获取活跃 MQTT 连接的 REST API。
  • 默认启用 MQTT over WebSocket。
  • 新增多平台支持,包括 armhf、arm64 和 amd64(x86_64)。

修复 ​

  • 改进 Broker 启动时的日志消息。
  • 修复添加 HTTP authentication header 后 NanoMQ 无法启动的问题。
  • 修复 bridge 创建时默认 TLS 值为 false,但重启后变为 true 的问题。
  • 修复收到无效 reload request 时 NanoMQ 无响应的问题。
  • 修复通过 REST API 更新 authentication 和 authorization 的 enable 字段不生效的问题。
  • 修复配置文件中 authorization password 占位符错误的问题。
  • 修复点击 Save 按钮两次导致 bridge node 中某字段 double free 的问题。
  • 更新包名称。
  • 修复 authorization 中未设置 params 时 NanoMQ 访问空指针的问题。