JetLinks学习笔记一


jetlinks简介

JetLinks 基于Java8,Spring Boot 2.x,WebFlux,Netty,Vert.x,Reactor等开发, 是一个开箱即用,可二次开发的企业级物联网基础平台。平台实现了物联网相关的众多基础功能, 能帮助你快速建立物联网相关业务系统。


一、jetlinks基础

1.核心特性

开放源代码
全部源代码开放,可自由二次开发.前后端分离,接口全开放.
统一设备接入,海量设备管理
TCP/UDP/MQTT/HTTP、TLS/DTLS、不同厂商、不同设备、不同报文、统一接入,统一管理.
强大的规则引擎
强大的可视化规则设计器.以及多种规则模型支持(设备告警,场景联动等)
在这里插入图片描述
可视化大屏
可视化大屏设计器,灵活配置大屏展示。
在这里插入图片描述
多租户
灵活的非侵入多租户数据权限控制。可实现不同租户,不同用户共享数据。

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

2.技术栈

1.Spring Boot 2.3.x(opens new window)
2.Spring WebFlux (opens new window)响应式Web支持
3.R2DBC (opens new window)响应式关系型数据库驱动
4.Project Reactor (opens new window)响应式编程框架
5.Netty (opens new window),Vert.x (opens new window)高性能网络编程框架
6.ElasticSearch (opens new window)全文检索,日志,时序数据存储
7.Redis (opens new window)Redis,设备配置,状态管理,缓存.
8.PostgreSQL (opens new window)业务功能数据管理
9.hsweb framework 4 (opens new window)业务功能基础框架

3.架构

在这里插入图片描述

4.设备接入流程

在这里插入图片描述

二、安装及启动步骤

1.前期准备

启动jetlinks之前,请先确定已经安装好以下环境:

1.JDK 1.8.0_2xx (需要小版本号大于200) 下载jdk
2.Redis 5.x
3.PostgreSQL 11 或者 mysql 5.7 +
4.ElasticSearch 6.8 + 下载 (opens new window),也可以直接使用内嵌ElasticSearch.

2.代码获取

该项目为前后端分离式的代码,链接放文末。

3.后端代码导入idea启动

1.dea请先安装lombok插件,同时idea还得有maven和ElasticSearch插件【这个插件很重要】
2.打开IDEA,点击file-open,选择项目目录,等待依赖下载完成.
3.点击file-Project Structure-Project,配置SDK为jdk1.8,Project language level为8.
4.打开jetlinks-standalone/src/main/java/org…/JetLinksApplication.java,启动main方法即可.
该修改的地方如下:

1.找到你的JetLinksApplication
2.去resources里面找到application.yml文件,在spring下面找到r2dbc,修改配置,例如
r2dbc:
    url: r2dbc:mysql://localhost:3306/jetlinks
    username: root
    password: root
[这里以MySQL数据库举例,具体看你的数据库,后面是用户名和密码,自己输入自己的就行]
【自己得在本机建一个空数据库,我们项目跑起来后会自动建表的,不用担心】
3.找到easyorm,开始修改
easyorm:
  default-schema: jetlinks # 数据库默认的schema
  dialect: mysql #数据库方言
4.将elasticsearch开启为true,因为我们下载了这个插件要用到
elasticsearch:
  embedded:
    enabled: true # 为true时使用内嵌的elasticsearch,不建议在生产环境中使用 
5.后台就改这三个地方,然后能正常运行。 

2.前端代码导入vscode启动

准备环境:
1.nodeJs v12.xx
2.npm v6.xx
3.我的npm版本是8.多,node.js版本14.多,node.js版本过高会报错,建议改成12.xx的版本
4.node.js降版本命令:
npm install npm@6.14.10 -g
此命令是Node.js 12.20.1
node.js官网
代码如下(示例):

1.要修改的代码
找到config下面的proxy.ts文件
修改dev下面的target
export default {
  dev: {
    '/jetlinks': {
      target: '你的本机ip:后端启动的端口/',

你的本机ip可以打开win+R   输入IPCONFIG
查看ipv4,那个东西就是你的本机ip,
端口号例如8848,8080什么的。

改完之后就可以开心启动前端了
后端前端都启动后
登录名:admin
密码:admin

总结

现在只是第一步启动项目,对jetlinks的余下学习我会再接再厉,加油!

相关链接

1.在线演示地址
【用户名:test 密码: test123456】
2.后端代码下载
提取码:wjds
3.前端代码下载
提取码:wjds
4.jetlinks官方文档

  • 9
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
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)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值