Releases: dromara/mica-mqtt
Releases · dromara/mica-mqtt
mica-mqtt 1.1.3 重构认证、订阅校验、客户端状态接口
- ✨ 状态事件接口
IMqttConnectStatusListener
添加 ChannelContext 参数。 - ✨ 从认证中拆分
IMqttServerSubscribeValidator
订阅校验接口,添加 ChannelContext、clientId 参数。 - ✨ 认证
IMqttServerAuthHandler
调整包、添加 ChannelContext 参数。 - ✨ 完善文档和示例,添加默认端口号说明。
- ⬆️ 依赖升级
mica-mqtt 1.1.2 添加 broker 模块,基于 redis pub/sub 实现集群
- ✨ 添加 mica-mqtt-broker 模块,基于 redis pub/sub 实现 mqtt 集群。
- ✨ mica-mqtt-broker 基于 redis 实现客户端状态存储。
- ✨ mica-mqtt-broker 基于 redis 实现遗嘱、保留消息存储。
- ✨ mqtt-server http api 调整订阅和取消订阅,方便集群处理。
- ✨ mica-mqtt-spring-boot-example 添加 mqtt 和 http api 认证示例。
- ✨ 添加 mqtt 5 所有 ReasonCode。
- ✨ 优化解码 PacketNeededLength 计算。
- 🐛 修复遗嘱消息,添加消息类型。
- 🐛 修复 mqtt-server 保留消息匹配规则。
mica-mqtt 1.1.1 大量细节优化和修复,基于 t-io 的 mqtt 组件
- ✨ mqtt-server 优化连接关闭日志。
- ✨ mqtt-server 优化订阅,相同 topicFilter 订阅对 qos 判断。
- ✨ mqtt-server 监听器添加 try catch,避免因业务问题导致连接断开。
- ✨ mqtt-server 优化 topicFilters 校验。
- ✨ mqtt-client 优化订阅 reasonCodes 判断。
- ✨ mqtt-client 监听器添加 try catch,避免因业务问题导致连接断开。
- ✨ mqtt-client 添加 session 有效期。
- ✨ 代码优化,减少 codacy 上的问题。
- 🐛 mqtt-server 修复心跳时间问题。
- 🐛 修复 mqtt-server 多个订阅同时匹配时消息重复的问题。
- 🐛 mqtt-client 优化连接处理的逻辑,mqtt 连接之后再订阅。
- 🐛 修复 MqttProperties 潜在的一个空指针。
mica-mqtt 1.1.0 内置 http api,修复 websocket 下线无触发offline
- ✨ 重构,内置 http,http 和 websocket 公用端口。
- ✨ 添加 mica-core 中的 HexUtil。
- ✨ 添加 PayloadEncode 工具。
- ✨ ServerTioConfig#share 方法添加 groupStat。
- ✨ 考虑使用 udp 多播做集群。
- ✨ MqttServer、MqttServerTemplate 添加 close、getChannelContext 等方法。
- ✨ 重构 MqttServerConfiguration 简化代码。
- ✨ 配置项
mqtt.server.websocket-port
改为mqtt.server.web-port
。 - 📝 添加 JetBrains 连接。
- 🐛 修复默认的消息转发器逻辑。
- 🐛 修复 websocket 下线无法触发offline gitee #I47K13 感谢
@willianfu
同学反馈。
mcia-mqtt 1.0.6 修复服务端心跳超时处理
- ✨ 添加订阅 topicFilter 校验。
- ✨ 优化压测工具,更新压测说明,添加 tcp 连接数更改文档地址。
- ✨ mica-mqtt-example 添加多设备交互示例。
- ✨ 优化 mica-mqtt-spring-boot-example。
- ✨ 优化 deploy.sh 脚本。
- 🐛 优化解码异常处理。
- 🐛 修复服务端心跳超时处理。
- ⬆️ 升级 spring boot 到 2.5.4
mica 1.0.5 修复 1.0.3 编译问题
- 🐛 修复编译导致的 java8 运行期间的部分问题,NoSuchMethodError: java.nio.ByteBuffer.xxx
mica-mqtt 1.0.3 添加 websocket mqtt 子协议支持(支持 mqtt.js)
- ✨ mica-mqtt server 添加 websocket mqtt 子协议支持(支持 mqtt.js)。
- ✨ mica-mqtt server ip,默认为空,可不设置。
- ✨ mica-mqtt client去除 CountDownLatch 避免启动时未连接上服务端卡住。
- ✨ mica-mqtt client 添加最大包体长度字段,避免超过 8092 长度的包体导致解析异常。
- ✨ mica-mqtt client 添加连接监听 IMqttClientConnectListener。
- ✨ mica-mqtt 3.1 协议会校验 clientId 长度,添加配置项 maxClientIdLength。
- ✨ mica-mqtt 优化 mqtt 解码异常处理。
- ✨ mica-mqtt 日志优化,方便查询。
- ✨ mica-mqtt 代码优化,部分 Tio.close 改为 Tio.remove。
- ✨ mica-mqtt-spring-boot-example 添加 Dockerfile,支持
spring-boot:build-image
。 - ✨ 完善 mica-mqtt-spring-boot-starter,添加遗嘱消息配置。
- ⬆️ 升级 t-io 到 3.7.4。
mica-mqtt 1.0.2 发布,Spring boot 快速接入
- 📝 文档添加集群处理步骤说明,添加遗嘱消息、保留消息的使用场景。
- ✨ 去除演示中的 qos2 参数,性能损耗大避免误用。
- ✨ 遗嘱、保留消息内部消息转发抽象。
- ✨ mqtt server 连接时先判断 clientId 是否存在连接关系,有则先关闭已有连接。
- ✨ 添加 mica-mqtt-spring-boot-example 。感谢 wsq( @冷月宫主 )pr。
- ✨ mica-mqtt-spring-boot-starter 支持客户端接入和服务端优化。感谢 wsq( @冷月宫主 )pr。
- ✨ mica-mqtt-spring-boot-starter 服务端支持指标收集。可对接
Prometheus + Grafana
监控。 - ✨ mqtt server 接受连接时,先判断该 clientId 是否存在其它连接,有则解绑并关闭其他连接。
- ⬆️ 升级 mica-auto 到 2.1.3 修复 ide 多模块增量编译问题。
mica-mqtt 1.0.1 添加 Spring boot starter 快速接入
- ✨ 订阅管理集成到 session 管理中。
- ✨ MqttProperties.MqttPropertyType 添加注释,考虑 mqtt V5.0 新特性处理。
- ✨ 添加 Spring boot starter 方便接入,兼容低版本 Spring boot。
- ✨ 调研 t-io websocket 子协议。
- 🐛 修复 java8 运行期间的部分问题,NoSuchMethodError: java.nio.ByteBuffer.xxx
mica-mqtt 1.0.0 正式版
- ✨ 基于低延迟高性能的 t-io java AIO 框架。
- ✨ 支持 MQTT v3.1、v3.1.1 以及 v5.0 协议。
- ✨ 支持 MQTT client 客户端。
- ✨ 支持 MQTT server 服务端。
- ✨ 支持 MQTT 遗嘱消息。
- ✨ 支持 MQTT 保留消息。
- ✨ 支持自定义消息(mq)处理转发实现集群。
- ✨ 支持 GraalVM 编译成本机可执行程序。