某工业设备数据采集与监控平台
项目背景: 针对高端制造场景,构建高性能实时数据采集与存储系统,支撑每秒1500+ QPS的设备数据接入。
技术栈: Java 21、Spring Boot 3.x、Netty WebSocket、RocketMQ 5.x、DM8(达梦)、MyBatis-Plus、Redis
核心职责与成果:
1. 高性能数据接入架构设计
基于 Netty WebSocket 实现设备实时数据接入,承载 1500+ QPS 并发写入,数据毫秒级采集时效。
设计 8种设备类型独立线程池 隔离处理,避免单类型故障影响全局,预处理并发度按数据类型精细化控制。
2. 消息削峰与异步解耦
引入 RocketMQ 作为数据缓冲层,利用消息队列削峰填谷,保障下游DM8数据库在高写入压力下的稳定性。
通过 RocketMQ持久化机制 保证数据零丢失,确保工业数据可靠性。
3. 达梦数据库设计与性能优化
负责 DM8 数据表结构设计,对6张核心采集表采用 按月自动间隔分区,单表日增量达 3456万条,总日入库量约 2.5亿条。
建立 (equipment_id, collection_time) 复合本地索引,实现分区裁剪,将高频查询效率提升 数倍。
调优DM8核心参数(BUFFER、WORKER_THREADS、RLOG_PARALLEL_ENABLE等),写入性能提升 30%+。
4. 批量入库优化
采用 MyBatis-Plus 批量插入(JDBC batch)配合达梦批量参数优化(BATCH_PARAM_OPT=1),单批次吞吐量提升 5倍以上,单表写入QPS稳定在 200条/秒。
5. 数据备份与高可用保障
制定 全量+每日增量 备份策略,编写自动化Shell脚本并配置cron定时执行,确保 300TB级 数据可恢复。
配置归档日志,验证备份链完整性,保障生产数据安全。
项目成果:
支撑 每日2.5亿条、每年约920亿条 设备数据稳定入库。
系统上线后连续稳定运行,未发生数据丢失或服务宕机。
单表查询响应时间控制在 毫秒级,满足实时监控与数据分析需求。