【支持国产】mica-mqtt 2.4.6,solon 插件支持指标和泛型订阅


一、前言

Dromara mica-mqtt 2.4.6 正式版已经发布,请注意从 2.4.x 版本开始将 maven groupId 迁移到了 org.dromara.mica-mqtt,包名切换到了 org.dromara,其它使用上均和老版本保持一致。强烈推荐 大家尽快升级到新的 2.4.x

另由于老的文档散落在各个模块,不方便查看,我们新增了文档站:https://mica-mqtt.dromara.org

二、更新记录

v2.4.6 - 2025-05-19

  • ✨ mica-mqtt-client-spring-boot-starter MqttDeserializer 接口重写,支持泛型调用 (github #95) 感谢 @galaxy-sea 贡献
  • ✨ mica-mqtt-client 批量订阅兼容 mqtt 3.1.1 部分 broker 只返回一个 reasonCode 的情况。感谢 @Jacky 反馈
  • ✨ mica-mqtt-server-solon-plugin 添加对 metrics 指标的支持
  • ✨ mica-mqtt-client-solon-plugin 注解订阅支持自定义序列化(默认 json 序列化)和泛型

注意:由于 2.4.5 使用了错误的 jdk 版本(java17)打包发布,导致 java 8 下运行会报错,如果有使用,请升级到 2.4.6

三、重点说明

在 mica-mqtt 的 2.4.6 版本中,mica-mqtt-server-solon-plugin支持了指标:

mica-mqtt-client-solon-plugin注解订阅支持消息泛型序列化,规则如下:

/**
 * 
 * @param topicmqtt topic
 * @param message mqtt 原始消息
 * @param data 用户自定义的 java bean
 */
@MqttClientSubscribe(
value = "/test/json",
deserialize = MqttJsonDeserializer.class // 自定义反序列化,默认为 json 序列化
)
public void testJson(String topic, MqttPublishMessage message, User data) {
// 支持 2 到 3 个参数,字段类型映射规则如下
// String 字符串会默认映射到 topic,
// MqttPublishMessage 会默认映射到 原始的消息,可以拿到 mqtt5 的 props 参数
// byte[] 会映射到 mqtt 消息内容 payload
// ByteBuffer 会映射到 mqtt 消息内容 payload
// 其他类型会走序列化,确保消息能够序列化,默认为 json 序列化
logger.info("topic:{} json data:{}", topic, data);
}

四、使用文档

  • mqtt 科普、mqttx、mica-mqtt 的使用视频
  • mica-mqtt 快速开始
  • mica-mqtt 使用常见问题汇总
  • mica-mqtt 发行版本
  • mica-mqtt 老版本迁移指南

相關推薦

2024-08-08

一、简介 mica-mqtt 基于 java aio 实现的简单、低延迟、高性能 的 mqtt 物联网开源组件。 mica-mqtt 更加易于集成到已有服务和二次开发,降低自研物联网平台开发成本。 二、功能 支持 MQTT v3.1、v3.1.1 以及 v5.0 协议。 支持 webs

2024-10-16

向下兼容2.12.X系列的版本的。 JavaX脚本 LF从很早就开始支持Java脚本,让java代码可以像一种脚本语言那样运作,使用java语言编写可以随时热刷新的代码成为了现实,这个脚本很酷,但是社区里一直诟病的就是LF的java脚本竟然不

2025-05-14

划》 有“【社区交流】”和“【商业服务】”双重技术支持 有什么特点(相对 Java Spring 方案)? 特点 描述 更高的计算性价比 并发高 700%;内存省 50% 更快的开发效率 代码少;入门简单;启动快 10

2024-08-27

打包小 90% 更大的兼容范围 非 java-ee 架构;同时支持 java8 ~ java22,graalvm native image 入门探索视频(用户录制): 最近更新了什么? 新增 solon.boot.vertx 插件 新增 solon.cloud.gateway 插件 新增 solon.rx 插件 添

2024-07-13

最多缩小 90% 更大的兼容范围 非 java-ee 架构;同时支持 java8 ~ java22 入门探索视频(早期用户录制): 最近更新了什么? 添加 solon.cache.redisson RedissonClientOriginalSupplier 类 添加 solon MethodKey 类 添加 solon ClassUtil

2023-03-22

自己接口标准规范的开放生态,可为应用软件国产化提供支持,助力信创建设。 150来个生态插件,覆盖各种不同的应用开发场景: 相对于 Spring Boot 和 Spring Cloud 的项目: 启动快 5 ~ 10 倍。 (更快) qps 高 2~ 3 倍。 (

2022-10-18

小) 基于服务 name 进行注册发现 与 k8s svc 相互对应 支持 Service Mesh 架构部署方案 同时支持 jdk8, jdk11, jdk17, jdk19 本次更新: 新增 wood-cloud-plugin 插件 优化 easypoi-solon-plugin 插件 优化 activerecord-solon-plugin 插件,增加 模

2023-08-17

1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小) 同时支持 jdk8, jdk11, jdk17, jdk20, graalvm native image 入门探索视频(用户录制): 更新了什么? 增加 solon.cloud.metrics 对 MeterBinder 的自动装配处理 增加 HandlerLoaderFactory

2025-03-28

划》 有“【社区交流】”和“【商业服务】”双重技术支持 有什么特点(相对 Java Spring 方案)? 特点 描述 更高的计算性价比 并发高 700%;内存省 50% 更快的开发效率 代码少;入门快;启动快 10 倍

2023-09-01

1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小) 同时支持 jdk8, jdk11, jdk17, jdk20, graalvm native image 入门探索视频(用户录制): 最近更新了什么? 增加 http range 分片输出支持 增加 IoUtil 工具类,替代旧的 Utils IO功

2023-09-20

1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小) 同时支持 jdk8, jdk11, jdk17, jdk21, graalvm native image 简介: 克制、简洁、高效、开放、生态 支持 JDK8、JDK11、JDK17、JDK20(是同时支持) Http、WebSocket、Socket 三种信号统一

2025-05-22

划》 有“【社区交流】”和“【商业服务】”双重技术支持 同时支持运行时环境(不基于 java-ee 构建,所以可以同时兼容): java8, java11, java17, java21, java14 有什么特点(相对 Java Spring 方案)? 特点 描述

2024-01-06

1/2 ~ 1/10;比如,300Mb 的变成了 23Mb。 (更小) 同时支持 jdk8, jdk11, jdk17, jdk21, graalvm native image 入门探索视频(用户录制): 最近更新了什么? 新增 graphql-solon-plugin 插件(欢迎试用) 修复 @Header 与 @Body 同时注

2022-09-08

服务治理,提供一站式解决方案(可以理解为微服务架构支持套件)。基于 Solon 框架开发,并支持完整的 Solon Cloud 规范;已在生产环境奔跑了4年。 功能相当于:consul + rabbitmq + elk + prometheus + openFaas + quartz + 等等,并有机结合