JetLinks 开源物联网平台
JetLinks 基于Java8、Spring Boot 2.x、WebFlux、Netty、Vert.x、Reactor 等开发,是一个开源的企业级物联网基础开发平台,实现了物联网相关以及相关业务开发的众多基础功能,能帮助你快速建立物联网相关业务系统。
在线完整功能演示地址: http://demo.jetlinks.cn 用户名:test
密码: test123456
测试用户未开放全部权限,建议本地运行社区版体验或者联系商务试用企业版。
核心特性
开放源代码
全部源代码开放,可自由拓展功能,不再受制于人。前后端分离,接口全开放。
统一设备接入,海量设备管理
TCP/UDP/MQTT/HTTP、TLS/DTLS、不同厂商、不同设备、不同报文、统一接入,统一管理。
规则引擎
灵活的规则模型配置,支持多种规则模型以及自定义规则模型。设备告警,场景联动,均由统一的规则引擎管理。
超轻量级基于SQL的实时处理引擎,让数据处理更简单.
多种数据存储策略
支持灵活的设备数据存储策略,可将不同类型的设备数据存储到不同的地方。
技术栈
- Spring Boot 2.3.x
- Spring WebFlux 响应式Web支持
- R2DBC 响应式关系型数据库驱动
- Project Reactor 响应式编程框架
- Netty ,Vert.x 高性能网络编程框架
- ElasticSearch 全文检索,日志,时序数据存储
- Redis 设备配置,状态管理,缓存
- PostgreSQL 业务功能数据管理
- hsweb framework 4 业务功能基础框架
架构
1.12-RELEASE
更新时间: 2022-01-10
代码分支: 1.12
主要优化:
- 增加物连接器功能,属性,功能,事件可以引用其他设备进行操作.(Pro)
- 视频模块增加固定视频流地址支持.(Pro)
- 调整虚拟属性逻辑,未设置窗口的规则,直接合并到原始属性消息中.(Pro)
- 性能优化.
- 增加根据告警记录查询设备相关数据查询条件:
where id dev-alarm 'state not xxx'
. - 修复批量
save
时,可能导致部分数据字段被设置为null. - 修复
OpenAPI
可能导致堆外内存泄漏的问题.(Pro) @Subscribe
注解可以使用表达式来引用配置值,如:@Subscribe("/device/${a.b.c:default}")
- 修复默认存储策略聚合查询:相同属性不同聚合方式时,聚合值可能不对的问题.
- 修复边缘网关配置
max-message-size
无效的问题.(Pro) - 钉钉增加机器人Webhook群通知.(Pro)
- 视频模块增加代理播放API,可使用平台接口直接播放直播和设备本地回放录像(播放地址固定).(Pro付费模块)
- 修复同一个设备告警配置多个触发条件时,可能某些条件无法触发问题.
- 升级log4j为
2.17.1
,升级logback为1.2.9
.(平台未直接使用log4j,而是使用log4j-to-slf4j
,最终使用logback). - 修复最新设备数据存储中如果属性使用array类型,可能导致查询数据报错问题.(Pro)
- 设备重复注册时,自动更新配置等相关信息到数据库中.