< 返回版块

ttyy 发表于 2025-08-17 21:53

Tags:mqtt broker,iot

🚀 Changelog (0.15.0-beta.4 ~ 0.15.0-rc.5)

✨ 新特性

  • Proxy Protocol 支持

    • rmqtt-net 新增 Proxy Protocol 支持(rc.5)。
  • Session 管理

    • 新增配置项 max_session_expiry_interval,用于限制 Session 最大过期时间。
  • Listener 改进

    • 新增 ListenerId,支持基于 ID 而非端口的监听。
  • HTTP API

    • 所有路由统一加上 /api/v1 前缀。
    • 健康检查 API 与 Prometheus 指标增强。
  • 集群 gRPC

    • 支持基于 流式(streaming) 的消息转发。

    • 新增并发与超时配置:

      • worker_threads
      • node_grpc_batch_size
      • node_grpc_client_concurrency_limit
      • node_grpc_client_timeout

🛠️ 插件与存储

  • 插件系统

    • 新增 register_named(),支持显式命名插件注册。
    • 移除全局 HTTP 客户端与 once_cell,Webhook / Auth-HTTP 插件改为实例化管理。
  • Storage 模块化

    • 存储后端(ram、sled、redis)模块化,通过 feature 选择。
    • Retainer 与 Message Storage 配置更灵活,错误处理与日志增强。
  • Bridge 插件

    • 修复 bridge-egress 与 bridge-ingress 在 MQTT v4/v5 下的错误处理逻辑,移除 unreachable!(),改为显式错误返回并记录日志。

⚡ 核心框架与执行器

  • 执行器重构

    • 引入 DuplexMailbox API,统一异步消息传递接口。
    • 拆分任务执行器为 Server ExecutorClient Executor,增强隔离性。
    • 移除全局执行队列,改为实例级管理(TaskExecQueue)。
  • Session Storage

    • 后台任务化存储操作,提升并发性能。
    • 增加统计指标与超时保护。
    • 优化错误处理与日志记录。

🔗 集群与网络

  • Raft 升级

    • 升级至 raft v0.5.x:支持异步快照生成、并行优化、压缩逻辑改进。
    • 健康检查 API 改进,支持 JSON 输出,并通过 is_running 判断状态。
    • 移除全局退避策略,改为实例化 ExponentialBackoff
  • Cluster Plugins

    • cluster-broadcastcluster-raft 移除全局状态(once_cell)。
    • 优化订阅同步、错误处理与日志记录。

⚙️ 配置与运维

  • 插件初始化支持 config map
  • Dockerfile 改进:ENTRYPOINT 支持运行时传参。
  • 构建配置启用 panic=abort
  • 日志清理与优化,覆盖集群、存储、网络模块。

🛡️ 稳定性与错误处理

  • 系统范围内减少 panic!,统一改为显式错误返回。
  • handshake 模块增加超时控制。
  • 并发控制逻辑统一,线程管理更清晰。
  • cluster、executor、storage、bridge 等模块增强错误日志与重试机制。

📚 文档与可观测性

  • 文档 Rust 版本更新至 1.85.0
  • 更新 cluster-raft.md,增加 raft 配置说明。
  • README 新增 DeepWiki 支持徽章
  • 完善版本号引用与插件配置文档。

更新完整列表,请参阅 RMQTT Release Notes

Github: https://github.com/rmqtt/rmqtt


Ext Link: https://github.com/rmqtt/rmqtt

评论区

写评论

还没有评论

1 共 0 条评论, 1 页