基于Java的JetLinks物联网平台源码剖析

版权申诉
5星 · 超过95%的资源 78 下载量 44 浏览量 更新于2024-12-11 5 收藏 28.29MB RAR 举报
资源摘要信息: "JetLinks开源物联网平台源代码" 知识点详细说明: 1. 开源物联网平台概述: JetLinks 是一个开源的物联网平台,这意味着它的源代码可以被任何人免费下载和修改。物联网(Internet of Things, IoT)是指通过互联网、传统电信网等信息载体,使得所有常规物品与网络连接起来,实现智能识别、定位、跟踪、监控和管理的一种新型技术和应用。 2. 技术栈分析: - Java8:JetLinks 使用 Java 作为开发语言,Java8 是该语言的一个版本,提供了新的时间日期API、Lambda表达式等特性。 - Spring Boot 2.x:Spring Boot 是基于Spring的一个框架,旨在简化新Spring应用的初始搭建以及开发过程。JetLinks使用该框架快速搭建企业级应用。 - WebFlux:WebFlux是Spring 5.0中引入的一个新的响应式Web框架,它基于Reactor,能够处理异步非阻塞的事件循环。 - Netty:Netty是一个异步事件驱动的网络应用框架,用于快速开发高性能、高可靠性的网络服务器和客户端程序。 - Vert.x:Vert.x是一个用于构建响应式应用程序的工具包,它支持多种语言并且可以在单个进程中运行,适用于微服务架构。 - Reactor:Reactor是Spring WebFlux的响应式库,它提供了一套反应式编程模型,用于处理数据流。 3. 功能与特点: - 开箱即用:JetLinks的设计理念是让用户能够快速部署平台,无需进行复杂的配置即可开始使用。 - 可二次开发:作为一个开源项目,JetLinks提供了开放的源代码,允许用户根据自己的需求进行定制和扩展。 - 企业级平台:JetLinks适用于构建企业级的物联网解决方案,提供了稳定性和可扩展性,以支持大规模部署。 4. 核心特性未完全描述问题: 由于“JetLinks开源物联网平台核心特”这一描述被截断,无法提供完整的特性列表。通常,一个物联网平台的核心特性可能包括但不限于设备管理、数据收集与处理、实时通信、安全机制、可视化展示、云服务支持等。 5. 标签与相关技术: - PHP:标签中提到的 PHP 与 JetLinks开源物联网平台无直接关系,PHP是一种广泛使用的开源服务器端脚本语言,而JetLinks是基于Java的平台。 - 电子商务源码:与JetLinks平台的描述不符,可能表明标签存在错误或误加。 - JetLinks:这是平台的名称,表明该平台正在被讨论。 6. 压缩包子文件的文件名称列表: 说明.htm、使用帮助.txt、谷普下载.url、说明.url、jetlinks-community - 这些文件名称暗示了与下载、安装和使用相关的文档。例如,“说明.htm”和“使用帮助.txt”可能包含安装说明、配置指南和用户手册等内容。而“谷普下载.url”和“说明.url”可能是指向下载页面的快捷方式。至于“jetlinks-community”,这可能指代了JetLinks社区或社区论坛,通常这类社区包含了源代码的讨论、问题解答和用户交流等。 以上知识点覆盖了JetLinks开源物联网平台的技术背景、功能特性以及相关文件信息。希望这些内容对了解和使用该平台有所帮助。
2021-06-13 上传
JetLinks开源物联网平台基于Java8、Spring Boot 2.x、WebFlux、Netty、Vert.x、Reactor等开发,是一个开箱即用,可二次开发的企业级物联网基础平台。平台实现了物联网相关的众多基础功能,能帮助你快速建立物联网相关业务系统。 JetLinks开源物联网平台核心特性: 支持统一物模型管理,多种设备,多种厂家,统一管理。 统一设备连接管理,多协议适配(TCP、MQTT、UDP、CoAP、HTTP等),屏蔽网络编程复杂性,灵活接入不同厂家不同协议的设备。 灵活的规则引擎,设备告警,消息通知,数据转发。可基于SQL进行复杂的数据处理逻辑。 地理位置:统一管理地理位置信息,支持区域搜索。 数据可视化:实现拖拽配置数据图表,设备组态等。 JetLinks开源物联网平台技术栈: Spring Boot 2.2.x Spring WebFlux 响应式Web支持 R2DBC 响应式关系型数据库驱动 Project Reactor 响应式编程框架 Netty、Vert.x 高性能网络编程框架 ElasticSearch 全文检索,日志,时序数据存储 PostgreSQL 业务功能数据管理 hsweb framework 4 业务功能基础框架     JetLinks开源物联网平台 更新日志: v1.9 1、增加设备独立物模型支持,可给单独的设备配置物模型. 2、基本实现GB28181国标视频设备接入,支持直播,云台控制,级联操作.(选配模块) 3、RabbitMQ增加routeKey配置,可在配置文件中指定device.message.writer.rabbitmq.consumer-route-key和device.message.writer.rabbitmq.producer-route-key.(Pro) 4、当设置了device.message.writer.rabbitmq.consumer=false时,不创建MQ消费者.(Pro) 5、设备支持独立物模型,可单独配置设备的物模型. 6、适配tdengine 2.0.16.0,优化sql长度策略. (pro) 7、优化规则引擎编辑器,实现组件模块化动态加载.(Pro) 8、修复启动服务时,如果某个产品物模型发布失败,导致后面的产品终止发布的问题. 9、增加ignoreLatest消息头,message.addHeader("ignoreLatest",true) 忽略记录最新数据到数据库. 10、修复租户下操作设备告警提示无权限.(Pro) 11、优化租户在解绑成员时,同时解绑成员的资产信息.(Pro) 12、优化子设备消息回复处理 13、物模型属性增加存储方式功能,可配置部分属性不存储. 14、增加虚拟属性功能,可通过规则来计算出虚拟属性值.(Pro) 15、增加租户成员绑定(TenantMemberBindEvent),解绑(TenantMemberUnBindEvent)事件.可通过spring-event订阅处理此事件.(Pro) 16、优化子设备状态检查,当检查子设备状态时,将会尝试发送ChildDeviceMessage<DeviceStateCheckMessage>给网关,处理后返回ChildDeviceMessageReply<DeviceStateCheckMessageReply>. 17、增加ClickHouse设备数据存储策略支持.(Pro) 18、增加权限过滤功能,可配置禁止赋予自己没有的权限给其他用户.hsweb.permission.filter相关配置 19、设备和产品的租户绑定逻辑优化: 绑定设备时,自动绑定产品.解绑产品时,自动解绑设备.(Pro) 20、用户管理增加租户权限控制.(Pro) 21、当向keepOnline的设备发送消息时,如果原始连接已断开,将返回CONNECTION_LOST错误. 22、设置keepOnline的会话将被持久化,重启服务后自动恢复.(Pro) 23、默认关闭设备最新数据存储,通过jetlinks.device.storage.enable-last-data-in-db=true开启.(Pro) 24、属性物模型增加属性值来源,配置为手动时,在发送修改属性指令(WritePropertyMessage)时,将直接生效,不会发送到设备. 25、优化租户资产解绑逻辑,当删除数据时,解绑资产全部的绑定关系.(Pro) 26、用户管理,机构管理增加租户端支持,租户可以自己管理自己的用户和机构.(Pro)