PDM技术领域知识

本文重点说明系统如何支撑业务落地。本文只展开架构和关键技术实现,其他算法、聚合策略和局部实现不再细写,便于后续继续补充。

1. 系统定位

PDM 不是单一诊断服务,而是一套围绕“特征配置、模型训练、诊断展示、事件闭环、边缘计算协同”构建的微服务体系。

  • main_web 负责应用入口、统一启动和基础 Web 能力。
  • foundation 负责配置、消息队列、定时任务、JWT、Redis 和启动编排。
  • data_center 负责共享数据模型、DTO、Mapper 和基础查询接口。
  • model_manage 负责特征管理、模型管理、训练编排、授权和算法实现。
  • equip_manage 负责诊断展示、趋势查询、事件管理和设备视角呈现。

整体上,系统把业务配置计算执行分离:云端做编排、校验、授权、持久化和展示,边缘侧做实时计算和结果回调。

2. 基础架构

2.1 微服务与边云通信

系统同时支持两种调用方式:

  • 服务名调用,适合云端服务之间通信。
  • ip + port 直连,适合云端调度边缘节点。

这为“节点在线/离线切换”和“云边协同下发”提供了基础。

2.2 动态配置与启动编排

系统通过动态配置支持运行时切换:

  • 节点模式 / 组合模式切换。
  • 主服务地址变化。
  • 应用范围变化。

启动过程采用状态机式编排,不是简单初始化,这样更容易处理定时任务、外部配置和启动降级。

2.3 基础设施分工

  • Redis:计算锁、去重、运行中状态。
  • RabbitMQ:异步训练任务。
  • Quartz:周期任务和自动流程触发。

这套组合的核心价值是把“即时请求”和“耗时计算”分离开。

3. 关键技术实现

这一部分只描述本系统最关键的实现,不展开具体算法细节。对应的思想是:架构负责承载业务,关键技术负责保证系统可控、可扩展、可追溯

3.1 云边协同与调用边界

系统采用“云端编排,边缘执行”的协同方式。

  • 云端负责配置管理、授权控制、任务编排、结果汇总和历史追溯。
  • 边缘节点负责靠近数据源的特征计算、模型计算和结果回调。
  • 调用层同时支持服务名调用和直连调用,分别适配云内服务通信和节点调度场景。

这个设计的重点不是“把计算搬到哪里”,而是把业务控制面计算执行面分开,避免云端既管规则又管实时计算,从而让系统更容易扩展到多节点、多站点场景。

3.2 配置管理与启动编排

系统的配置不是静态常量,而是可动态刷新、可切换运行模式的治理对象。

  • 运行期配置支持刷新,便于主服务地址、应用范围和运行模式变更。
  • 启动过程采用状态编排而不是一段式初始化,适合处理定时任务、配置拉取、依赖就绪检查等启动动作。
  • 配置和启动都强调“可控性”,即先确认环境,再让业务能力逐步进入可用状态。

这里体现的是一种工程原则:系统先稳定启动,再稳定提供能力

3.3 任务编排与异步化

系统中凡是可能耗时的动作,基本都采用异步或分步编排的方式处理。

  • 训练任务通过消息队列异步下发。
  • 手动计算通过节点回调更新结果。
  • 定时任务通过统一调度器触发。

这样做的核心目的有两个:

  1. 避免前端接口被长时间占用。
  2. 避免训练、补算、同步等任务互相抢占资源。

从系统设计角度看,这比“在一个接口里把所有事情做完”更适合工业场景。

3.4 计算锁与结果一致性

系统在手动计算和补算场景下,引入了运行时锁和结果清理机制。

  • Redis 用于标记正在计算的对象,防止重复触发。
  • 计算前会先清理旧结果,避免新旧结果混杂。
  • 删除后会做状态确认,降低异步存储带来的脏读风险。

这一套机制的本质是:让重算可重复、让结果可验证、让并发可控制

3.5 授权与范围控制

系统不是默认对所有设备开放计算,而是基于授权范围进行控制。

  • 设备是否可以进入计算范围,需要先通过授权判断。
  • 授权数量有上限,超出时会直接拦截。
  • 节点配置和设备授权共同决定最终可执行范围。

这使系统具备了清晰的业务边界,避免边缘侧执行范围失控,也避免配置漂移导致资源滥用。

3.6 历史留痕与可追溯

系统对关键动作普遍保留历史:

  • 配置修改有历史。
  • 训练过程有历史。
  • 手动计算有历史。
  • 事件处理也有历史轨迹。

这并不是附加能力,而是预测性维护系统的基础要求。没有历史,就无法复盘模型效果,也无法解释为什么某次诊断结果发生变化。

4. 本文不展开的部分

为了保持这份笔记聚焦,以下内容只保留概念层,不再展开具体实现:

  • 特征提取和特征聚合的具体实现。
  • 各类模型算法的内部训练细节。
  • 趋势图的时间分组和统计聚合逻辑。
  • 事件标签、规则命中和诊断结果展示的细节页面逻辑。

这些内容可以在后续需要时,单独补成“算法说明”或“功能实现说明”。

5. 小结

这份技术笔记作为[00 PDM业务领域知识笔记](/00 PDM业务领域知识笔记/)的补充,重点说明的是系统的承载方式,而不是每一段代码怎么写。当前最重要的技术抓手是三件事:

  1. 云边协同的架构拆分。
  2. 配置、任务、授权、历史的治理机制。
  3. 让计算结果可追溯、可重算、可控制。

如果后续继续扩展,建议优先补充的也是这些方向的架构图、时序图和数据流说明,而不是进一步堆叠实现细节。


PDM技术领域知识
https://luischen.github.io/2026/06/24/manulism-work/20_Domain_Knowledge/24 预测性维护/01 PDM技术领域知识笔记/
作者
Luis Chen
发布于
2026年6月24日
许可协议