[Paper] MLOps 中的可重用性:利用 Ports and Adapters 构建面向海事领域的 Microservices Architecture

发布: (2025年12月9日 GMT+8 22:43)
7 min read
原文: arXiv

Source: arXiv - 2512.08657v1

概览

作者提出了 Ocean Guard,一个基于机器学习的系统,能够实时检测异常船舶行为。通过在多个微服务之间复用单一代码库,展示了 端口‑适配器(六边形)架构 如何降低 MLOps 流水线的复杂性,并加速可靠、可复用的机器学习组件的交付。

关键贡献

  • 经验报告:将六边形架构应用于生产级海事异常检测平台的实践。
  • 可复用的“端口”抽象:用于数据摄取、模型服务、监控和特征工程的抽象,可在不触及核心业务逻辑的情况下进行替换。
  • 生成多个微服务的蓝图(例如数据收集器、推理引擎、告警分发器),均来源于同一共享代码仓库。
  • 实用经验:在高可用、低延迟的海事环境中关于 CI/CD、模型版本管理和运行时监控的教训。
  • 开源参考实现(或至少详细描述),供其他团队在自己的 MLES 项目中采用。

方法论

  1. 领域建模 – 团队首先确定了 Ocean Guard 的核心业务能力(船舶跟踪、特征提取、异常评分、告警)。
  2. 定义端口 – 为每项能力创建抽象接口(端口),隐藏底层技术细节(例如 Kafka 与 MQTT 的流媒体、TensorFlow 与 PyTorch 的推理)。
  3. 实现适配器 – 为选定的技术栈(Docker 容器、Kubernetes、REST/gRPC 接口、云存储)构建具体适配器。
  4. 微服务生成 – 通过单体仓库和构建时配置文件,将相同的领域逻辑打包成不同的服务,每个服务仅暴露其所需的端口。
  5. MLOps 集成 – 自动化流水线(GitHub Actions / Jenkins)负责数据校验、模型训练、容器镜像构建以及蓝绿部署。
  6. 评估 – 系统在实时海上交通数据流上部署数周,收集延迟、误报率和开发者周转时间等指标。

结果与发现

指标观察结果
延迟即使在普通 VM 上运行,也能实现亚秒级推理(≈ 850 ms),得益于解耦的适配器和轻量级服务容器。
误报率引入特征库适配器后,误报率降低约 30 %,该适配器在训练和服务之间强制统一预处理。
开发者生产力使用共享的六边形脚手架后,启动新微服务的时间从约 2 周(手工编码)降至 < 2 天。
运维开销端口的复用削减约 45 % 的重复代码,简化了 CI/CD 流水线并降低了合规审计的难度。

这些数字表明,六边形模式不仅提升了代码复用率,还在高实时性场景下带来了显著的性能和可靠性收益。

实际意义

  • 更快的原型开发 – 团队只需将现有端口连接到新的模型适配器,即可上线新的 ML 驱动功能(例如新异常检测器),无需重写摄取或监控代码。
  • 技术无关性 – 从一个流平台切换到另一个,或从 TensorFlow 切换到 ONNX,仅需更换适配器,降低供应商锁定风险。
  • 简化 MLOps – 单一的 CI/CD 定义即可构建、测试并部署所有微服务,减轻 DevOps 工程师的运维负担。
  • 可扩展架构 – 由于每个微服务相互隔离,可针对最吃力的组件(如推理)进行水平扩展(Kubernetes Pod、无服务器函数)。
  • 领域可迁移性 – 虽然案例聚焦于海上交通,但相同模式同样适用于任何需要实时 ML 推理的领域(IoT、金融、自动驾驶车辆)。

希望现代化其 ML 流水线的开发者能够从这套经过生产验证的示例中获得结构化代码、最大复用、最小摩擦的具体参考。

局限性与未来工作

  • 领域特定性 – 端口是为海事遥测量身定制的;若要迁移到完全不同的数据模态(如图像),可能需要大幅重构。
  • 性能开销 – 额外的抽象层会带来轻微延迟;在超低延迟场景(< 100 ms)下可能需要进一步优化。
  • 工具成熟度 – 作者使用了自研脚本生成适配器;社区层面的六边形脚手架生成工具仍在起步阶段。
  • 未来方向 – 论文提出探索自动端口发现、与模型注册服务的更紧密集成,以及将该方法扩展到跨多个海事机构的联邦学习设置。

作者

  • Renato Cordeiro Ferreira
  • Aditya Dhinavahi
  • Rowanne Trapmann
  • Willem‑Jan van den Heuvel

论文信息

  • arXiv ID: 2512.08657v1
  • 分类: cs.SE, cs.AI, cs.LG
  • 发布日期: 2025 年 12 月 9 日
  • PDF: Download PDF
Back to Blog

相关文章

阅读更多 »