ThingsBoard开源物联网平台简介


总体架构

ThingsBoard 是一个开源的 IoT 平台,用于设备管理、数据收集、处理和可视化。它采用了微服务架构,可以水平扩展以支持大量设备。

微信截图 20241114112714

核心组件

  • 应用层:处理业务逻辑和用户界面交互。
  • 数据层:定义与不同数据库交互的中间数据结构。
  • 消息层:封装消息类型和传输层接口,供客户端使用。
  • DAO 层:提供对不同数据库的统一访问接口,支持动态切换数据库实现。

集群与并发

  • Actor 模型:使用 Akka 实现高效的并发处理。
  • Zookeeper:用于集群节点之间的服务发现和协调。
  • 支持协议:MQTT、CoAP、HTTP,以适应不同设备的需求。

数据存储

  • PostgreSQL:用于存储配置和元数据。
  • Cassandra:提供高可用性和可扩展性的时间序列数据存储。

模块概览

  • application:应用相关业务逻辑。
  • common:包含数据模型、消息类型和传输接口。
  • dao:数据访问对象层,抽象不同数据库操作。
  • tools:包含扩展模块,如 Kafka、MQTT、RabbitMQ 和 REST API 调用。
  • extensions-api:定义动作、过滤器、插件、处理器等基础对象。
  • extensions-core:实现通用的动作、过滤器、插件和处理器。

传输层

  • HTTP:提供 RESTful API 服务。
  • CoAP:基于 Californium 实现 CoAP 协议支持。
  • MQTT:基于 Netty 开发,支持设备间消息传递。

强大的规则引擎

规则引擎基于 Actor 模型执行,包含过滤器、处理器和动作,允许灵活地处理设备数据。

前端 UI

使用 Node.js 开发,需要安装 Yarn 进行依赖管理。

核心概念

  • 租户(Tenant):独立的业务实体,可以是个人或组织,拥有或生产设备。
  • 部件库:管理和共享设备部件。
  • 客户管理:管理租户与客户的关系,每个客户可以有对应的资产和设备。
  • 实体视图(Entity View):类似于数据库视图,限制设备或资产遥测和属性对客户可见的程度。
  • 仪表板库:允许用户定制和共享仪表板。

项目地址与演示环境


 

基于ThingsBoard二次开发的物联网平台推荐:ThingsKit物联网平台,开箱即用的物联网低代码平台,提供N+1+N的产品服务体系,帮助企业快速搭建稳定可靠的物联网系统平台,为企业节省大量时间及人力成本。www.thingskit.com

相关推荐: ThingsBoard物联网平台之MQTT设备协议简介

ThingsBoard简介:  ThingsBoard是一个开源的物联网平台,用于数据收集、处理、可视化和设备管理。它支持使用MQTT、CoAP和HTTP等标准物联网协议进行设备连接,并适用于云和本地部署。ThingsBoard提供可扩展、容错且高性能的服务,…

 

智联引擎
依托AIoT2.0技术,实现感知、认知、决策和执行的一体化融合,打造云边协同的分布式智联引擎,驱动行业数智化革新。