hs-web / hsweb-iot-cloud

本项目已迁移至 github.com/jetlinks
https://github.com/jetlinks
255 stars 130 forks source link
hsweb iot-platform java kafka mqtt spring-boot spring-cloud udp vertx

开源物联网管理平台

License

目的

提供一个开源的物联网管理平台,支持各种设备接入,并完成数据上报,分析,处理等自定义功能.

技术栈

  1. java8,maven3
  2. spring-boot: 整合各种组件
  3. spring-cloud: 对微服务提供支持
  4. hsweb-framework: 基础业务框架
  5. vertx: 物联网通信(mqtt,udp)
  6. redisson: redis客户端
  7. spring-cloud-stream: 事件驱动
  8. kafka: 消息中间件
  9. docker: 快速环境搭建,持续交付

在使用本项目之前,你应该对以上技术有所了解.

模块介绍

 ---------hsweb-iot-cloud
 -------------docker                    # 一些docker脚本
 ---------------dev-env                 # 启动开发环境需要的外部服务(redis,kafka,zookeeper等)
 -------------eureka-server             # 服务注册中心
 -------------gateway-server            # 基于zuul的网关服务
 -------------iot-components            # 通用组件
 ------------------iot-authorization    # 权限集成
 ------------------iot-cloud-stream     # spring-cloud-stream集成
 ------------------iot-logging          # 访问日志,系统日志集成
 ------------------iot-redis            # redis集成
 ------------------server-dependencies  # 微服务通用依赖
 -------------mqtt-emulator             # mqtt客户端模拟器
 -------------user-server               # 用户服务
 -------------interaction-server        # 物联网设备交互服务

约定: 所有微服务以-server为后缀,微服务禁止依赖其他微服务,只能依赖iot-components内的通用依赖. 微服务间使用FeignClient或者spring cloud stream 进行通信.

使用

本项目使用了redis,kafka,zookeeper.因此在启动项目之前需要先安装并启动相应服务.

以linux为例:

  1. 下载源码

    git clone https://github.com/hs-web/hsweb-iot-cloud.git
  2. 执行启动开发环境脚本,将会使用docker安装相应服务.(自行安装docker)

    ./start-dev-env.sh

未提供windows下的安装脚本,windows下请自行安装相关服务:redis,zookeeper,kafka.

  1. 依次启动服务

    eureka-server,gateway-server,user-server....
  2. 服务启动成功后,浏览器访问: http://localhost:8000 ,用户名:admin 密码: admin

  3. 数据库,项目默认使用h2数据库,可自行修改application.yml配置更改数据库,目前支持: h2,mysql,oracle数据库. 系统首次启动将会自动初始化数据库,无需导入数据库脚本.

遇到问题? 可以加入QQ群:515649185, 或者使用issues提问.

贡献

目前缺前端大佬一名, 要求:

  1. 有开源精神,愿意无偿并长期献身开源项目.
  2. hsweb感兴趣.
  3. 有能力使用主流前端框架重写现有功能页面.
  4. 加入QQ群:515649185(备注:hsweb-iot-cloud) @群主.

License

License