Skip to main content

Technical Architecture

System Architecture Diagram

Client LayerWeb Management Console / App / Mobile Client
HTTPS / WebSocket
Spring Cloud GatewayUnified Entry · JWT Authentication · Request Routing · Rate Limiting
User Serviceuser
Gateway Managementmgmt
Data Servicedata
Application Serviceapp
Extension Hookexhook
Common Servicecommon
Infrastructure LayerMySQL 8 · Redis · InfluxDB · Nacos · MQTT Broker
MQTT
Edge Gateway DevicesGo-HTTP

Technology Stack

CategoryTechnologyDescription
Base FrameworkJava 17 + Spring Boot 3.0.2Latest LTS version
Microservice GovernanceSpring Cloud Alibaba 2022Nacos service registry and configuration center
API GatewaySpring Cloud GatewayUnified entry, authentication, and routing
Service InvocationOpenFeignLoad-balanced calls between microservices
Business DatabaseMySQL 8.0Structured business-data storage
CacheRedisSession caching and hot-data acceleration
Time-Series DatabaseInfluxDBLarge-scale time-series data storage and queries
Message MiddlewareEMQXMQTT broker supporting tens of thousands of devices
Excel ProcessingEasyExcel 3.3 + Apache POI 4.1Batch import and export
RPC FrameworkgRPCRemote calls for the extension-hook module
SMS ServiceAlibaba Cloud SMSUser notifications and verification codes

Microservice Modules

ModuleNameResponsibilities
userUser ServiceUser authentication, roles and permissions, and project management
mgmtGateway ManagementGateway lifecycle, device management, Cloud SCADA, and remote operations and maintenance
dataData ServiceData ingestion, storage, queries, and data broadcasting
appApplication ServiceMobile-app APIs
exhookExtension HookgRPC remote hooks and third-party system integration
commonCommon ServiceShared utilities and foundational services
gatewayAPI GatewayUnified authentication, route distribution, rate limiting, and circuit breaking