Azure 逻辑应用的工作原理

已完成

现在我们已了解 Azure 逻辑应用的基础知识,接下来让我们来看看这项服务在后台的工作原理。 此信息可帮助确定 Azure 逻辑应用是否在无需任何自定义的情况下适用。 这样,在确实需要创建自定义组件的情况下,就可以确定其难度。

什么是连接器?

连接器是一种组件,它以操作的形式为服务或系统提供接口。 例如,必应搜索连接器可以检索新文章,而 Office 365 Outlook 连接器可以管理电子邮件、日历和联系人。 Azure 逻辑应用提供 1,000 多个可用于创建工作流的预生成连接器。

连接器使用服务的 REST 或 SOAP API 来完成实际工作。 在逻辑应用工作流中使用连接器时,连接器会调用服务的基础 API。 因此,连接器基本上就是 API 的一个包装器。

下图显示了必应搜索连接器与必应搜索 REST API 之间的关系

图中显示了必应搜索 API 中的必应搜索连接器调用方法。

提示

如果已安装 Microsoft Copilot,可以询问 Copilot 这些问题:

  • Azure 逻辑应用中常用的连接器是什么?
  • Azure 逻辑应用中有多少个连接器?

自定义连接器

可以编写自定义连接器来访问没有预生成连接器的服务。 这些服务必须具有 REST 或 SOAP API,这并不奇怪,因为连接器只是 API 的一个包装器。

若要创建自定义连接器,首先要生成 API 的 OpenAPI 说明。 然后使用该 API 说明在 Azure 门户中创建自定义连接器资源。 可以为连接器指定每个操作的名称、图标和说明。 下图显示了该过程的示例,但请注意,没有涉及编码:

此图显示了为具有 REST API 的服务创建自定义连接器的步骤。

可以在自己的逻辑应用工作流中使用自定义连接器,并与组织中的其他人共享。 可以将连接器提交到 Microsoft 进行认证。 连接器通过认证后,它会出现在所有用户可用的连接器库中。

什么是触发器和操作?

工作流基于不同类型的任务生成。 例如,在我们的行业资讯监视方案中,当发布新文章时,工作流便会启动。 然后,工作流分析情绪并根据情绪分数并做出决策。 Azure 逻辑应用对这些概念使用术语“触发器”、“操作”和“控制操作”。 这些操作是 Azure 逻辑应用中工作流的构建基块。 下图显示了如何在资讯监视应用中使用每种类型的操作:

图中显示了行业资讯监视过程的流程图。每个步骤都被标记为触发器、操作或控制操作。

让我们更具体地了解触发器和操作的定义:

  • 触发器是在满足特定条件时发生的事件。 满足条件时,触发器会自动激活或触发。 例如,当计时器过期时或数据变为可用时。

  • 操作是在工作流中执行特定任务的操作。 在触发器激活或其他操作完成后,操作会运行。

连接器是一个组,其中包含所有相关触发器和操作,通常与单个服务、系统或其他分组相关。 请看以下几个示例。

必应搜索连接器可让逻辑应用工作流与必应搜索服务进行交互。 行业资讯监视应用可以使用必应搜索连接器的触发器来确定有相关新文章的时间。 下图显示了必应搜索连接器及其触发器和操作

图中显示了必应搜索连接器,以及用于检查新文章和可列出文章的触发器。

接下来我们来了解一下 Dropbox 连接器。 假设你正在与一个小型团队合作完成项目,将共享数据存储在 Dropbox 中。 可以生成一个工作流,用于检测有人修改任何文件的时间,并向其他团队成员发送通知。 下图显示了 Dropbox 连接器及其触发器和操作:

此图显示 Dropbox 连接器,其中包含在创建或修改文件时发出通知的触发器以及用于管理文件的操作。

最后,我们看一下 Twilio 连接器。 大多数连接器同时提供触发器和操作,但此连接器只提供操作。 使用 Twilio 连接器可以发送短信消息通知。 例如,可以在 Dropbox 场景中使用 Twiliio 连接器,在共享文件发生更改时向团队成员发送消息。 下图显示了 Twilio 连接器及其操作:

此图显示 Twilio 连接器,其中包含用于发送和检索文本消息的操作,但不包含触发器。

如何基于触发器和操作生成工作流

若要生成工作流,请选择操作,特别是触发器和操作。 工作流必须以触发器开头。 然后,可以根据触发器执行实现工作流所需的任意数量的操作。 下图显示了行业资讯监视应用中使用的触发器和操作:

图中显示了行业资讯监视应用中的触发器和操作。每个操作都显示关联的外部服务。

触发器和操作如何协作?

触发器和操作实质上是对基础 API 操作的调用。 每个操作都具有输入和输出。 例如,名为“有新资讯文章时”的必应搜索触发器接收搜索字符串,并返回包含该字符串的文章。 名为“情绪”操作的认知服务操作采用字符串作为输入并返回浮点数形式的情绪分数。 下图显示了这两个操作:

图中显示了名为“发布新文章时”的触发器和名为“情绪”的操作的输入和输出。

Azure 逻辑应用会自动将返回值提供给工作流中的所有后续操作。 使用此功能,可将结果从一个操作作为输入传递到下一个操作。 下图显示了行业资讯监视应用中前两个操作的数据流:

此图显示了所有先前操作的结果如何用于工作流的所有后续步骤。

什么是控制操作?

大多数工作流需要根据处理的数据运行不同的操作。 例如,工作流可以根据支出金额将费用报表发送给其他管理人员。 在行业资讯监视应用中,工作流需要基于文章的情绪分数生成分支。 下图显示了行业资讯监视应用的流程图,并突出显示了控制逻辑:

图中显示了行业资讯监视应用中基于文章情绪的分支。

控制操作是内置于 Azure 逻辑应用的特殊操作,提供以下控件构造:

  • Condition 操作由布尔表达式控制
  • Switch 操作
  • For each 和 Until 循环。
  • 无条件分支说明。

下图显示了如何在行业资讯监视应用的工作流中使用“条件”操作

图中显示了行业资讯监视工作流,其中包含基于文章情绪选择分支的内置控制操作。

什么是工作流设计器?

工作流设计器是用于创建工作流的图形工具。 设计器提供了一个画布图面,你可在其中添加触发器和操作,从而生成工作流。 例如,行业资讯监视应用使用名为“有新资讯文章时”的触发器、称为“条件”的控制操作以及名为“情绪”、“创建 Blob”和“发送电子邮件”的操作。 下面的屏幕截图显示了设计器中的行业资讯监视工作流:

屏幕截图显示了工作流设计器中的行业资讯监视应用。