README.md 7.6 KB
Newer Older
如梦技术's avatar
如梦技术 已提交
1
# 🌐 mica mqtt 组件
浅梦2013's avatar
浅梦2013 已提交
2
[![Java CI](https://github.com/lets-mica/mica-mqtt/workflows/Java%20CI/badge.svg)](https://github.com/lets-mica/mica-mqtt/actions)
如梦技术's avatar
如梦技术 已提交
3
![JAVA 8](https://img.shields.io/badge/JDK-1.8+-brightgreen.svg)
浅梦2013's avatar
浅梦2013 已提交
4 5
[![Mica Maven release](https://img.shields.io/nexus/r/https/oss.sonatype.org/net.dreamlu/mica-mqtt-codec.svg?style=flat-square)](https://mvnrepository.com/artifact/net.dreamlu/mica-mqtt-codec/)
[![Mica-mqtt maven snapshots](https://img.shields.io/nexus/s/https/oss.sonatype.org/net.dreamlu/mica-mqtt-codec.svg?style=flat-square)](https://oss.sonatype.org/content/repositories/snapshots/net/dreamlu/mica-mqtt-codec/)
浅梦2013's avatar
浅梦2013 已提交
6 7 8

[![star](https://gitee.com/596392912/mica-mqtt/badge/star.svg?theme=dark)](https://gitee.com/596392912/mica-mqtt/stargazers)
[![GitHub Repo stars](https://img.shields.io/github/stars/lets-mica/mica-mqtt?label=Github%20Stars)](https://github.com/lets-mica/mica-mqtt)
如梦技术's avatar
如梦技术 已提交
9 10 11
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/30dad82f79f34e41bafbc3cef6b68fc3)](https://www.codacy.com/gh/lets-mica/mica-mqtt/dashboard?utm_source=github.com&utm_medium=referral&utm_content=lets-mica/mica-mqtt&utm_campaign=Badge_Grade)
[![GitHub](https://img.shields.io/github/license/lets-mica/mica-mqtt.svg?style=flat-square)](https://github.com/lets-mica/mica-mqtt/blob/master/LICENSE)

浅梦2013's avatar
浅梦2013 已提交
12 13
---

14 15
简体中文 | [English](README_EN.md)

如梦技术's avatar
如梦技术 已提交
16
`mica-mqtt` **低延迟****高性能**`mqtt` 物联网组件。更多使用方式详见: **mica-mqtt-example** 模块。
如梦技术's avatar
如梦技术 已提交
17

如梦技术's avatar
如梦技术 已提交
18
[**迁移到 mica-mqtt 2.1.x**](docs/update.md)
如梦技术's avatar
如梦技术 已提交
19

如梦技术's avatar
如梦技术 已提交
20 21
承接各种**协议解析**,¥600起,按复杂度收费,详询:**DreamLuTech**(微信)

如梦技术's avatar
如梦技术 已提交
22
## 🍱 使用场景
如梦技术's avatar
如梦技术 已提交
23 24 25 26 27

- 物联网(云端 mqtt broker)
- 物联网(边缘端消息通信)
- 群组类 IM
- 消息推送
浅梦2013's avatar
浅梦2013 已提交
28
- 简单易用的 mqtt 客户端
如梦技术's avatar
如梦技术 已提交
29

如梦技术's avatar
如梦技术 已提交
30
## 🚀 优势
浅梦2013's avatar
浅梦2013 已提交
31 32 33 34
- 平凡却不单调,简单却不失精彩。
- 手动档(更加易于二次开发或扩展)。
- 牛犊初生,无限可能。

如梦技术's avatar
如梦技术 已提交
35
## ✨ 功能
如梦技术's avatar
如梦技术 已提交
36
- [x] 支持 MQTT v3.1、v3.1.1 以及 v5.0 协议。
浅梦2013's avatar
浅梦2013 已提交
37
- [x] 支持 websocket mqtt 子协议(支持 mqtt.js)。
如梦技术's avatar
如梦技术 已提交
38
- [x] 支持 http rest api,[http api 文档详见](docs/http-api.md)
如梦技术's avatar
如梦技术 已提交
39 40
- [x] 支持 MQTT client 客户端。
- [x] 支持 MQTT server 服务端。
41
- [x] 支持 MQTT client、server 共享订阅支持(捐助VIP版采用 topic 树存储,跟 topic 数无关,百万 topic 性能依旧)。
如梦技术's avatar
如梦技术 已提交
42 43 44
- [x] 支持 MQTT 遗嘱消息。
- [x] 支持 MQTT 保留消息。
- [x] 支持自定义消息(mq)处理转发实现集群。
浅梦2013's avatar
浅梦2013 已提交
45
- [x] MQTT 客户端 **阿里云 mqtt****华为云 mqtt** 连接 demo 示例。
wxdfun's avatar
wxdfun 已提交
46
- [x] 支持 GraalVM 编译成本机可执行程序。
如梦技术's avatar
如梦技术 已提交
47 48
- [x] 支持 Spring boot 项目快速接入。
- [x] 支持对接 Prometheus + Grafana 实现监控。
浅梦2013's avatar
浅梦2013 已提交
49
- [x] 基于 redis stream 实现集群,详见 [mica-mqtt-broker 模块](mica-mqtt-broker)
如梦技术's avatar
如梦技术 已提交
50

如梦技术's avatar
如梦技术 已提交
51
## 🌱 待办
如梦技术's avatar
如梦技术 已提交
52

如梦技术's avatar
如梦技术 已提交
53 54
- [ ] 优化处理 mqtt session,以及支持 v5.0 
- [ ] 基于 easy-rule + druid sql 解析,实现规则引擎。
55

浅梦2013's avatar
浅梦2013 已提交
56
## 🚨 默认端口
浅梦2013's avatar
浅梦2013 已提交
57

浅梦2013's avatar
浅梦2013 已提交
58 59 60 61
| 端口号 | 协议            | 说明                             |
| ------ | --------------- | -------------------------------- |
| 1883   | tcp             | mqtt tcp 端口                    |
| 8083   | http、websocket | http api 和 websocket mqtt 子协议端口 |
浅梦2013's avatar
浅梦2013 已提交
62

浅梦2013's avatar
浅梦2013 已提交
63
**演示地址**:mqtt.dreamlu.net 端口同上,账号:mica 密码:mica
浅梦2013's avatar
浅梦2013 已提交
64

浅梦2013's avatar
浅梦2013 已提交
65
## 📦️ 依赖
浅梦2013's avatar
浅梦2013 已提交
66

67
### Spring boot 项目
68
**客户端:**
69 70 71
```xml
<dependency>
  <groupId>net.dreamlu</groupId>
72
  <artifactId>mica-mqtt-client-spring-boot-starter</artifactId>
浅梦2013's avatar
浅梦2013 已提交
73
  <version>${mica-mqtt.version}</version>
74 75 76
</dependency>
```

77 78 79 80 81 82 83
**配置详见**[mica-mqtt-client-spring-boot-starter 使用文档](starter/mica-mqtt-client-spring-boot-starter/README.md)

**服务端:**
```xml
<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-mqtt-server-spring-boot-starter</artifactId>
浅梦2013's avatar
浅梦2013 已提交
84
  <version>${mica-mqtt.version}</version>
85 86 87 88
</dependency>
```

**配置详见**[mica-mqtt-server-spring-boot-starter 使用文档](starter/mica-mqtt-server-spring-boot-starter/README.md)
浅梦2013's avatar
浅梦2013 已提交
89

90
### 非 Spring boot 项目
浅梦2013's avatar
浅梦2013 已提交
91 92 93 94 95 96 97 98 99 100

### 客户端
```xml
<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-mqtt-client</artifactId>
  <version>${mica-mqtt.version}</version>
</dependency>
```

如梦技术's avatar
如梦技术 已提交
101 102
**配置详见**[mica-mqtt-client 使用文档](mica-mqtt-client/README.md)

如梦技术's avatar
如梦技术 已提交
103
### 服务端
如梦技术's avatar
如梦技术 已提交
104 105 106
```xml
<dependency>
  <groupId>net.dreamlu</groupId>
浅梦2013's avatar
浅梦2013 已提交
107
  <artifactId>mica-mqtt-server</artifactId>
浅梦2013's avatar
浅梦2013 已提交
108
  <version>${mica-mqtt.version}</version>
如梦技术's avatar
如梦技术 已提交
109 110 111
</dependency>
```

如梦技术's avatar
如梦技术 已提交
112
**配置详见**[mica-mqtt-server 使用文档](mica-mqtt-server/README.md)
浅梦2013's avatar
浅梦2013 已提交
113

如梦技术's avatar
如梦技术 已提交
114
## 📝 文档
如梦技术's avatar
如梦技术 已提交
115
- [mqtt科普、mqttx、mica-mqtt的使用**视频**](https://b23.tv/VJ8yc7v)
如梦技术's avatar
如梦技术 已提交
116
- [mica-mqtt 快速开始](example/README.md)
117 118
- [jfinal-mica-mqtt-client 使用文档](starter/jfinal-mica-mqtt-client/README.md)
- [jfinal-mica-mqtt-server 使用文档](starter/jfinal-mica-mqtt-server/README.md)
如梦技术's avatar
如梦技术 已提交
119
- [mica-mqtt http api 文档详见](docs/http-api.md)
浅梦2013's avatar
浅梦2013 已提交
120
- [mica-mqtt 使用常见问题汇总](https://gitee.com/596392912/mica-mqtt/issues/I45GO7)
如梦技术's avatar
如梦技术 已提交
121
- [mica-mqtt 发行版本](CHANGELOG.md)
如梦技术's avatar
如梦技术 已提交
122 123
- [mqtt 协议文档](https://github.com/mcxiaoke/mqtt)

如梦技术's avatar
如梦技术 已提交
124
## 💡 参考vs借鉴
如梦技术's avatar
如梦技术 已提交
125
- [netty codec mqtt](https://github.com/netty/netty/tree/4.1/codec-mqtt)
126
- [jmqtt](https://github.com/Cicizz/jmqtt)
如梦技术's avatar
如梦技术 已提交
127
- [iot-mqtt-server](https://gitee.com/recallcode/iot-mqtt-server)
128
- [netty-mqtt-client](https://github.com/jetlinks/netty-mqtt-client)
如梦技术's avatar
如梦技术 已提交
129

如梦技术's avatar
如梦技术 已提交
130
## 🏗️ mqtt 客户端工具
如梦技术's avatar
如梦技术 已提交
131
- [mqttx 优雅的跨平台 MQTT 5.0 客户端工具](https://mqttx.app/cn/)
132
- [mqtt websocket 调试](http://tools.emqx.io/)
如梦技术's avatar
如梦技术 已提交
133 134
- [mqttx.fx mqtt 客户端](http://mqttfx.org/)

如梦技术's avatar
如梦技术 已提交
135
## 🍻 开源推荐
136 137
- `Avue` 基于 vue 可配置化的前端框架:[https://gitee.com/smallweigit/avue](https://gitee.com/smallweigit/avue)
- `pig` 上央视的微服务框架(架构必备):[https://gitee.com/log4j/pig](https://gitee.com/log4j/pig)
138
- `SpringBlade` 企业级解决方案(企业开发必备):[https://gitee.com/smallc/SpringBlade](https://gitee.com/smallc/SpringBlade)
139
- `smart-mqtt` 性能极致的 mqtt broker(超越 emqx):[https://gitee.com/smartboot/smart-mqtt](https://gitee.com/smartboot/smart-mqtt)
140 141 142
- `IJPay` 支付 SDK,让支付触手可及:[https://gitee.com/javen205/IJPay](https://gitee.com/javen205/IJPay)
- `JustAuth` 史上最全的第三方登录开源库: [https://github.com/zhangyd-c/JustAuth](https://github.com/zhangyd-c/JustAuth)
- `spring-boot-demo` Spring boot 深度学习实战: [https://github.com/xkcoding/spring-boot-demo](https://github.com/xkcoding/spring-boot-demo)
如梦技术's avatar
如梦技术 已提交
143

如梦技术's avatar
如梦技术 已提交
144
## 💚 鸣谢
浅梦2013's avatar
浅梦2013 已提交
145 146 147 148
感谢 JetBrains 提供的免费开源 License:

[![JetBrains](docs/img/jetbrains.png)](https://www.jetbrains.com/?from=mica-mqtt)

如梦技术's avatar
如梦技术 已提交
149 150
感谢 `如梦技术 VIP` **小伙伴们**的鼎力支持,更多 **VIP** 信息详见:https://www.dreamlu.net/vip/index.html

浅梦2013's avatar
浅梦2013 已提交
151 152 153 154 155
## 🍱 推广

[![简单、易用业界领先的单点登录](docs/img/maxkey.png)](https://gitee.com/dromara/MaxKey/?from=mica-mqtt)

## 🍱 捐助
如梦技术's avatar
如梦技术 已提交
156 157
mica-mqtt 始于一份热爱,也得到不少朋友的认可,为了更好的发展,特推出赞助计划。**知识付费**,让你我走的更远!!!

浅梦2013's avatar
浅梦2013 已提交
158 159 160 161
| 类型   | ¥   | 权益(永久)                                                |
|------|-----|-------------------------------------------------------|
| 🏅捐助人 | 199 | mica-mqttx、mica-net 源码。                                       |
| 💎捐助人 | 699 | mica-mqttx、mica-net 源码 + mica-links(物联网平台源码,开发中价优,后续会涨价) 。 |
如梦技术's avatar
如梦技术 已提交
162

浅梦2013's avatar
浅梦2013 已提交
163
**注意:** 捐助人限免加入**mica开源知识星球**,加微信 **DreamLuTech** 详聊。
如梦技术's avatar
如梦技术 已提交
164

浅梦2013's avatar
浅梦2013 已提交
165
## 📱 微信
如梦技术's avatar
如梦技术 已提交
166 167 168

![如梦技术](docs/img/dreamlu-weixin.jpg)

如梦技术's avatar
如梦技术 已提交
169
**JAVA架构日记**,精彩内容每日推荐!