华为云ASTRO轻应用-约束与限制:服务编排
服务编排
表7 服务编排约束与限制
限制项 |
约束与限制 |
服务编排命名 |
- 驼峰命名,首字母小写,不要携带下划线。
- 动宾结构,例如,notifyOrderCompletion,错误样例OrderCompletionNotification。
- 尽量不用缩写,除非是专有名词,例如,invokeCRM,错误样例paymentCbk。
- 应简单明了,表示业务意义,而不是内部实现。例如createPayment,错误样例InsertAndUpdatePayData。
- 长度不能超过64个字符,名称必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。
|
变量命名 |
- 输入变量和输出变量:命名遵循接口设计文档的要求。
- 内部变量:元素命名遵循驼峰命名原则。
- 变量为单数时,命名包含对象名称(如Level1Catalog、Level2Catalog),变量为复数时命名包含集合名称(如Level1CatalogList或者Level2CatalogArray)。
- 数组型变量的下标命名要符合规范,当使用I、J、K等字母来命名时,需要明确变量含义,勿重复使用。
|
图元命名 |
采用动词和名词短语的形式,每个单词首字母大写,单词之间有空格。名称一般不要超过五个单词,短语尽可能简明,描述该图元的主要作用,例如Valid Input、Call Device Service。 |
连接线命名 |
在服务编排的图元中,除了Decision连接线外,其他图元的连接线采用系统的固定命名。
Decision连接线名称使用英文,采用单词首字母大写,一般不要超过三个单词。采用动词和名词短语的形式,尽可能简明、准确的描述该条件的判断逻辑。 |
图元编排 |
为了服务编排画布排版美观以及方便后续的服务编排检视,服务编排的图元编排遵循以下原则:
- 在配置服务编排前,需明确具体步骤和子流程的分解,合理编排图元。
- 业务逻辑采用自上而下、从左往右的页面布局方式,业务逻辑展示清晰,同一任务多个步骤,横向排列,不同任务之间竖向排列。利用横向和竖向,做到层次缩进。
- Decision图元里的Default改为表示主流程,类似于If Error Else MainProcess这种结构,把异常处理优先标出。
- 在同一个版面中,图元之间的间隔大小相同。
- 尽量避免连接线相互交叉。
- 创建或查询较复杂的父子对象结构场景(如创建订单和相关对象),应将父对象和典型子对象的创建和查询编排到子流程中,供多个流程共享。
- 对于服务编排中常用到的业务功能(如获取Offer实例),可以考虑编排到子流程或用脚本实现,供多个流程共享。
- 编排每个服务编排时,首先都应该设置入参校验步骤,图元类型为“Decision”,分支优先考虑异常场景。服务编排流程中,其他的“Decision”图元也要首先考虑异常场景。
- 避免使用循环套循环。
- 不允许在子流程中结束,所有结束出口应在最外层服务编排中体现。子流程中,应始终返回出参。
|
参数定义 |
- 服务编排的入参和出参,需要根据设计文档做必填参数校验。
- 出入参数需要定义清楚每个字段。如果存在结构体,结构体中也应定义清楚每个字段。除了本身是预留的定制扩展的结构体之外,不允许有空结构的结构体。
- 服务编排中,暴露给用户由用户输入的参数,必须放到服务编排的“入参”中。服务编排中,不能存在用户能够使用但不在“入参”及“出参”的参数。
|
调用约束 |
|
support.huaweicloud.com/productdesc-astrozero/astrozero_03_0006.html