mica-mqtt 1.3.6 发布,简单易用高性能的 java mqtt
一、简介
mica-mqtt 基于 t-io 实现的简单、低延迟、高性能 的 mqtt 物联网开源组件。mica-mqtt 更加易于集成到已有服务和二次开发,降低自研物联网平台开发成本。
二、功能
-
支持 MQTT v3.1、v3.1.1 以及 v5.0 协议。
-
支持 websocket mqtt 子协议(支持 mqtt.js)。
-
支持 http rest api,http api 文档详见。
-
支持 MQTT client 客户端。
-
支持 MQTT server 服务端。
-
支持 MQTT 遗嘱消息。
-
支持 MQTT 保留消息。
-
支持自定义消息(mq)处理转发实现集群。
-
MQTT 客户端 阿里云 mqtt 连接 demo。
-
支持 GraalVM 编译成本机可执行程序。
-
支持 Spring boot 项目快速接入。
-
支持对接 Prometheus + Grafana 监控。
-
基于 redis pub/sub 实现集群,详见 mica-mqtt-broker 模块。
三、使用场景
-
物联网(云端 mqtt broker)
-
物联网(边缘端消息通信)
-
群组类 IM
-
消息推送
-
简单、易用的 mqtt client 客户端
四、更新记录
v1.3.6 - 2022-06-25
-
✨ mica-mqtt 统一调整最大的消息体和一次读取的字节数。
-
✨ mica-mqtt client 简化 ssl 开启。
-
✨ mica-mqtt server 添加默认的账号密码配置。
-
⬆️ 依赖升级
v1.3.4 - 2022-06-06
-
✨ mica-mqtt starter 使用 Spring event 解耦 mqtt client 断连事件。
-
✨ mica-mqtt server
IMqttConnectStatusListener#offline方法添加reason断开原因字段。 -
✨ 添加赞助计划。捐助共勉,让你我走的更远!!!
-
🐛 修复 http api 响应问题。
五、重点说明
5.1 Spring event 解耦 mqtt client 断连事件
/** * mqtt 连接状态 * * @author L.cm */ @Service public class MqttConnectStatusListener { private static final Logger logger = LoggerFactory.getLogger(MqttConnectStatusListener.class); @EventListener public void online(MqttClientOnlineEvent event) { logger.info("MqttClientOnlineEvent:{}", event); } @EventListener public void offline(MqttClientOfflineEvent event) { logger.info("MqttClientOfflineEvent:{}", event); } }
简单易用,不再又 bean 循环依赖的问题。
5.2 统一调整最大的消息体和一次读取的字节数
mqtt: server: read-buffer-size: 8KB # 接收数据的 buffer size,默认:8k max-bytes-in-message: 10MB # 消息解析最大 bytes 长度,默认:10M
支持 Spring boot 单位配置,更加简单易用。