接手烂尾的 Spring Cloud 微服务项目:从零搭建 26 模块编译环境
数据归集 6 月探查实录:三天三件事,把树形接口、数据脏坑、跨源机制全部扒一遍
三天里把数据归集系统的 6 个 tree 接口、148 个孤儿设备、5 个数据地雷全部扒了一遍,附完整证据链和修复指南
Consul 配置踩坑:数据源切换的陷阱与排查
数字孪生模块从 local profile 切换到 Consul 配置后,视频巡查接口全部报 500:Table 'gdsw.bs_sw_cy_dh_video_inspection' doesn't exist。本地库有这张表,MCP 工具能查到,但服务连不上。本文记录了这个坑的根因、排查思路和解决方案。
🎧 文章导读
🎵 背景音乐
跨数据源查询:VD 设备列表的改造实践
前端视频巡查任务配置页需要展示”有视频设备的测站列表 + 每个测站下的设备”。但设备表在主库,测站表在 slave 库,无法一条 SQL JOIN。本文记录了使用 @DS 注解 + Java 内存组装的跨数据源查询方案。
🎧 文章导读
🎵 背景音乐
视频流代理:从 Java 到 Nginx 的性能优化实践
数据归集系统的视频流代理(FLV/HLS)由 Java Controller 实现,每路视频流占用一个 Tomcat 线程做 8KB 缓冲区转发。并发路数多时会耗尽线程池。本文记录了将 FLV 代理迁移到 Nginx 的完整方案,以及 HLS 仍需走 Java 代理的技术原因。
🎧 文章导读
🎵 背景音乐
JdbcTemplate vs MyBatis-Plus:复杂查询场景的选择指南
在数据归集系统的 TreeSelectorServiceImpl 中,大部分查询使用 MyBatis-Plus,但有 6 处使用了原生 JdbcTemplate。本文分析这 6 种场景,总结何时应该”退回”原生 SQL,以及如何在两者之间做出合理选择。
🎧 文章导读
🎵 背景音乐
树结构选择器:从 Redis 到直连数据库的架构重构
数据归集系统的树结构选择器是前端高频调用的核心接口。原本从 Redis 读取 GZIP 压缩的全量 JSON 数据,每次请求都要解压 7MB 数据再内存过滤。本文记录了将其改造为直连数据库的完整过程,包括多数据源配置、第三方 API 对接、以及踩坑经验。
🎧 文章导读
🎵 背景音乐
复用为王:四个 Excel 导出端点的快速搭建
为广东水文项目的一站一档与地下水模块新增 4 个 Excel 导出端点,覆盖墒情、咸情、地下水统计与地下水监测四种数据。整个过程没引入任何新依赖,完全复用项目已有的 @Excel 注解 + ExcelUtil.exportExcelToBytes() 模式 —— 写得越像现有代码,维护成本就越低。
🎧 文章导读
🎵 背景音乐
Java 后端实战:视频接口在线离线统计功能设计与实现
在视频监控模块中,前端列表页需要展示在线/离线摄像头的全局总数。本文记录了在现有 /api/video/list 接口中添加 onlineCount 和 offlineCount 字段的完整设计与实现过程,包括方案对比、核心代码实现以及开发中遇到的两个典型问题。