你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
什么是 Azure 逻辑应用?
Azure 逻辑应用是一个云平台,你可以在其中创建自动化工作流,并在企业或组织中的软件生态系统内外和跨多个生态系统运行该工作流。 当工作流必须连接和使用来自不同组件(例如服务、系统、应用和数据源)的资源时,此平台可大大减少或消除编写代码的需求。
Azure 逻辑应用包括“低代码或无代码”工具,可用于处理存在于云、本地或混合环境中的旧式、新式和尖端系统。 例如,可以使用可视化设计器和预建操作来尽可能简化构建工作流的过程。 这些预建操作可充当工作流中的构建基块,让你可以访问各种资源并完成常见任务(例如获取数据、发送数据和管理数据)。 借助 Azure 逻辑应用,可以构建集成解决方案,以便根据企业或组织的需求来扩缩和支持相关业务场景。
以下示例仅介绍了可以使用 Azure 逻辑应用自动执行的任务、业务流程和工作负载示例:
- 当发生特定事件(例如上传新文件时)使用 Office 365 计划并发送电子邮件通知。
- 跨本地系统和云服务路由并处理客户订单。
- 将上传的文件从 SFTP 或 FTP 服务器移动到 Azure Blob 存储。
- 监视社交媒体活动、分析情绪,并为需要审核的项目创建警报或任务。
以下示例工作流使用条件和开关来确定下一个操作。 假设你有一个订单系统,工作流处理传入订单。 你希望手动查看高于特定成本的订单。 你的工作流已包含用于确定传入订单的成本的步骤。 因此,你可以添加一个条件,将每个订单与成本阈值进行比较,例如:
如需详细了解此工作流背后的逻辑,请参阅逻辑应用的工作原理。
提示
若要了解详细信息,可以向 Azure Copilot 提出以下问题:
- 可以使用 Azure 逻辑应用解决哪些问题?
- Azure 逻辑应用提供了哪些优势?
若要查找 Azure Copilot,请在 Azure 门户 工具栏上,选择“Copilot”。
若要尝试创建第一个工作流,请参阅入门。 若要继续了解详细信息,请观看以下视频:
有关详细信息,请访问 Microsoft Azure 网站上的 Azure 逻辑应用和其他 Azure 集成服务。
为什么使用 Azure 逻辑应用
Azure 逻辑应用平台提供了超过 1,400 个预建连接器,用于连接工作流并将其与各种服务、系统、应用和数据集成。 这种不断扩展的连接器生态系统有助于减少或消除访问资源所需的工作。 这样,你便可以更专注于设计和开发解决方案所需的业务逻辑和功能,以满足业务需求。
若要与任何服务终结点通信、运行自己的代码、控制工作流结构、操纵数据或以更高的速度、容量和吞吐量连接到常用资源,可以使用内置连接器操作。 这些操作在 Azure 逻辑应用运行时上本机运行(而不是在 Azure 中运行),以提高性能。
若要访问和使用通过 Azure、Microsoft、外部 Web 应用和服务或本地系统等服务创建和管理的资源,你可以使用托管连接器操作。 这些操作在全球多租户 Azure 中托管和运行。 你可以从超过 1,400 个连接器中进行选择,例如:
- Azure 服务,例如 Blob 存储和服务总线
- Office 365 服务,例如 Outlook、Excel 和 SharePoint
- 数据库服务器,例如 SQL 和 Oracle
- 企业系统,例如 SAP 和 IBM MQ
- 文件共享,例如 FTP 和 SFTP
有关详细信息,请参阅以下文章:
使用 Azure 逻辑应用构建工作流时,通常无需编写任何代码。 但是,如果必须创建并运行自己的代码,Azure 逻辑应用也支持此功能。 例如,对于在多租户 Azure 逻辑应用中运行的工作流,你可以直接在工作流中编写和运行 JavaScript 代码片段。 对于更复杂的结构化代码,如果使用了 Azure Functions 平台,你可以在工作流中创建和调用函数。 对于在单租户 Azure 逻辑应用、应用服务环境 (ASE) v3 或部分连接的环境中运行的工作流,你可以直接在工作流中编写和运行 JavaScript 代码片段、.NET 代码、C# 脚本和 PowerShell 脚本。
如果工作流需要与来自其他 Azure 服务、自定义应用或其他解决方案的事件进行交互,则可以使用 Azure 事件网格或 Azure 事件中心来监视、路由和发布事件。
有关详细信息,请参阅以下文章:
- 使用工作流内联添加和运行 JavaScript 代码
- Azure Functions 概述和通过工作流调用 Azure Functions
- 通过标准工作流创建并运行 .NET 代码
- 添加和运行 C# 脚本
- 添加并运行 PowerShell 脚本
Azure 逻辑应用由 Microsoft Azure 全权托管,因此不必担心托管、缩放、管理、监视和维护用这些服务构建的解决方案。 使用这些功能创建“无服务器”应用和解决方案时,你可以更专注于构建业务逻辑和功能。 无服务器平台可自动扩缩以满足需求,使集成更快运作,并帮助你使用很少代码(或根本不使用代码)构建强大的云应用。
若要了解其他公司如何将 Azure 逻辑应用与其他 Azure 服务和 Microsoft 产品配合使用,以便增强敏捷性并更加专注于核心业务,请查看这些客户案例。
关键术语
下表简要定义了 Azure 逻辑应用中的核心术语和概念。
术语 | 说明 |
---|---|
逻辑应用 | 在需要生成工作流时创建的 Azure 资源。 基本上,可以创建以下类型的逻辑应用资源: -“消耗”逻辑应用资源,该资源支持在多租户 Azure 逻辑应用中托管并运行的单个工作流 -“标准”逻辑应用资源,该资源支持在单租户 Azure 逻辑应用、应用服务环境 (ASE) v3(仅限 Windows 计划)或部分连接的环境中托管和运行的多个工作流 详细了解逻辑应用资源类型及其各自的计算资源和计费模式。 |
Workflow | 定义任务、业务流程或工作负载的一系列操作。 每个工作流始终以单个触发器操作开头,之后必须添加一个或多个操作。 |
触发器 | 任何工作流中的第一个操作,指定在运行该工作流中的任何后续操作之前要满足的条件。 例如,触发事件可能是在收件箱中收到电子邮件,或者在存储帐户中检测到新文件。 |
Action | 工作流中触发器后面的每个后续操作。 |
内置连接器 | 此连接器或操作类型是“内置”到 Azure 逻辑应用运行时中的,因此与在 Azure 中托管和运行的 Microsoft 托管连接器相比,操作可直接与运行时一起原生运行,从而获得更快的性能。 内置操作提供了一些方法,用于控制工作流的日常安排或结构、运行你自己的代码、管理和操纵数据、发送或接收对终结点的请求,以及完成工作流中的其他任务。 例如,使用“定期”触发器时,可以启动计划表上的几乎任何工作流。 或者在使用“请求”触发器时,可以让工作流在被调用以前都保持等待状态。 这些操作通常不需要从工作流创建连接。 而大多数内置操作不与任何服务或系统关联,一些内置操作可用于特定服务,如 Azure Functions、Azure Blob 存储、Azure 应用服务等。 这些内置操作的可用性取决于是使用“消耗”还是“标准”逻辑应用工作流。 有关详细信息和示例,请参阅适用于 Azure 逻辑应用的内置连接器。 |
托管连接器 | 此连接器或操作类型是由 Microsoft 发布、管理、托管,并在 Azure 中运行的。它是服务或系统的 REST API 的预生成代理或包装器,可用于访问特定应用、数据、服务或系统。 首先从工作流创建连接并验证身份,然后才能使用大多数托管连接器。 例如,可以使用触发器启动工作流,或运行适用于 Office 365、Salesforce 或文件服务器等服务的操作。 有关详细信息,请查看适用于 Azure 逻辑应用的托管连接器。 |
集成帐户 | 如果要定义和存储 B2B 项目以便在在工作流中使用,请创建此 Azure 资源。
创建集成帐户并将其链接到逻辑应用后,工作流可以使用这些 B2B 项目。 工作流还可以交换遵循电子数据交换 (EDI) 和企业应用程序集成 (EAI) 标准的消息。 例如,你可以定义参与方、协议、架构、地图和其他 B2B 项目。 你可以创建使用这些项目的工作流,并通过协议(如 AS2、EDIFACT、X12 和 RosettaNet)交换消息。 |
我可以以怎样的节奏逐步采纳 Azure 逻辑应用?
你可以从当前系统和服务着手,按自己的步调逐渐扩大规模。 准备就绪以后,即可使用 Azure 逻辑应用来获得以下功能和好处,从而实现集成方案并通过纵向扩展将其变为更成熟的方案。
使用简单易用的工具直观地创建和编辑工作流
使用 Azure 逻辑应用中的可视化设计工具节省时间并简化复杂过程。 在 Azure 门户或 Visual Studio Code 中使用 Azure 逻辑应用工作流设计器从头到尾创建工作流。 只需使用触发器即可启动工作流,并从连接器库添加任意数量的操作。
跨各种环境连接不同的系统
某些模式和流程描述起来容易,但难以在代码中实现。 Azure 逻辑应用可帮助跨云、本地和混合环境无缝连接不同的系统。 例如,可以将云营销解决方案连接到本地计费系统,也可以使用 Azure 服务总线集中进行跨 API 和系统的消息传送。 可以通过 Azure 逻辑应用快速、可靠且一致地为这些方案提供可重复使用和重新配置的解决方案。
创建并部署到不同的环境
根据方案、解决方案要求和所需功能,可以选择创建“消耗”或“标准”逻辑应用工作流。 根据此选择,工作流在多租户 Azure 逻辑应用、单租户 Azure 逻辑应用或应用服务环境 (v3) 中运行。 使用单租户 Azure 逻辑应用,工作流可以更轻松地访问受 Azure 虚拟网络保护的资源。 如果使用已启用 Azure Arc 的逻辑应用创建基于单个租户的工作流,则还可以在容器中运行工作流。 有关详细信息,请参阅 Azure 逻辑应用中的单租户与多租户以及什么是已启用 Arc 的逻辑应用?
下表简要总结了消耗与标准逻辑应用工作流之间的差异。 你还将了解多租户环境、单租户环境和应用服务环境 v3 (ASEv3) 在部署、托管和运行逻辑应用工作流方面的差异。
托管选项 | 好处 | 资源共享和使用 | 定价和计费模型 | 限制管理 |
---|---|---|---|---|
消耗 主机环境:多租户 Azure 逻辑应用 |
- 最容易入门 - 仅为所使用内容付费 - 完全托管 |
单个逻辑应用资源只能拥有一个工作流。 跨 Microsoft Entra 租户的所有逻辑应用可共享相同的处理(计算)、存储、网络等。 出于冗余目的,将在配对区域中复制数据。 为实现高可用性,已启用异地冗余存储 (GRS)。 |
消耗(按执行付费) | Azure 逻辑应用管理这些限制的默认值,但如果特定限制存在更改值的选项,则可以更改其中某些值。 |
标准(工作流服务计划) 主机环境: 单租户 Azure 逻辑应用 注意:如果你的方案需要容器,请使用已启用 Azure Arc 的逻辑应用创建基于单租户的逻辑应用。 有关详细信息,请参阅什么是已启用 Azure Arc 的逻辑应用? |
- 更多内置连接器托管在单租户运行时上,可实现更高的吞吐量和更低的规模成本 - 围绕运行时和性能设置的更多控制和微调功能 - 集成了对虚拟网络和专用终结点的支持。 - 创建自己的内置连接器。 |
单个逻辑应用资源可以拥有多个有状态和无状态工作流。 单个逻辑应用和租户中的工作流共享相同的处理(计算)、存储和网络等。 数据所在区域与部署逻辑应用的区域相同。 |
标准,基于处于所选定价层的托管计划。 如果运行有状态工作流(这些工作流使用外部存储,Azure 逻辑应用运行时将执行遵循 Azure 存储定价的存储事务。 |
你可以根据方案的需求更改多个限制的默认值。 重要说明:某些限制的具有固定的上限。 在 Visual Studio Code 中,你对逻辑应用项目配置文件中的默认限制值的更改不会反应在设计器体验中。 有关详细信息,请参阅在单租户 Azure 逻辑应用中编辑中逻辑应用的应用和环境设置。 |
标准(应用服务环境 v3) 主机环境: 应用服务环境 v3 (ASEv3) - 仅限 Windows 计划 |
与单租户相同的功能,加上以下优势: - 完全隔离逻辑应用。 - 创建和运行比在单租户 Azure 逻辑应用中更多的逻辑应用。 - 无论创建和运行多少逻辑应用,都只需为 ASE 应用服务计划付费。 - 可以使用更多虚拟机实例或其他应用服务计划启用自动缩放或手动缩放。 - 从选定的 ASEv3 继承网络设置。 例如,当你部署到内部 ASE 时,工作流可以访问与 ASE 关联的虚拟网络中的资源,并拥有内部访问点。 注意:如果从内部 ASE 的外部访问,运行该 ASE 中的工作流的历史记录是无法访问操作输入和输出的。 |
单个逻辑应用可以有多个有状态和无状态工作流。 单个逻辑应用和租户中的工作流共享相同的处理(计算)、存储和网络等。 数据所在区域与部署逻辑应用的区域相同。 |
应用服务计划 | 你可以根据方案的需求更改多个限制的默认值。 重要说明:某些限制的具有固定的上限。 在 Visual Studio Code 中,你对逻辑应用项目配置文件中的默认限制值的更改不会反应在设计器体验中。 有关详细信息,请参阅在单租户 Azure 逻辑应用中编辑中逻辑应用的应用和环境设置。 |
针对企业集成和 B2B 方案的一流支持
企业和组织使用符合行业标准但却不同的消息协议和格式(例如 EDIFACT、AS2、X12 和 RosettaNet)进行电子方式的相互通信。 使用 Azure 逻辑应用支持的企业集成功能,你可以创建工作流,将贸易合作伙伴使用的消息格式转换为组织系统可以解释和处理的格式。 Azure 逻辑应用可以通过加密和数字签名顺利且安全地处理这些交换。 针对 B2B 集成场景,Azure 逻辑应用纳入了 BizTalk Server 中的功能。 若要定义企业到企业 (B2B) 项目,请创建用于存储这些项目的集成帐户。 将该帐户链接到逻辑应用资源后,工作流可以使用这些 B2B 项目并交换符合电子数据交换 (EDI) 和企业应用程序集成 (EAI) 标准的消息。
有关详细信息,请参阅以下文档:
在 Microsoft BizTalk Server、Azure 服务总线、Azure Functions、Azure API 管理等服务的基础上进行集成和构建。
使用 EDIFACT、AS2、X12 和 RosettaNet 协议交换消息。
例如,如果使用 Microsoft BizTalk Server,则工作流可以使用 BizTalk Server 连接器与 BizTalk Server 通信。 然后,可以使用集成帐户连接器在工作流中运行或扩展类似于 BizTalk 的操作。 从另一个方向看,BizTalk Server 可以使用适用于 Azure 逻辑应用的 Microsoft BizTalk Server 适配器与工作流通信。 了解如何在 BizTalk Server 中设置和使用 BizTalk 服务器适配器。
编写一次即可多次重复使用
将逻辑应用工作流创建为 Azure 资源管理器模板,以便跨多个环境和区域设置并自动执行部署。
内置的扩展性
如果没有合适的连接器可用于运行所需的代码,则可以使用适用于 JavaScript 或 C# 脚本的“内联代码”操作从工作流创建和运行代码片段,可以使用 Azure Functions。 你也可以创建可从你的工作流调用的 API 和自定义连接器。
直接访问 Azure 虚拟网络中的资源
使用 Azure 逻辑应用(标准)时,逻辑应用工作流可访问 Azure 虚拟网络中的安全资源,例如虚拟机、其他服务和系统。 Azure 逻辑应用(标准)是一个单租户实例 Azure 逻辑应用,它使用专用资源,独立于全局多租户 Azure 逻辑应用运行。
在你自己的专用实例中托管和运行逻辑应用工作流有助于降低其他 Azure 租户对应用性能的影响,此影响也称为“邻近干扰”影响。
Azure 逻辑应用(标准)具有以下优势:
你自己的静态 IP 地址,与多租户 Azure 逻辑应用中逻辑应用共享的静态 IP 地址分开。 还可以设置单个公共的、静态的和可预测的出站 IP 地址,以便与目标系统通信。 这样就无需在这些目标系统上设置额外的防火墙开口。
增加了对运行持续时间、存储保留、吞吐量、HTTP 请求和响应超时、消息大小和自定义连接器请求的限制。 有关详细信息,请查看 Azure 逻辑应用的限制和配置。
逻辑应用的工作原理
逻辑应用工作流始终以单个触发器开始。 当满足某个条件时,例如,当发生特定事件时或数据满足特定条件时,将触发触发器。 许多触发器包含用于控制工作流运行频率的计划功能。 触发触发器后,一个或多个操作将运行加工、处理或转换数据等操作,这些操作可以贯穿于工作流,也可以推动工作流进入下一步。
根据前面的示例,以下部分介绍了示例工作流(该工作流用于处理订单系统的传入订单)背后的逻辑。 请注意,你的目标是手动审查高于特定成本的订单。 该工作流已包含用于确定传入订单的成本的步骤。 因此,你可以添加一个条件,将每个订单与成本阈值进行比较,例如:
如果订单低于特定数额,则条件为 false。 然后,工作流处理订单。
如果条件为 true,那么工作流将发送电子邮件以供手动审阅。 开关确定下一个步骤。
如果审阅者批准,工作流会继续处理订单。
如果审阅者呈报,工作流将发送呈报电子邮件以获取有关订单的详细信息。
- 如果满足呈报要求,则响应条件为 true。 因此,会处理订单。
- 如果响应条件为 false,则会发送有关该问题的电子邮件。
Azure 逻辑应用使用“至少一次”消息传递语义。 该服务很少会多次传递消息,但不会丢失任何消息。 如果企业不处理或无法处理重复消息,则需要实现幂等,这是接受相同或重复消息同时保持数据完整性和系统稳定性的功能。 这样,同一操作的重复不会在第一次执行后更改结果。
可以在 Azure 门户或 Visual Studio Code 中使用 Azure 逻辑应用工作流设计器以可视方式创建工作流。 每个工作流还具有使用 JavaScript 对象表示法 (JSON) 格式的基础定义。 如果需要,可以通过更改此 JSON 定义来编辑工作流。 对于某些创建和管理任务,Azure 逻辑应用提供 Azure PowerShell 和 Azure CLI 命令支持。 对于自动部署,Azure 逻辑应用支持 Azure 资源管理器模板。
定价选项
每个逻辑应用托管选项(多租户、单租户、应用服务环境 (ASE) v3 或部分连接的环境)都有不同的定价模型。 例如,多租户“消耗”逻辑应用工作流遵循“消耗”定价模式,而单租户“标准”逻辑应用工作流则遵循“标准”定价模式。 有关具体的定价详细信息,请参阅 Azure 逻辑应用定价。
Azure 逻辑应用与 Functions、WebJobs 及 Power Automate 的区别在哪里?
所有这些服务都有助于连接和整合不同的系统。 每项服务都有其优点和优势,因此若要快速生成可缩放且功能完备的集成系统,最好的方法是将这些服务的功能组合到一起。 有关详细信息,请参阅在 Azure 逻辑应用、Azure Functions、Azure WebJobs 和 Microsoft Power Automate 之间进行选择。
Azure 逻辑应用与 Azure 自动化 Runbook 有何不同?
Azure 自动化 Runbook 提供了一种轻量且经济高效的解决方案,用于直接修正,例如重启虚拟机。 相比之下,Azure 逻辑应用平台非常适合涉及多个服务、系统、应用和数据的自动化工作流或业务流程。 这些场景还包括运行自定义代码或需要使用复杂逻辑(这些逻辑使用循环、分支、条件等控制结构)的工作负载。
开始使用
在开始试用 Azure 逻辑应用之前,你需要具有一个 Azure 帐户和订阅。 如果没有订阅,可以注册免费的 Azure 帐户。
准备就绪后,请根据以下一个或多个操作指南开始使用 Azure 逻辑应用:
- 在 Azure 门户中创建多租户“消耗”逻辑应用工作流
- 在 Visual Studio Code 中创建多租户“消耗”逻辑应用工作流
- 在 Azure 门户中创建单租户“标准”逻辑应用工作流
- 在 Visual Studio Code 中创建单租户“标准”逻辑应用工作流