编排到底是什么?
Source: Dev.to
请提供您希望翻译的文章正文内容,我将把它完整地翻译成简体中文并保留原有的 Markdown 格式。谢谢!
Introduction
我在职业生涯起步时意外进入了 流程自动化和编排 领域,而某种程度上——仍然是意外——我至今仍在其中。正如 Taylor Swift 所说:“help, I’m still at the restaurant。”
在企业软件领域工作这么久,我见证了摆动的钟摆在以下两者之间来回切换:
- 购买完整套件平台 – “它拥有你所需的一切。”
- 避免供应商锁定 – “挑选适合的组件。”
AI 确实留下了印记,但并没有彻底改变局面。你会听到人们和公司争论:
- 一个 专用、为特定用例或角色量身打造的平台。
- 一个 中立平台,能够满足所有需求。
在流程自动化和编排领域,这种争论并无不同。
核心问题
我们仍然在想要改进的事物与实际改进方式之间,保持着所有权和责任的分离。
- “业务方”——被描绘为一群非技术的、绘制图表、优化流程的商务人士。
- “开发团队”——负责添加代码和系统集成,使图表真正运行,但并不拥有该流程。
我仍然记得职业生涯早期,有业务伙伴问我,“你能给我一个 Visio 图,然后把它转换成 BPMN 吗?” 这些标准过于技术化——本应作为字面语言来弥合业务与开发之间鸿沟的标准(BPMN),却成了障碍。真是有趣。
假设
科技领域的人普遍理解 process automation 以及它的好处,但只有科技内部的特定角色真正对 “orchestration.” 产生共鸣。
让我们探讨 orchestration 真正发光发热的场景,然后你可以告诉我你的定义。
指挥家的类比
“你有一堆不同的乐器各自演奏,但在指挥的帮助下,它们一起演绎出一段美妙、连贯的音乐。指挥会给出何时加速、减速,或以更强或更弱的力度演奏的提示。”
这个类比并不总是能完美映射到技术领域,但它是一个有用的思维模型。
互联网的说法
| Source | Definition |
|---|---|
| Red Hat | “编排是对多个 IT 自动化任务或流程的协调执行。它通常跨多个计算机系统、应用程序和服务,以确保部署、配置管理以及其他流程按正确的顺序执行。” |
| Databricks | “编排是对多个计算机系统、应用程序和/或服务的协调与管理,将多个任务串联起来以执行更大的工作流或流程。更具体地说,编排是跨多个计算机系统、应用程序和服务的多个 IT 自动化任务或流程的协调执行。这些流程可以由多个自动化任务组成,并可能涉及多个系统。” |
| Orkes | “编排是协调分布式软件组件和系统的过程,使它们作为自动化、可重复的流程无缝执行。” |
这些定义与 DevOps 的定义非常相似:多个系统、协调、自动化和可重复性。
何时使用编排
要点: 只要你想做一些复杂的事情——将一系列任务串联起来,或协调多个系统、应用程序或服务(临时、计划或事件驱动),你很可能需要一种清晰、可复用的编排方法。
自动化 vs. 编排
| 方面 | 自动化 | 编排 |
|---|---|---|
| 范围 | 单一任务,通常有人为介入 | 复杂的多步骤工作流 |
| 人工参与 | 通常没有(或极少) | 可能涉及人工(人‑在‑回路中) |
| 复杂度 | 低至中等 | 高,通常跨越多个系统 |
Source: …
实际示例:两步审批流程
- 场景 – 您的数据分散在多个不同的系统中,需要做出决策。
- 目标 – 协调这些系统使用数据来做出明智的决定,而无需将所有数据合并到一个大型数据库中。
工作原理
| 步骤 | 操作 | 涉及的系统 |
|---|---|---|
| 1 | 员工提交采购请求(例如,$150)。 | 前端表单 → Request Service DB |
| 2 | 系统根据 signature authority 与 org chart 进行检查。 | Authorization Service, HR DB |
| 3 | 若在员工的限额内,自动批准。 | Notification Service |
| 4 | 若超出限额,转交给经理审批。 | 经理的收件箱,Approval Workflow Engine |
| 5 | 若经理的限额仍被超出,升级到更高层级。 | 同上,升级处理 |
| 6 | 一旦批准,触发采购流程。 | Procurement System, ERP |
所有必需的数据(组织结构图、权限限额、商品价格)都存放在 不同的数据库 或甚至 不同的系统 中。编排(Orchestration)将它们连接起来,形成一个无缝且可重复的工作流。
新兴领域:AI 编排
Agent orchestration、multi‑agent systems (MAS) 和 AI pipelines 都属于 AI 编排 的范畴。
- MAS 为当今 AI 代理协同工作提供了基础。
- 代理需要数据,然后对数据进行处理、做出决策,并将结果交付给其他代理或下游系统。
这正是 编排与 AI 的结合 所实现的,使得异构组件之间能够进行协调的自主工作。
要点
- 编排 = 在多个系统之间协调、可重复执行多个自动化任务。
- 它弥合了 业务意图 与 技术实现 之间的差距。
- 它可以涉及人工(human‑in‑the‑loop)或完全自主。
- 真实案例(例如,两步审批)展示了其价值。
现在,你对编排的定义是什么?欢迎分享!
编排:快速概览
“与其他代理一起操作,产生复杂的结果。”
我在这里故意有点概念模糊,因为我还没有具体的真实案例——只有大量关于专用代理协同工作以实现共同目标的营销博客。
为什么组织转向编排
-
自研解决方案遇到瓶颈
- 团队将自定义脚本和工具拼接在一起。
- 最终会遇到维护或扩展问题。
-
超越 CRON 与计划任务
- 需要实时、事件驱动的处理(监听器、Webhook)。
-
混合执行模型
- 组织需要将计划任务、事件驱动任务和手动任务相结合。
- 责任覆盖技术和非技术角色。
- 通常在此时,他们会开始调查能够处理这种复杂性的平台。
需要考虑的问题
- 你对编排的定义是什么?
- 你们在组织内部进行编排吗?
- 你是如何评估可选方案的?