当前位置:   article > 正文

国产开源 Java 千万设备连接百万并发 IoT 企业级物联网平台

iot开源项目 java

5e8282b578f5ced5606279c27e898744.png

项目源码,文末联系小编

01

JetLinks 物联网平台

b56d759610e6d40ffb9f93062edd4789.png

JetLinks 是一个基于Java 国产开源的企业级的物联网平台,它集成了设备管理、数据安全通信、消息订阅、规则引擎等一系列物联网核心能力,支持以平台适配设备的方式连接海量设备,采集设备数据上云,提供云端API,通过调用云端API实现远程控制。JetLinks物联网平台还支持多种设备接入协议,并提供了丰富的协议库。

cfdac29431a9ae2c546635d4396d077a.png

JetLinks 基于Java8,Spring-boot 2.7,Webflux,Netty,Vert.x等开发, 是一个全响应式(Reactor)的物联网基础平台。使用 Maven多模块,实现组件化开发,可按需引入需要的模块。

性能优势

JetLinks支持私有化或容器化以单机、集群或微服务的方式部署在任意平台服务器上,支持横向拓展,具有极佳的性能表现。

  • 千万级设备连接

架构水平扩容,支持千万级设备连接。

  • 百万级数据并发

架构水平扩容,支持百万级数据并发。

  • 10w+任务调度处理

自研RactorQL实现规则引擎任务处理,具有极佳的处理性能。

  • <30ms设备延迟

全响应式非阻塞网络编程,具有极低的设备延迟。

核心特性

  • 完全开源(社区版免费),基于事件驱动,拓展性强.

  • 支持统一物模型管理,多种设备,多种厂家,多种报文,统一管理。

  • 统一设备连接管理,多协议适配(TCP,MQTT,UDP,CoAP,HTTP等),屏蔽网络编程复杂性,灵活接入不同厂家不同协议的设备。

  • 灵活的规则引擎,设备告警,消息通知,数据转发,场景联动。

  • 强大的ReactorQL引擎,使用SQL来处理实时数据.可拓展自定义函数。

  • 地理位置:统一管理地理位置信息,支持区域搜索。

  • 灵活的非侵入多租户数据权限控制

  • 支持灵活的设备数据存储策略,可将不同类型的设备数据存储到不同的地方。

  • 自研hsweb、easyorm、reactorQL、规则引擎、消息总线、注册中心等物联网平台核心组件。

  • 基于自研组件与开放协议,可快速二次开发,适配各行业物联网业务。

  • 支持InFluxDB、ClickHouse、Elasticsearch、Cassandra、TDengine五种时序数据库。

  • 全响应式企业级物联网平台,面向数据流和变化传递,更优雅的多线程和异步编程方式。

  • 支持可视化规则引擎编辑器,实现拖拉拽的方式处理数据输入、清洗、计算、输出、推送、存储。

  • 支持鲲鹏等国产化服务器部署。

  • 水平扩容架构,支持集群微服务部署。

02

JetLinks 产品功能和架构

328e19fab0271a526741dc38497de050.png

‍Jetlinks 的定位为 Paas 服务的物联网平台,降低物联网企业研发、运营和运维成本,提高物联网项目的落地能力。

功能清单

  • 设备接入

多元化设备接入方式,提供基于网络协议、云平台、边缘网关、视频通道等多种设备接入方式。

  • 数据处理

提供基于ReactorQL、自定义脚本计算、规则引擎等强大的数据处理功能。

  • 数据储存

平台支持Elasticsearch、ClickHouse、InfluxDB、TDengine、Cassandra等数据存储中间件,可自定义配置。

  • 应用集成

平台提供所有功能API接口,第三方应用可轻松获取平台数据;同时支持Oauth2单点登录。

  • 规则引擎

提供基于可视化规则编辑器,以拖拉拽的方式处理数据输入、清洗、计算、输出、存储等业务。

  • 通知管理

平台支持钉钉、微信、邮箱、短信、webhook、语音6大类通知方式。

  • 告警中心

支持设备和定时维度实时触发告警规则。支持告警推送、告警阈值、告警解除、告警限频等功能。

  • 视频管理

平台基于GB/T28181/2016协议支持多路视频直播、回放、录制、云台控制、国标级联。

架构图

8727ffdf31b3cea7280a3e4705b186df.png

技术栈

技术栈

描述

Java8

编程语言

Hsweb Framework

业务基础框架

Spring Boot 2.7.x

响应式web支持

Vert.x,Netty

高性能网络框架

R2dbc

关系型数据库响应式驱动

Postgresql

关系型数据库,可更换为mysql、sqlserver

ElasticSearch

设备数据与日志存储,可更换为其他中间件

Redis

用户信息与权限缓存、设备注册中心缓存

Scalecube

基于JVM的分布式服务框架,支持响应式

Micrometer

监控指标框架

国产化支持

类型

国产套件

国产操作系统

麒麟V10操作系统

中天鲲鹏欧拉版本操作系统

国产服务器适配

华为泰山服务器

海光服务器

华为鲲鹏服务器

国产数据库

达梦数据V8

瀚高数据库V6.0.4

人大金仓 V8+

国产中间件

东方通 TongHTP 2.0

TDEngine 3.0.3.0

03

JetLinks 开发实战

5e4c879def66112700e3c62b7a77ba87.png

设备接入流程

6d702db32686f484627c844a426851af.png

产品管理

产品管理对具有相同功能的设备模型进行统一的维护管理,包括产品的基本信息、物模型、设备接入等功能。

29c9508cc42d9d1a5688da45a6700987.png

设备管理

设备管理可对设备实例进行全生命周期管理,包括设备基本信息、物模型、运行状态、设备功能、日志管理、设备诊断、数据解析、点位绑定等管理功能。

303db6c80a6a971790ca550709c39255.png

685563f9b5dcaf99350a6a057aef0833.png

网关接入

设备接入网关聚合了设备接入Jetlinks物联网平台的所需的相关配置信息,支持自定义接入、视频类设备接入、云平台接入、通道类设备接入、官方接入等方式。

f2c3a7ab00043354134401135a90827c.png

规则引擎

规则引擎前端编辑界面基于node-red,后端使用纯Java实现。灵活的规则模型配置,支持多种规则模型以及自定义规则模型。设备告警,场景联动均由统一的规则引擎管理。

587f31c3967ecf2bb02bdc5658c8eb39.png

日志管理

记录访问日志与系统日志记录,支撑查看和排查系统异常。

036ae9e0d5ddf7642af64714299191d4.png

ea0b7c7500ad920f765db43abd811be7.png

告警配置

统一管理系统内的告警规则配置,触发告警规则时可产生对应的告警记录数据。

9b23a8193fabb3e492798f0596f1df17.png

可视化大屏

ee1b173610798a1192c6a379de37bd51.png

JetLinks View可视化平台提供丰富的业务组件和数据接入能力,包括图表40+、通用组件20+、素材图片900+、3D组件和自定义组件等;可接入API、Websocket、ElasticSearch、Excel、MySQL、PostgreSQL、Oracle、SQLServer、MongoDB等 10+ 种数据类型,并且支持大屏展现、组态控制、3D数字孪生和报表统计可视化编辑,满足了行业内大多数应用场景,简单拖拽和配置即可实现炫酷的页面效果。

b022daf1145895b75adf10d9aa04ee90.png

a8e9212b354bdf0f9b7f53b69dc6bcaa.png

aacef4d1899985fa8c79fdc953c63029.png

fdd01964d6be893c2c2eba42817d1713.png

商业授权

2679710d16455acb6fe2a4790ff1eceb.png

  • 可基于JetLinks源代码二次开发(二次开发指结合甲方/最终客户方个性化需求,为实现项目交付所进行的定制化修改/功能性扩展等开发方式)

  • 源代码授权公对公/一对一,仅允许被授权方以项目形式,进行二次开发做成解决方案并整体封装后交付,不得单独交付JetLinks源代码或发布成同类型物联网基础平台销售。

  • 被授权方不得替换乙方提供Java源代码中含JetLinks的相关标识:Java类中package代码包名、Maven中的groupId。

04

JetLinks 安装部署 & 演示

系统环境

  1. JDK 1.8.0_2xx
  2. Redis 5.x
  3. PostgreSQL 11 或者 mysql 5.7 +
  4. ElasticSearch 6.8-7.x
  • 克隆代码

$ git clone -b 2.0 https://gitee.com/jetlinks/jetlinks-community.git
  • 运行

  1. $ cd jetlinks-community
  2. $ java -jar ./jetlinks-standalone/target/jetlinks-standalone.jar

在线体验 : https://demo.jetlinks.cn

如有需求请联系小编 : beacon0418

往期推荐

129dcee6043b5a7a67f9f2269d68a797.png

☞ 高德地图: 红绿灯倒计时大揭秘

☞ 高速“车牌付”会取代 ETC 吗?

☞ 国内七大 IoT 物联网平台对比

☞ 我为什么放弃中移物联OneNET平台

☞ 这苦逼的IoT物联网我竟坚持了十年

☞ 打工人上班摸鱼, AI 监控老板行踪

cce001c519c4713104f44fbf19405b91.png

0fcfc362a45faa71137887ad742455ea.png

416fd4a6549e996f02f71745bd438413.gif

ef7703c4219ae30da868e63e7349c996.gif

9e87c38d549588595a26fb8f4a6b8897.gif

f63331fb48d4d6db294db97a3ae0b6c2.gif

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/1007312
推荐阅读
相关标签
  

闽ICP备14008679号