分类

安卓应用安卓游戏

编程软件 源码相关

JetLinks(开源物联网平台)

JetLinks(开源物联网平台) v1.8.0官方版 附教程

大小:28.9 MB

语言:简体中文系统:WinXP, Win2003, Vista, Win7, Win8, Win10

类别:源码相关时间:2021-01-25 13:02

JetLinks是一款开源的物联网基础平台,集成了常见的网络协议,可以实现统一管理、统一监控、在线调试和更新等功能,将自定义的小溪解析为平台统一的消息格式,可统一管理设备模型和数据,能够有效的降低物联网企业研发、运营和运维成本,提高物联网落地能力。

软件功能

1、统一设备管理

统一设备模型,设备数据管理。

统一的设备操作API,屏蔽各个厂家不同协议不同设备的差异。

支持跨服务,同步(RRpc),异步的设备消息收发。

2、多协议适配 , 不同设备使用不同协议接入

集成了各种常见的网络协议(MQTT,HTTP,TCP,UDP,CoAP)等,并对其进行封装, 实现统一管理,监控,在线调试,在线启动,停止,更新等功能.降低网络编程的复杂度.

多消息协议支持,可在线配置消息解析规则,将自定义的消息解析为平台统一的消息格式.

3、可视化配置仪表盘

动态配置图表,折线图,饼状图,地图等。生成大屏界面。

4、可视化规则引擎

可视化拖拽规则引擎设计器,灵活可拓展的多种规则节点支持。

可通过规则引擎在线动态配置数据,业务处理逻辑。

软件特色

100% 开源

无论开源版、专业版还是企业版所有源代码都开放给客户。

响应式底层全响应式支持,更高的系统性能。支持灵活的数据处理,可以写SQL来处理实时数据,数据开发更简单。

扩展性

多协议适配,支持多种通信协议(TCP,MQTT,UDP,CoAP)等,支持自定义消息协议,灵活接入不同厂商不同设备。

物模型

统一的物模型管理,不同设备,统一定义,统一管理。

软件特性

1、开放源代码

全部源代码开放,可自由二次开发.前后端分离,接口全开放.

2、统一设备接入,海量设备管理

TCP/UDP/MQTT/HTTP、TLS/DLS、不同厂商、不同设备、不同报文、统一接入,统一管理.

3、强大的规则引擎

强大的可视化规则设计器.以及多种规则模型支持(设备告警,场景联动等).

4、可视化大屏

可视化大屏设计器,灵活配置大屏展示。

5、多租户

灵活的非侵入多租户数据权限控制。可实现不同租户,不同用户共享数据。

支持的技术栈:

Spring Boot 2.2.x

Spring WebFlux 响应式Web支持

R2DBC 响应式关系型数据库驱动

Project Reactor 响应式编程框架

Netty、Vert.x 高性能网络编程框架

ElasticSearch 全文检索,日志,时序数据存储

PostgreSQL 业务功能数据管理

hsweb framework 4 业务功能基础框架

JetLinks安装配置教程

使用源码启动JetLinks

#系统环境

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

JDK 1.8.0_2xx (需要小版本号大于200) 下载jdk(opens new window)Redis 5.x

PostgreSQL 11 或者 mysql 5.7 +

ElasticSearch 6.8 + 下载 (opens new window),也可以直接使用内嵌ElasticSearch.

注意

如果你是linux或者macOS系统,或者是windows10. 推荐使用docker安装所需环境

#下载源代码

建议使用git clone下载源代码,注意代码分支,master为最新的开发分支.其他分支为对应的版本.

$ git clone https://github.com/jetlinks/jetlinks-community.git

$ cd jetlinks-community

#配置文件

配置文件地址:jetlinks-standalone/src/main/resources/application.yml

常见配置说明

spring:

redis:

host: 127.0.0.1 # redis配置

port: 6379

r2dbc:

url: r2dbc:postgresql://127.0.0.1:5432/jetlinks # 数据库postgresql数据库配置

username: postgres # 数据库用户名

password: jetlinks # 数据库密码

easyorm:

default-schema: public # 数据库名

dialect: postgres # 数据库方言

elasticsearch:

embedded:

enabled: false # 为true时使用内嵌的elasticsearch

data-path: ./data/elasticsearch

port: 9200

host: 0.0.0.0

client:

host: 127.0.0.1 # elasticsearch

port: 9200

hsweb:

file:

upload:

static-file-path: ./static/upload # 上传的文件存储路径

static-location: http://127.0.0.1:${server.port}/upload # 上传文件后,使用此地址作为根路径访问上传后的文件.

说明

除了修改配置文件意外,还可以通过修改环境变量或者启动参数来修改配置,比如:

java -jar ./jetlinks-standalone/target/jetlinks-standalone.jar --spring.elasticsearch.embedded.enabled=true

#使用命令行启动

如果相关环境的ip不是本地,或者端口不是默认端口.请先修改配置文件.

linux或者macOS环境下打包:

$ ./mvnw clean package -Dmaven.test.skip=true

windows 环境下打包

$ mvnw.cmd clean package -Dmaven.test.skip=true

启动

$ java -jar ./jetlinks-standalone/target/jetlinks-standalone.jar

#导入IDEA启动

Idea请先安装lombok插件.

打开IDEA,点击file-open,选择项目目录,等待依赖下载完成.

点击file-Project Structure-Project,配置SDK为jdk1.8,Project language level为8.

打开jetlinks-standalone/src/main/java/org...../JetLinksApplication.java,启动main方法即可.

注意

如果依赖无法下载,请确定maven配置正确,请勿在settings.xml中配置全局仓库私服.

#使用内嵌ElasticSearch

在硬件条件较差时,可以使用内嵌的ElasticSearch,不用单独安装。

修改配置文件即可

elasticsearch:

embedded:

enabled: true # 为true时使用内嵌的elasticsearch

#启动前端

JetLinks 是前后端分离的.启动完后端服务后,还需要启动前端.

提示

如果本地不需要修改前端代码,并且本地有docker环境,建议使用docker启动前端.

docker run -it --rm -p 9000:80 -e "API_BASE_PATH=http://host.docker.internal:8844/" registry.cn-shenzhen.aliyuncs.com/jetlinks/jetlinks-ui-antd:1.5.0

http://host.docker.internal:8844/ 为后台服务的地址,请根据情况修改.

准备环境:

nodeJs v12.xx

npm v6.xx

下载前端代码:

$ git clone https://github.com/jetlinks/jetlinks-ui-antd.git

$ cd jetlinks-ui-antd

修改后台接口地址: 后台接口配置文件地址:config/proxy.ts:

/**

* 在生产环境 代理是无法生效的,所以这里没有生产环境的配置

*/

export default {

dev: {

'/jetlinks': {

target: '后台地址',

changeOrigin: true,

pathRewrite: { '^/jetlinks': '' },

},

},

test: {

'/jetlinks': {

target: '后台地址',

changeOrigin: true,

pathRewrite: { '^/jetlinks': '' },

},

},

pre: {

'/jetlinks': {

target: '后台地址',

changeOrigin: true,

pathRewrite: { '^/jetlinks': '' },

},

},

};

启动:

$ cd jetlinks-ui-antd

$ npm install

$ npm start

启动成功后,访问: http://localhost:8000 即可.

更新日志

1、固件相关消息增加size属性

2、网络组件在集群下可以单独指定节点的配置了(Pro)

3、修复邮件通知无法发送base64图片问题

4、优化设备详情配置查看,通过device.setConfig设置的配置也可以在设备详情中查看到.

5、增加OneNet和CTWing接入,可将设备同步到对应到平台中.以及从对应平台订阅数据(Pro可选模块)

6、设备实例接口增加批量发送设备指令/device/instance/messages,可在消息体中指定deviceId或者通过where条件指定要发送到的设备.(Pro)

7、优化设备最新消息存储,同一个产品的数据使用串行更新,防止死锁,并且丢弃来不及更新的数据.(Pro)

8、修复es索引中存在多个mapping时无法解析的问题

9、修复分组聚合查询属性时,如果返回过多分组时可能导致无法返回结果的问题.

10、支持将object和array类型的属性使用json字符串来进行存储,减少es的压力.

11、修复无法转发设备消息到rabbitMQ和kafka.

12、增加默认物模型,在协议包里可配置默认物模型,创建产品时,自动添加到物模型配置中.

13、发送功能调用指令时,增加参数校验和参数类型转换.(可通过headers.force跳过校验)

14、优化设备分类数据初始化,默认使用-进行id分隔(使用|可能导致400错误.)

15、通过jvm参数-Djetlinks.eventbus.payload.pool.enabled=true开启事件总线对象池,提升性能.

∨ 展开

同类推荐

相关下载

热门游戏

下载排行

热门关键字

  • 编程软件
  • 编程控件
  • 编译调试
  • 开发环境
  • 网页制作
  • 安装制作
  • 数据库类
  • Java相关
  • 加壳脱壳
  • 控件下载
  • 源码相关
  • 编程其他