Skip to content

基于 java aio 网络框架 t-io 实现的低延迟、高性能百万级 mqtt client 组件和 mqtt broker 服务。🔝🔝 记得右上角点个star 关注更新!

License

Notifications You must be signed in to change notification settings

niexinpeng/mica-mqtt

 
 

Repository files navigation

🌐 mica mqtt 组件

Java CI JAVA 8 Mica Maven release Mica-mqtt maven snapshots Codacy Badge GitHub

基于 t-io 实现的低延迟高性能mqtt 物联网组件。更多使用方式详见: mica-mqtt-example 模块。

🍱 使用场景

  • 物联网(云端 mqtt broker)
  • 物联网(边缘端消息通信)
  • 群组类 IM
  • 消息推送
  • 简单易用的 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 项目快速接入(mica-mqtt-spring-boot-starter)。
  • mica-mqtt-spring-boot-starter 支持对接 Prometheus + Grafana。
  • 基于 redis pub/sub 实现集群,详见 mica-mqtt-broker 模块

🌱 待办

  • 优化处理 mqtt session,以及支持 v5.0
  • 基于 easy-rule + druid sql 解析,实现规则引擎。

🚨 默认端口

端口号 协议 说明
1883 tcp mqtt tcp 端口
8083 http、websocket http api 和 websocket mqtt 子协议端口

📦️ 依赖

Spring boot 项目

客户端:

<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-mqtt-client-spring-boot-starter</artifactId>
  <version>1.3.2</version>
</dependency>

配置详见mica-mqtt-client-spring-boot-starter 使用文档

服务端:

<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-mqtt-server-spring-boot-starter</artifactId>
  <version>1.3.2</version>
</dependency>

配置详见mica-mqtt-server-spring-boot-starter 使用文档

非 Spring boot 项目

<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-mqtt-core</artifactId>
  <version>1.3.2</version>
</dependency>

配置详见mica-mqtt 使用文档

📝 文档

💡 参考vs借鉴

🏗️ mqtt 客户端工具

🍻 开源推荐

💚 鸣谢

感谢 JetBrains 提供的免费开源 License:

JetBrains

感谢 如梦技术 VIP 小伙伴们的鼎力支持,更多 VIP 信息详见:https://www.dreamlu.net/vip/index.html

📱 微信公众号

如梦技术

精彩内容每日推荐!

About

基于 java aio 网络框架 t-io 实现的低延迟、高性能百万级 mqtt client 组件和 mqtt broker 服务。🔝🔝 记得右上角点个star 关注更新!

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 100.0%