提交 0636da05 编写于 作者: 如梦技术's avatar 如梦技术 🐛

📝 完善 README.md

上级 a6ee2b6d
......@@ -3,10 +3,7 @@
[![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)
基于 `t-io` 实现的 `mqtt` 物联网组件。
## 使用
目前仅仅是试验性质,不过 `t-io` 确实很稳,`mica-mqtt-example` 中有 `mqtt` 服务端和客户端测试代码, `main` 方法运行即可。
基于 `t-io` 实现的**低延迟****高性能**`mqtt` 物联网组件。
## 功能
- [x] 支持 MQTT v3.1、v3.1.1 以及 v5.0 协议。
......@@ -16,9 +13,11 @@
- [ ] MQTT 服务端接续完善,精力有限,周期可能会长一些。
## 文档
- [t-io 官方问](https://www.tiocloud.com/doc/tio/85)
- [mqtt 协议文档](https://github.com/mcxiaoke/mqtt)
## 快速开始
查看 `mica-mqtt-example` 中有 `mqtt` 服务端和客户端演示代码, `main` 方法运行即可。
### 1. 启动 Server 端
......
# mica-mqtt 之 GraalVM native-image 编译成本机可执行程序
package net.dreamlu.iot.mqtt.core.server.session;
/**
* mqtt session
*
* @author L.cm
*/
public interface IMqttSession {
}
package net.dreamlu.iot.mqtt.core.util;
/**
* Mqtt Topic 工具
*
* @author L.cm
*/
public final class MqttTopicUtil {
public static String regexTopic(String topic) {
if (topic.startsWith("$")) {
topic = "\\" + topic;
}
return topic
.replaceAll("/", "\\\\/")
.replaceAll("\\+", "[^/]+")
.replaceAll("#", "(.+)") + "$";
}
}
......@@ -26,9 +26,5 @@
{
"name": "com.github.benmanes.caffeine.cache.PSAMS",
"allDeclaredConstructors": true
},
{
"name": "org.tio.utils.caffeine.CaffeineUtils",
"allDeclaredConstructors": true
}
]
{
"resources": {
"includes": [
{
"pattern": "^logging.properties"
}
]
}
}
......@@ -116,7 +116,12 @@
<imageName>mqtt-server-graalvm</imageName>
<mainClass>${mainClass.server}</mainClass>
<buildArgs>
--enable-all-security-services --report-unsupported-elements-at-runtime -H:+RemoveSaturatedTypeFlows --allow-incomplete-classpath -H:ReflectionConfigurationFiles=../graalvm/reflect-config.json
--enable-all-security-services
--report-unsupported-elements-at-runtime
-H:+RemoveSaturatedTypeFlows
--allow-incomplete-classpath
-H:ReflectionConfigurationFiles=../graalvm/reflect-config.json
-H:IncludeResources=../graalvm/resource-config.json
</buildArgs>
</configuration>
</plugin>
......@@ -160,7 +165,12 @@
<imageName>mqtt-client-graalvm</imageName>
<mainClass>${mainClass.client}</mainClass>
<buildArgs>
--enable-all-security-services --report-unsupported-elements-at-runtime -H:+RemoveSaturatedTypeFlows --allow-incomplete-classpath -H:ReflectionConfigurationFiles=../graalvm/reflect-config.json
--enable-all-security-services
--report-unsupported-elements-at-runtime
-H:+RemoveSaturatedTypeFlows
--allow-incomplete-classpath
-H:ReflectionConfigurationFiles=../graalvm/reflect-config.json
-H:IncludeResources=../graalvm/resource-config.json
</buildArgs>
</configuration>
</plugin>
......
handlers=java.util.logging.ConsoleHandler
.level=INFO
com.github.benmanes.caffeine.cache.level=SEVERE
java.util.logging.ConsoleHandler.level=INFO
java.util.logging.ConsoleHandler.formatter=java.util.logging.SimpleFormatter
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册