
# 背景及原理（服务编排）
华为云Astro轻应用的服务编排，支持对逻辑判断组件、数据处理组件，以及脚本、子服务编排、商业对象等进行可视化组合编排，实现丰富的业务功能。
#### 了解服务编排
在传统的开发中程序员一般是基于代码进行开发，程序员需要学习内容较多，开发效率相对低一些，开发门槛也高。华为云Astro轻应用的服务编排功能，类似于编程中一段有流程、条件处理、判断逻辑的程序。这段程序有输入参数和输出参数、可以独立成为一个对外调用的方法。同时，在程序内部，也可以调用其他的方法。
华为云Astro轻应用中的服务编排是将原来基于代码编程改变为用图形化，拖拉拽的方式去编程。如[图1]所示，服务编排界面是图形化、模板化的，您甚至不需要任何编程经验，将左侧面板区的组件拖拽到右侧画布、做必要的配置，就可以完成服务编排的开发。
图1服务编排界面   
![](https://support.huaweicloud.com/bestpractice-astrozero/zh-cn_image_0000001483071965.png "点击放大")
服务编排界面中，可以编排如下组件：
- 基本组件：在服务编排引用脚本或者另一个服务编排，增/改/删/查记录，以及发送邮件、发送事件等。
- 逻辑组件：在服务编排中实现变量赋值Assignment、循环Loop、跳出循环Break、决策Decision和等待Wait。
- 商业对象：将封装好的BO能力作为服务编排中的一个节点。
- 连接器：将短信发送、支付等第3方连接器作为当前服务编排中的一个节点。
除了图形化编排，华为云Astro轻应用也支持服务编排的在线测试验证，以及问题跟踪调试，方便您及时发现并解决问题。
服务编排测试通过、发布后，既可以直接被前端页面调用，也可以作为restful接口被第三方系统调用，也可以包装成公共接口后被调用。本节中主要是将服务编排包装成一个公共接口后，供页面调用，"管理设备"功能中涉及的业务逻辑，以及服务编排与脚本关系如[表1]下所示，详细操作方式及说明请参见[创建业务逻辑](https://support.huaweicloud.com/bestpractice-astrozero/astrozero_07_1031.html)。
 表1"管理设备"功能需要创建的脚本、服务编排详情 
| 脚本名称                               | 主要作用              | 关联服务编排                    | 关联公共接口                   |
|:---|:---|:---|:---|
| ***HW__***queryEquipments          | 在输入查询条件后，查询设备     | ***HW__***queryEquipments | queryEquipments          |
| ***HW__***deleteEquipment          | 删除设备              | 不涉及                       | deleteEquipment          |
| ***HW__***equipmentSelectListQuery | 查询所有设备并以选项列表的形式返回 | 不涉及                       | equipmentSelectListQuery |
   
