README.md 5.7 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)
如梦技术's avatar
如梦技术 已提交
4
[![Mica Maven release](https://img.shields.io/nexus/r/https/oss.sonatype.org/net.dreamlu/mica-mqtt-core.svg?style=flat-square)](https://mvnrepository.com/artifact/net.dreamlu/mica-mqtt-core)
如梦技术's avatar
如梦技术 已提交
5
[![Mica-mqtt maven snapshots](https://img.shields.io/nexus/s/https/oss.sonatype.org/net.dreamlu/mica-mqtt-core.svg?style=flat-square)](https://oss.sonatype.org/content/repositories/snapshots/net/dreamlu/mica-mqtt-core/)
如梦技术's avatar
如梦技术 已提交
6 7 8
[![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)

如梦技术's avatar
如梦技术 已提交
9
基于 `t-io` 实现的**低延迟****高性能**`mqtt` 物联网组件。更多使用方式详见: **mica-mqtt-example** 模块。
如梦技术's avatar
如梦技术 已提交
10

如梦技术's avatar
如梦技术 已提交
11
## 🍱 使用场景
如梦技术's avatar
如梦技术 已提交
12 13 14 15 16

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

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

如梦技术's avatar
如梦技术 已提交
24
## ✨ 功能
如梦技术's avatar
如梦技术 已提交
25
- [x] 支持 MQTT v3.1、v3.1.1 以及 v5.0 协议。
浅梦2013's avatar
浅梦2013 已提交
26
- [x] 支持 websocket mqtt 子协议(支持 mqtt.js)。
如梦技术's avatar
如梦技术 已提交
27
- [x] 支持 http rest api,[http api 文档详见](docs/http-api.md)
如梦技术's avatar
如梦技术 已提交
28 29 30 31 32
- [x] 支持 MQTT client 客户端。
- [x] 支持 MQTT server 服务端。
- [x] 支持 MQTT 遗嘱消息。
- [x] 支持 MQTT 保留消息。
- [x] 支持自定义消息(mq)处理转发实现集群。
33
- [x] MQTT 客户端 阿里云 mqtt 连接 demo。
wxdfun's avatar
wxdfun 已提交
34
- [x] 支持 GraalVM 编译成本机可执行程序。
浅梦2013's avatar
浅梦2013 已提交
35 36
- [x] 支持 Spring boot 项目快速接入(mica-mqtt-spring-boot-starter)。
- [x] mica-mqtt-spring-boot-starter 支持对接 Prometheus + Grafana。
37
- [x] 基于 redis pub/sub 实现集群,详见 [mica-mqtt-broker 模块](mica-mqtt-broker)
如梦技术's avatar
如梦技术 已提交
38

如梦技术's avatar
如梦技术 已提交
39
## 🌱 待办
如梦技术's avatar
如梦技术 已提交
40

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

如梦技术's avatar
如梦技术 已提交
44
## 🚨 默认端口
45 46 47 48 49 50

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

如梦技术's avatar
如梦技术 已提交
51
## 📦️ 依赖
52
### Spring boot 项目
53
**客户端:**
54 55 56
```xml
<dependency>
  <groupId>net.dreamlu</groupId>
57
  <artifactId>mica-mqtt-client-spring-boot-starter</artifactId>
如梦技术's avatar
如梦技术 已提交
58
  <version>1.3.2</version>
59 60 61
</dependency>
```

62 63 64 65 66 67 68
**配置详见**[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>
如梦技术's avatar
如梦技术 已提交
69
  <version>1.3.2</version>
70 71 72 73
</dependency>
```

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

75
### 非 Spring boot 项目
如梦技术's avatar
如梦技术 已提交
76 77 78 79
```xml
<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-mqtt-core</artifactId>
如梦技术's avatar
如梦技术 已提交
80
  <version>1.3.2</version>
如梦技术's avatar
如梦技术 已提交
81 82 83
</dependency>
```

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

如梦技术's avatar
如梦技术 已提交
86
## 📝 文档
如梦技术's avatar
如梦技术 已提交
87
- [mica-mqtt 快速开始](example/README.md)
88 89
- [mica-mqtt-client-spring-boot-starter 使用文档](starter/mica-mqtt-client-spring-boot-starter/README.md)
- [mica-mqtt-server-spring-boot-starter 使用文档](starter/mica-mqtt-server-spring-boot-starter/README.md)
如梦技术's avatar
如梦技术 已提交
90
- [mica-mqtt 使用文档](mica-mqtt-core/README.md)
如梦技术's avatar
如梦技术 已提交
91
- [mica-mqtt http api 文档详见](docs/http-api.md)
如梦技术's avatar
如梦技术 已提交
92
- [mica-mqtt 发行版本](CHANGELOG.md)
如梦技术's avatar
如梦技术 已提交
93
- [t-io 官方文档](https://www.tiocloud.com/doc/tio/85)
如梦技术's avatar
如梦技术 已提交
94 95
- [mqtt 协议文档](https://github.com/mcxiaoke/mqtt)

如梦技术's avatar
如梦技术 已提交
96
## 💡 参考vs借鉴
如梦技术's avatar
如梦技术 已提交
97
- [netty codec mqtt](https://github.com/netty/netty/tree/4.1/codec-mqtt)
98
- [jmqtt](https://github.com/Cicizz/jmqtt)
如梦技术's avatar
如梦技术 已提交
99
- [iot-mqtt-server](https://gitee.com/recallcode/iot-mqtt-server)
100
- [netty-mqtt-client](https://github.com/jetlinks/netty-mqtt-client)
如梦技术's avatar
如梦技术 已提交
101

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

如梦技术's avatar
如梦技术 已提交
107
## 🍻 开源推荐
108 109
- `Avue` 基于 vue 可配置化的前端框架:[https://gitee.com/smallweigit/avue](https://gitee.com/smallweigit/avue)
- `pig` 上央视的微服务框架(架构必备):[https://gitee.com/log4j/pig](https://gitee.com/log4j/pig)
110
- `SpringBlade` 企业级解决方案(企业开发必备):[https://gitee.com/smallc/SpringBlade](https://gitee.com/smallc/SpringBlade)
111 112 113
- `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
如梦技术 已提交
114

如梦技术's avatar
如梦技术 已提交
115
## 💚 鸣谢
浅梦2013's avatar
浅梦2013 已提交
116 117 118 119
感谢 JetBrains 提供的免费开源 License:

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

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

如梦技术's avatar
如梦技术 已提交
122
## 📱 微信公众号
如梦技术's avatar
如梦技术 已提交
123 124 125 126

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

精彩内容每日推荐!