commit
4863754133
61
README.md
61
README.md
@ -1 +1,60 @@
|
|||||||
MQTT网关
|
|
||||||
|
|
||||||
|
# Zhitan-Gateway 项目简介
|
||||||
|
|
||||||
|
Zhitan-Gateway 是一个基于 Java 的网关服务,主要功能是接收 MQTT 协议的数据,并将这些数据写入时间序列数据库 InfluxDB 或关系型数据库中。该项目适用于物联网(IoT)场景下的数据采集和处理。
|
||||||
|
|
||||||
|
## 技术栈
|
||||||
|
- Spring Boot
|
||||||
|
- MQTT
|
||||||
|
- InfluxDB
|
||||||
|
- MyBatis Plus
|
||||||
|
- Redis
|
||||||
|
- Druid 数据库连接池
|
||||||
|
|
||||||
|
## 主要功能
|
||||||
|
- 通过 MQTT 协议接收数据并进行处理。
|
||||||
|
- 支持将数据写入 InfluxDB 或其他数据库。
|
||||||
|
- 配置 Druid 数据库连接池以管理主从数据库连接。
|
||||||
|
- 提供 Redis 缓存服务以提升数据处理效率。
|
||||||
|
|
||||||
|
## 模块说明
|
||||||
|
- `MQTTGatewayApplication.java`:Spring Boot 启动类。
|
||||||
|
- `MqttConfig.java` 和 `MqttInboundConfig.java`:负责 MQTT 的连接和消息接收配置。
|
||||||
|
- `InfluxdbConfig.java` 和 `InfluxdbRepository.java`:负责 InfluxDB 的连接和数据写入。
|
||||||
|
- `DataServiceImpl.java`:实现数据处理逻辑,包括接收 MQTT 消息并写入数据库。
|
||||||
|
- `DruidConfig.java` 和 `DruidProperties.java`:配置 Druid 数据库连接池。
|
||||||
|
- `RedisConfig.java` 和 `RedisCache.java`:配置 Redis 缓存并提供缓存操作方法。
|
||||||
|
- `MyBatisPlusConfig.java`:配置 MyBatis Plus 的拦截器。
|
||||||
|
|
||||||
|
## 使用说明
|
||||||
|
### 配置
|
||||||
|
确保在 `application.yml` 或 `application-dev.yml` 中配置以下内容:
|
||||||
|
- MQTT 服务器连接信息(broker-url, username, password)
|
||||||
|
- InfluxDB 连接参数(host, org, bucket, token)
|
||||||
|
- Redis 配置信息
|
||||||
|
- Druid 数据源配置
|
||||||
|
|
||||||
|
### 启动
|
||||||
|
运行 `MQTTGatewayApplication.java` 中的 `main` 方法启动服务。
|
||||||
|
|
||||||
|
### 数据处理
|
||||||
|
当 MQTT 消息到达时,`MqttInboundConfig` 会监听指定的 Topic,并通过 `MqttMessageHandler` 处理数据。数据将根据配置写入 InfluxDB 或其他数据库。
|
||||||
|
|
||||||
|
## 依赖管理
|
||||||
|
使用 Maven 进行依赖管理,核心依赖包括:
|
||||||
|
- Spring Boot Starter
|
||||||
|
- MQTT 支持库
|
||||||
|
- InfluxDB Java 客户端
|
||||||
|
- MyBatis Plus
|
||||||
|
- Druid 数据库连接池
|
||||||
|
- Redis 客户端
|
||||||
|
|
||||||
|
## 许可证
|
||||||
|
本项目遵循 MIT 许可证,详见 [LICENSE](LICENSE) 文件。
|
||||||
|
|
||||||
|
## 注意事项
|
||||||
|
- 本项目需要依赖 MQTT Broker 和 InfluxDB/MySQL 等数据库,请确保相关服务已启动。
|
||||||
|
- 配置文件中需根据实际环境修改配置,特别是数据库和 MQTT 的连接参数。
|
||||||
|
|
||||||
|
如需进一步了解,请查阅源码或联系项目维护者。
|
||||||
Loading…
x
Reference in New Issue
Block a user