Go to file
jay 86d51844ff update 租户id类型 String->Long 2024-06-13 19:08:46 +08:00
data update 初始化插件数据状态 2024-05-28 16:00:11 +08:00
doc docs: 启动教程以及常见问题处理 2023-07-04 22:41:15 +08:00
iot-dao update 租户id类型 String->Long 2024-06-13 19:08:46 +08:00
iot-module update 租户id类型 String->Long 2024-06-13 19:08:46 +08:00
iot-starter update 租户id类型 String->Long 2024-06-13 19:08:46 +08:00
iot-test-tool update Copyright 2024-05-15 17:44:17 +08:00
.gitignore feat:增加内置oss 2024-03-16 10:23:54 +08:00
Dockerfile feat:添加Dockerfile和docker启动说明 2024-02-21 23:06:39 +08:00
LICENSE update LICENSE. 2022-06-17 18:47:21 +00:00
README.md update 演示地址 2024-05-23 17:32:03 +08:00
docker-compose.yml feat: docker-compose 2024-02-22 13:46:48 +08:00
docker.env feat: docker-compose 2024-02-22 13:46:48 +08:00
git规范.md docs: 添加git提交规范 2023-05-15 18:36:16 +08:00
pom.xml fix 参数校验不生效 2024-06-13 10:05:33 +08:00
待优化项.md feat:多租户功能调整合并 2023-08-07 08:32:23 +08:00
项目规范.md 错别字修改 2023-06-29 21:42:05 +08:00

README.md

logo

介绍

此仓库为铱塔智联(openiita)物联网平台开源项目。 铱塔智联开源平台是一个开源的物联网基础开发平台,提供了物联网及相关业务开发的常见基础功能, 能帮助你快速搭建自己的物联网相关业务平台。

系统包含了品类、物模型、消息转换、插件管理mqtt插件、EMQX插件、http插件、tcp插件、modbus插件等、设备管理、设备分组、规则引擎、第三方平台接入、数据流转http/mqtt/kafka、数据可视化、告警中心等模块。

低配服务器万级设备接入能力

服务器配置: 1台2核2G(阿里云突发性能实例)跑主程序、1台2核4G(阿里云突发性能实例)跑TDengine和RocketMq

程序配置使用内置H2数据库和内置mqtt

设备接入情况接入4千台网关+8千台子设备其中4千台子设备每10秒上报一条数据

稳定运行后设备在线并正常上报和下发、CPU占用未超过50%、界面操作没有卡顿

低学习门槛

1、零配置一键运行小白也会用

2、低环境要求不需要额外安装软件

3、平民级代码没有形式化的分层和过度封装简单易懂

主流数据库支持

关系型数据库理论上支持所有实现了标准SQL的数据库 DB2、H2、HSQLDB、MariaDB、Microsoft SQL Server、MySQL、Oracle、Postgres

时序数据库elasticsearch、TDEngine

K-V数据库redis

消息总线支持

Vertx event-bus内置、RocketMQ通过扩展模块可接入其它任意消息中间件。

系统生态

前端项目:

OPENIITA/iita-iot-web-admin

演示地址: 点击访问

系统截图

输入图片说明

软件架构

软件架构说明 本系统采用springboot、jpa、vertx、redis、H2、mysql、elasticsearch、TDEngine、RocketMq、sa-token等框架和第三方软件中间件采用模块化无侵入集成非常容易扩展和替换。

默认使用内置的redis、h2数据库、es时序数据库、vertx消息总线和oss以减小启动难度可实现 零配置一键启动 程序在第一次启动的时候会使用data/init目录的示例数据进行初始化。

管理员账号密码admin/admin123

注: es版本为7.15.2mysql版本为8.0+

H2数据库切换为mysql方法其它数据库同理

1、删掉.init、iotkit.mv.db、iotkit.trace.db文件

2、将iot-data-serviceImpl-rdb/pom.xml中的mysql驱动注释放开

3、application.yml 注释掉内置H2数据库打开mysql配置注释先建好库

es切换为TDengine(版本3.x)方法

1、删掉.init和关系数据库数据

2、注释掉iot-starter/pom.xml中的 iot-temporal-serviceImpl-es并打开iot-td-temporal-service的注释

3、注解掉iot-starter下application.xml中的elasticsearch配置并打开td-datasource配置

消息总线切换为RocketMq方法

1、注释掉iot-starter/pom.xml中的 iot-message-event-bus并打开iot-message-rocketmq的注释

2、application.xml中打开rocketmq配置

Docker运行

docker pull iotkits/iot-iita:latest

docker run -p 8082:8082 -p 8086:8086 -p 8130-8140:8130-8140 iotkits/iot-iita:latest

启动后访问 http://localhost:8082/

源码运行步骤

在线文档:知识库

在配置好相应的jdk11环境后推荐使用idea拉取代码等待项目加载完成以后先在Terminal里执行mvn clean install然后在idea的maven操作框上点击下刷新 1

然后就点击启动,看到如下所示日志即表示启动成功:

image-20230702174747305

后端常见问题以及处理方式

1、数据初始化不成功

删除以下标红的几个文件以及文件夹后,重复下上面启动项目的操作:

image-20230702173852342

切换成外置中间件数据库时,也注意删除相关库以及数据。

2、提示找不到QTbxxxxx类

在Terminal里执行mvn clean install再刷新下这个出现的原因是因为采用了querydsl插件打包时会生成相关的类有可能idea的扫描不及时导致未识别到

111

3启动提示xxMapperxxx类bean重复

处理办法同2一样原因也类似采用了mapstruct plus插件打包时候会生成对应类的getset方法工具类可能idea的扫描不及时导致未识别到

服务器部署

执行maven打包在iot-starter模块中将打包后的iot-starter.xx.zip上传到服务器
解压后先执行: java -jar lib/iot-start.xxx.jar确认成功后续可使用 bin/start.sh或bin/start.bat启动。

文档

https://open-iita.feishu.cn/wiki/Km67wBKNNiFMrMkldCJcxa6vnLe

捐助与支持

如果您觉得我的开源软件对你有所帮助请关注、star、fork 😘

如果我的开源软件应用到您的商业项目中,请务必通知到我,因为得到用户的认可是支撑开源的动力。

交流QQ群: 940575749

微信群(添加我微信备注"进群"):

输入图片说明