ThingsBoard源码结构一

前言

ThingsBoard v3.3.4.1源码简要阅读,了解大致结构及核心功能实现逻辑

源码结构

源码使用了Maven划分模块,通过查看模块结构先进行大致的了解
ThingsBoard源码结构一_第1张图片

先看一下有哪些模块

application

应用模块,可通过指定参数,作为monolith(单应用)、tb-core(微服务)或tb-rule-engine(微服务)运行
ThingsBoard源码结构一_第2张图片

common

通用模块,包含了一些组件模块
ThingsBoard源码结构一_第3张图片

actor

actor模型实现,一种组件间通过消息进行通信,异步串行执行计算,以避免同步资源竞争的模式,此处不详述
ThingsBoard源码结构一_第4张图片

cache

缓存配置,基于Caffeine(高性能本地缓存)和Redis
ThingsBoard源码结构一_第5张图片

cluster-api

集群接口定义,基于Protocol BuffersGoogle推出的一种数据描述语言,用于定义与平台无关的数据结构)
ThingsBoard源码结构一_第6张图片

coap-server

CoAP服务器,一种基于UDP,应用于物联网的轻量级协议
ThingsBoard源码结构一_第7张图片

dao-api

数据库操作接口定义
ThingsBoard源码结构一_第8张图片

data

各种数据模型定义
ThingsBoard源码结构一_第9张图片

edge-api

边缘服务接口定义,基于gRPCGoogle推出的基于HTTP/2的远程调用框架)
ThingsBoard源码结构一_第10张图片

message

系统间通信消息的定义
ThingsBoard源码结构一_第11张图片

queue

各种消息队列,Azure Service BusKafkamemory(内存队列),Google Cloud Pub/SubRabbitMQAmazon SQS
ThingsBoard源码结构一_第12张图片

stats

数据统计相关定义
ThingsBoard源码结构一_第13张图片

transport

数据传输相关服务端实现
ThingsBoard源码结构一_第14张图片

coap

CoAP数据传输相关实现
ThingsBoard源码结构一_第15张图片

http

HTTP数据传输相关实现
ThingsBoard源码结构一_第16张图片

lwm2m

LwM2M数据传输相关实现
ThingsBoard源码结构一_第17张图片

mqtt

MQTT数据传输相关实现
ThingsBoard源码结构一_第18张图片

snmp

SNMP数据传输相关实现
ThingsBoard源码结构一_第19张图片

transport-api

数据传输接口相关
ThingsBoard源码结构一_第20张图片

util

工具相关
ThingsBoard源码结构一_第21张图片

dao

数据库操作相关
ThingsBoard源码结构一_第22张图片

docker

Docker相关文件,容器编排脚本,启动脚本、环境配置等

img

图片
在这里插入图片描述

msa

微服务Misroservices architecture)结构,基于Docker
ThingsBoard源码结构一_第23张图片

black-box-tests

黑盒测试
ThingsBoard源码结构一_第24张图片

js-executor

JavaScript执行器
ThingsBoard源码结构一_第25张图片

tb

ThingsBoard主应用
ThingsBoard源码结构一_第26张图片

tb-node

ThingsBoard节点
ThingsBoard源码结构一_第27张图片

transport

数据传输相关
ThingsBoard源码结构一_第28张图片

coap

CoAP协议
ThingsBoard源码结构一_第29张图片

http

HTTP协议
ThingsBoard源码结构一_第30张图片

lwm2m

LwM2M协议
ThingsBoard源码结构一_第31张图片

mqtt

MQTT协议
ThingsBoard源码结构一_第32张图片

snmp

SNMP协议
ThingsBoard源码结构一_第33张图片

web-ui

WEB界面
ThingsBoard源码结构一_第34张图片

netty-mqtt

基于Netty实现的MQTT客户端
ThingsBoard源码结构一_第35张图片

packaging

打包相关
ThingsBoard源码结构一_第36张图片

rest-client

RESTful客户端
ThingsBoard源码结构一_第37张图片

rule-engine

规则引擎相关
在这里插入图片描述

rule-engine-api

规则引擎相关接口
ThingsBoard源码结构一_第38张图片

rule-engine-components

规则引擎组件
ThingsBoard源码结构一_第39张图片

tool

工具相关
ThingsBoard源码结构一_第40张图片

transport

数据传输独立应用
ThingsBoard源码结构一_第41张图片

coap

CoAP协议服务
ThingsBoard源码结构一_第42张图片

http

HTTP协议服务
ThingsBoard源码结构一_第43张图片

lwm2m

LwM2M协议服务
ThingsBoard源码结构一_第44张图片

mqtt

MQTT协议服务
ThingsBoard源码结构一_第45张图片

snmp

SNMP协议服务
ThingsBoard源码结构一_第46张图片

ui-ngx

界面
ThingsBoard源码结构一_第47张图片

至此,我们大致了解了有哪些模块,接下来查看这些模块间的关系

你可能感兴趣的:(ThingsBoard学习,java,开源软件,物联网,学习)