今天跟大家分享一个开源物联网基础平台,JetLinks

e905925e5096d3084bf157b97f3f98ad.png

JetLinks,是一个基于Java8,Spring Boot 2.x ,WebFlux,Netty,Vert.x,Reactor的那个多种技术开发的企业级物联网平台。其功能丰富强大,不仅可以支持统一物模型管理,还可以对灵活接入不同厂家不同协议等设备,实现实时数据处理,设备告警,消息通知,数据转发。地理位置,数据可视化等众多功能,让用户快速建立一整套物联网相关业务系统。并且所有代码都开源,除了即插即用,对于有想法的小伙伴也可以进行个性化的二次开发。

JetLinks用的主要技术栈及架构示意如下:

  • Spring Boot 2.3.x

  • Spring WebFlux 响应式Web支持

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

  • Project Reactor 响应式编程框架

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

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

  • PostgreSQL 业务功能数据管理

  • hsweb framework 4 业务功能基础框架

107b7ca7af8d8aebd63b4f862974185b.png

对于如何接入设备有疑问的小伙伴,也可以通过下面这张流程图略知一二:

cdda3e1d3aad0f49ed14aca870fccac7.png

感兴趣的小伙伴可以通过多种不同的方式快速开始:

1、使用docker快速启动全部环境

$ cd docker/run-all
$ docker-compose up

2、使用docker启动开发环境,使用IDE中启动JetLinks服务.

# 启动环境
$ cd docker/dev-env
$ docker-compose up

在项目导入IDE后执行jetlinks-standalone模块下的org.jetlinks.community.standalone.JetLinksApplication完成JetLinks服务的启动,然后启动UI

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

3、非docker环境启动

先安装以下服务:postgresql 11,redis 5.x,elasticsearch 6.7.2

然后根据情况修改jetlinks-standalone模块下的配置文件: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 # 数据库默认的schema
  dialect: postgres #数据库方言
elasticsearch:
  client:
    host: 127.0.0.1   # elasticsearch
    port: 9200
hsweb:
  file:
    upload:
      static-file-path: ./static/upload   # 上传的文件存储路径
      static-location: http://127.0.0.1:8848/upload # 上传的文件访问根地址

然后跟前面一样,在项目导入IDE后执行jetlinks-standalone模块下的org.jetlinks.community.standalone.JetLinksApplication完成JetLinks服务的启动,然后启动UI。

启动成功后可以访问环境进行各种操作:地址: http://localhost:9000, 用户名:admin,密码:admin

对整个项目感到兴趣的小伙伴,快来获取项目地址吧~

点击下方卡片,关注公众号“TJ君

回复“jet2022”,获取仓库地址

关注我,每天了解一个牛x、好用、有趣的东东

更多推荐