系统集成项目管理工程师 · 高频练习

订单跨多个微服务执行时,怎样区分服务编排和服务编舞?

中级 单选题 第 1012 题 中等 系统集成项目管理工程师第三版第4章信息系统架构服务编排服务编舞
题目

某订单流程依次调用库存、支付、积分和物流服务。架构师希望由一个流程协调器掌握执行顺序,并在支付失败时明确指挥库存回补。该方案属于()。

A 服务编排
B 服务编舞
C 数据分片
D 边缘缓存
题目类型:第三版章节练习题 用途:用于帮助理解系统集成项目管理工程师相关考点和答案解析,不等同于官方真题。
正确答案
A
答案解析

服务编排由中心协调器掌握业务流程,向参与服务发出命令并根据结果决定下一步或补偿动作。服务编舞没有中心流程控制者,各服务订阅事件、完成本地动作后再发布后续事件。

选项分析

A

正确。中心协调器负责步骤顺序和失败补偿,是服务编排的典型特征。

B

服务编舞依靠事件协作,没有一个组件掌握并指挥完整流程。

C

数据分片解决数据水平拆分和扩展问题,与跨服务流程协调无关。

D

边缘缓存用于降低访问时延,不负责事务步骤和补偿逻辑。

本题为什么容易错

“松耦合”不等于一定是编舞。编排中的参与服务也可以保持独立,只是流程控制集中在协调器;选择时应看控制逻辑放在哪里。

先看结论

简短答案

订单跨多个微服务执行时,怎样区分服务编排和服务编舞,正确答案是 A(服务编排)。服务编排由中心协调器掌握业务流程,向参与服务发出命令并根据结果决定下一步或补偿动作。服务编舞没有中心流程控制者,各服务订阅事件、完成本地动作后再发布后续事件。

解析

易混淆概念对比表

概念本题判断区别要点记忆提示
服务编排 本题正确答案 正确。中心协调器负责步骤顺序和失败补偿,是服务编排的典型特征。 看到题干核心场景时优先联想到它
服务编舞 本题干扰项 服务编舞依靠事件协作,没有一个组件掌握并指挥完整流程。 看到该词不要急着选,先判断是否真正解决题干问题
数据分片 本题干扰项 数据分片解决数据水平拆分和扩展问题,与跨服务流程协调无关。 看到该词不要急着选,先判断是否真正解决题干问题
边缘缓存 本题干扰项 边缘缓存用于降低访问时延,不负责事务步骤和补偿逻辑。 看到该词不要急着选,先判断是否真正解决题干问题
本题易混淆选项怎么区分
  • 服务编舞:服务编舞依靠事件协作,没有一个组件掌握并指挥完整流程。
  • 数据分片:数据分片解决数据水平拆分和扩展问题,与跨服务流程协调无关。
  • 边缘缓存:边缘缓存用于降低访问时延,不负责事务步骤和补偿逻辑。
复习

知识点详解

服务编排把流程状态和步骤决策集中在协调器,便于观察和管理复杂补偿,但协调器需要高可用设计。服务编舞强调事件驱动和参与者自治,扩展性较好,不过参与者增多后,依赖关系和端到端排障会更困难。

备考速记

有指挥叫编排,无指挥靠事件接力叫编舞。

服务编舞在服务编舞场景中的作用

服务编舞在本题中的核心价值,是解决“某订单流程依次调用库存、支付、积分和物流服务。架构师希望由一个流程协调器掌握执行顺序,并在支付失败时明确指挥库存回补。该方案属于()”这个场景问题。复习时不要只背选项名称,还要理解它为什么适用于该场景,以及它能解决哪类安全、流程或管理问题。

拓展

同类题怎么考

  • 根据中心协调器判断编排或编舞
  • 根据事件发布订阅判断协作方式
  • 比较复杂Saga流程中两种方案的优缺点
服务编舞在系统集成项目管理工程师软考中的考法

软考选择题通常不会只考概念定义,还会把服务编舞放到服务编舞场景中,要求判断它的作用、适用范围或与相近概念的区别。遇到这类题时,先抓住题干中的业务场景,再看哪个选项最能解决该场景下的核心问题。

解题思路

可以把它想成两种排练方式。编排有一位指挥,库存、支付、物流都听指令;编舞没有总指挥,每个服务听到自己的事件就完成动作,再把新事件交给下一位。本题明确出现流程协调器,所以选编排。

考点定位

看题干有没有“中心协调器”。有中心统一掌握顺序和补偿,通常是编排;各服务只响应事件、彼此不知道完整流程,通常是编舞。

易错提醒

  • 把容器编排与业务服务编排混为一谈
  • 看到消息队列就直接判断为编舞
  • 设计编排时忽略协调器的可用性和状态恢复

备考提示

  • 画箭头时,所有命令经过一个中心的是编排;服务间围绕事件接力的是编舞。
  • 复杂流程不仅看耦合,还要比较可观测性、故障定位和补偿管理难度。

你可能还想了解

  • 服务编排是否一定同步调用?
  • 服务编舞为什么没有中心协调器?
  • Saga编排和编舞怎么选?
  • 容器编排和业务流程编排一样吗?

本文小结

由中心协调器掌握库存、支付和物流的执行顺序并触发补偿,属于服务编排;无中心、靠事件接力才是服务编舞。