更新时间:2024-08-21 GMT+08:00
分享

创建空白AstroZero服务编排

服务编排是一种通过简单的拖拉拽式流程编排以及参数配置的方式,来进行服务开发的能力。本章节以创建一个根据传入的用户名,配置欢迎信息的简单业务场景为例,向您介绍如何从零开始创建一个服务编排。

创建服务编排

  1. 参考登录AstroZero新版应用设计器中操作,登录应用设计器。
  2. 在左侧导航栏中,选择“逻辑”。
  3. (可选)单击编排后的,为服务编排添加目录。

    服务编排默认存放在根目录下,在创建服务编排前,您可以先创建服务编排存放的目录,也可以在服务编排创建后将其拖拽到指定目录。

  4. 将鼠标放在已创建的服务编排目录上,单击,进入“添加服务编排”页面。

    如果未创建服务编排目录,请直接单击编排后的,进入添加服务编排页面。

  5. 设置参数,单击“添加”

    图1 创建服务编排
    表1 添加服务编排参数说明

    参数

    说明

    标签

    新建服务编排的标签名,用于在界面展示,创建后可修改。

    取值范围:1~64个字符。

    名称

    服务编排在系统中的唯一标识,创建后不支持修改。系统会自动在名称前添加“{命名空间}__”,当其他功能调用服务编排时,调用的是服务编排的名称,而不是标签。

    命名要求如下:

    • 长度不能超过64个字符,包括前缀命名空间的长度。
      说明:

      名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。

    • 名称必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。

    类型

    在下拉框中,选择服务编排的类型。
    • Autolaunched Flow:自启动Flow,在接口调用后会立即执行服务编排模型定义的逻辑。
    • Event Trigger:事件触发的服务编排,在事件触发时才会开始执行服务编排模型定义的逻辑。当选择该类型时,您需要配置具体的事件以及条件规则。

    默认值:Autolaunched Flow。

    描述

    请根据实际需求,输入服务编排的描述信息,建议设置为服务编排的功能介绍。

    取值范围:1~255个字符。

  6. 创建变量。

    1. 在服务编排设计器中,单击,进入全局上下文页面。
    2. 单击“变量”后的,创建表2中的变量。
      图2 创建变量
    表2 变量说明

    变量名

    类型

    变量说明

    userName

    文本

    传入的用户名

    message

    文本

    欢迎信息

    在全局上下文中,除了创建基本类型的变量,还可以创建常量创建公式变量创建私有结构体创建对象变量/结构体变量/事件变量

  7. 单击,配置服务编排的输入输出参数。

    图3 配置输入输出参数

  8. 将“逻辑”中的“赋值”图元,拖拽到画布中。

    赋值图元可以实现对全局上下文中变量等参数进行赋值,其他图元的详细介绍,请参见为AstroZero服务编排设置图元

    图4 拖拽赋值图元到画布

  9. 配置图元。

    1. 选择赋值图元,单击
    2. 在“赋值”页面中,单击“新增行”,参照下图将创建的变量拖拽到相应的位置。

      “"Hello,"”赋值给message变量,并将userName变量拼接到message变量中,赋值语句将从上往下依次执行。

      图5 配置赋值图元

  10. 连接图元指定逻辑关系,即从开始图元连向赋值图元,表示服务编排开始执行后,执行赋值图元的赋值语句。

    图6 连接图元

  11. 单击页面上方的,保存服务编排。
  12. 单击,进入服务编排调试页面。

    在输入参数中,输入如下内容,并单击“运行”

    {
        "userName": "Flow"
    }

    运行结果如下,输出“Hello,Flow”。

    图7 运行结果

  13. 单击页面上方的,启用服务编排。

    服务编排启用后,才可以在脚本、工作流等操作中引用。

  14. 调试已创建的服务编排。

    1. 在应用设计器左侧导航栏中,选择“集成”。
    2. 单击开放接口后的“+”,新建一个helloFlow开放接口,单击“保存”。
      图8 新建开放接口helloFlow
    3. 接口创建后,在开放接口中,将鼠标放在已创建的接口上,单击,选择“查看”
    4. 在预览页面,单击接口后的
    5. 单击“测试一下”,输入示例模型,单击“运行”
      图9 测试接口
      图10 查看API测试结果

创建常量

编排服务流程或交互时,不会改变的值或参数,通常定义为常量,例如服务标识、访问地址和错误码等。

  1. 在服务编排设计器右侧,选择
  2. 在全局上下文页面,单击“常量”后的
  3. 单击新增常量后的“...”,选择“设置”。
  4. 设置页面参数,单击“保存”。

    图11 配置常量
    表3 常量参数说明

    参数

    说明

    名称

    新建常量的名称,名称是变量在流程中引用的唯一标识。修改变量名不会改变图元中的引用,但是会导致流程不可用。

    数据类型

    常量的数据类型,直接在下拉框中选择即可,默认为“文本”类型。

    新建常量的取值,字符串常量输入需要用双引号括起来,例如“"abc"”

    描述

    根据实际需求,输入变量的描述信息。

    外部使用

    如果勾选该选项,表示该变量为外部使用变量,编译时不校验其是否被使用。

    默认为不勾选。

创建公式变量

在服务编排中,公式变量主要用于变量赋值、表达式计算、参数传递等。

  1. 在服务编排设计器右侧,选择
  2. 在全局上下文页面,单击“公式”后的
  3. 设置页面参数,单击“保存”。

    图12 配置公式变量
    表4 公式变量参数说明

    参数

    说明

    名称

    输入新建公式变量的名称。

    数据类型

    公式变量的数据类型,直接在下拉框中选择即可,默认为“文本”类型。

    描述

    根据实际需求,输入公式变量的描述信息。

    外部使用

    勾选该选项,表示该变量为外部使用变量,编译时不校验其是否被使用。

    默认为不勾选。

    表达式

    设置新增变量的表达式。如果表达式中需要运用公式,可根据需要双击“公式”区域中系统预置的公式,该公式会显示在右侧“表达式”区域中。当表达式中需要有变量参数时,可从变量区域中直接选择变量拖入到表达式中。

创建私有结构体

服务编排中如果涉及复杂的结构体参数,可以先创建全局或私有结构体,并用作参数类型。创建全局结构体和私有结构体后,再参考创建对象变量/结构体变量/事件变量中操作,创建全局结构体变量和私有结构体变量,作为服务编排的参数类型。

  1. 在服务编排设计器右侧,选择,在私有结构体页面单击“新增”。

    该“私有结构体”页面有两个“新增”按钮,单击上面的“新增”按钮,是通过设置页面参数新建私有结构体。单击下面的“新增”按钮,是通过输入JSON Schema类型的数据源码定义私有结构体。
    图13 添加私有结构体类型

  2. (如果上一步单击“私有结构体”页面上方的“新增”按钮,请执行该步骤)设置页面参数。

    • 在“基本信息”中,输入结构体名字、描述信息。
    • 在“结构体成员”中,设置自定义成员变量,包括设置成员变量的名称、数据类型、是否必填、是否是集合和描述信息等。单击“新增”,可增加成员变量,支持设置全局结构体或私有结构体成员变量。当私有结构体的成员变量包含结构体类型时,您需要提前定义成员结构体。例如,下图中成员变量“hobby”为私有结构体类型,需要提前创建“create”私有结构体。
    图14 配置私有结构体

  3. (如果上一步单击“私有结构体”页面下方的“新增”按钮,请执行该步骤)在“创建JSON Schema”页面中,定义结构体名称,在“JSON源码”中输入数据源码,单击,系统会进行校验,转换成服务编排中的结构体类型,单击“保存”。

    图15 创建JSON Schema

    数据源码示例如下:

    {
    	"name": "xiaoming",
    	"age": 18,
    	"father": {
    		"name": "daliu",
    		"gender":"male"
    	},
    		"brother": {
    		"name": "xiaolei",
    		"gender":"male"
    	}
    }

    创建成功后,页面显示如下。

    图16 创建成功

    该方式创建的结构体中,包含成员结构体时,成员结构体具体定义不会在界面显示,且其他结构体不可引用。

    JSON结构体支持嵌套,例如上述创建的“family”结构体,在“JSON Schema结构体”区域再次单击“新增”,新增“company”结构体,里面“ceo”嵌套引用“family”结构体,如下图所示,在定义结构体输入值时,您可以输入“$”符号,选择当前服务编排中的其它结构体进行嵌套引用。

    图17 引用其他结构体

创建对象变量/结构体变量/事件变量

对象变量用于在服务编排中引用或操作特定的对象实例,用于较简单的业务流程中。结构体变量允许将多个不同类型的数据项进行组合,通常用于较复杂的业务流程中。事件变量用于表示系统或业务流程中发生的事件,事件可以是系统内部产生的,也可以是外部触发的。

  1. 在服务编排设计器右侧,选择
  2. 在全局上下文页面,单击“对象变量”后的
  3. 设置页面参数,以创建对象变量为例进行介绍。

    图18 配置对象变量
    表5 对象变量参数说明

    参数

    说明

    名称

    输入新建对象变量的名称,名称是变量在流程中引用的唯一标识。修改变量名不会改变图元中的引用,但是会导致流程不可用。

    对象

    请直接在下拉框中,选择具体的对象。选择“对象”类型时,该参数才会显示。

    全局结构体

    请直接在下拉框中,选择具体的全局结构体。选择“全局结构体”类型时,该参数才会显示。

    私有结构体

    请直接在下拉框中,选择具体的私有结构体。选择“私有结构体”类型时,该参数才会显示。

    事件

    请直接在下拉框中,选择具体的事件。选择“事件”类型时,成员变量为事件的自定义字段,不包括系统预置的标准字段。选择“事件”类型时,该参数才会显示。

    默认值

    请直接输入变量的默认值或从下拉框中选择。

    描述

    请根据实际需求,输入变量的描述信息。

    取值范围:1~255个字符。

    是否为数组

    是否为数组变量,即集合变量。

    默认为不勾选。

    外部使用

    勾选该选项,表示该变量为外部使用变量,编译时不校验其是否被使用。

    默认为不勾选。

相关文档