You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/policies/disallow-edits.yml
+58-2Lines changed: 58 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,7 @@ configuration:
10
10
- payloadType: Pull_Request
11
11
- isAction:
12
12
action: Opened
13
-
- or:
13
+
- or:
14
14
- filesMatchPattern:
15
15
matchAny: true
16
16
pattern: articles/aks/*
@@ -121,4 +121,60 @@ configuration:
121
121
reply: >-
122
122
@${issueAuthor} - You tried to add content to a folder path that has been removed from this repository. Your pull request will be automatically closed. Submit your changes to the updated repository, which can be identified by clicking the Edit this Document link at the top of any published article for that product or service.
123
123
- closePullRequest
124
-
124
+
125
+
- description: Alert authors to edits in the /articles/reliability folder.
126
+
if:
127
+
# If a PR in the articles/reliability folder is opened, and the PR author isn't Anastasia or John...
128
+
- payloadType: Pull_Request
129
+
- filesMatchPattern:
130
+
matchAny: true
131
+
pattern: articles/reliability/*
132
+
- isAction:
133
+
action: Opened
134
+
- not:
135
+
or:
136
+
- isActivitySender:
137
+
user: anaharris-ms
138
+
- isActivitySender:
139
+
user: johndowns
140
+
then:
141
+
# Mention Anastasia and John, add a reply asking the PR author not to sign off on the PR, and add the needs-human-review label.
142
+
- mentionUsers:
143
+
mentionees:
144
+
- anaharris-ms
145
+
- johndowns
146
+
replyTemplate: >-
147
+
Tagging authors for this folder: ${mentionees}
148
+
- addReply:
149
+
reply: >-
150
+
@${issueAuthor} - Please do NOT sign off on this pull request. The Reliability Hub owners will sign off for you.
151
+
- addLabel:
152
+
label: needs-human-review
153
+
154
+
- description: Disallow sign-off for articles in the /articles/reliability folder.
155
+
if:
156
+
# If a 'sign-off' comment is added to a PR in the articles/reliability folder , and the PR author isn't Anastasia or John...
157
+
- payloadType: Issue_Comment
158
+
- isPullRequest
159
+
- filesMatchPattern:
160
+
matchAny: true
161
+
pattern: articles/reliability/*
162
+
- commentContains:
163
+
pattern: \#sign-off
164
+
isRegex: false
165
+
- not:
166
+
or:
167
+
- isActivitySender:
168
+
user: anaharris-ms
169
+
- isActivitySender:
170
+
user: johndowns
171
+
then:
172
+
# Add the do-not-merge label, remove the ready-to-merge label, and add a reply asking the PR author not to sign off on the PR.
173
+
- addReply:
174
+
reply: >-
175
+
@${issueAuthor} - Please do NOT sign off on this pull request. The Reliability Hub owners will sign off for you.
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-compare-logic-apps-ms-flow-webjobs.md
+30-39Lines changed: 30 additions & 39 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Integration and automation platform options in Azure
3
3
description: "Compare Microsoft cloud services that are optimized for integration tasks: Power Automate, Logic Apps, Functions, and WebJobs."
4
4
ms.topic: overview
5
-
ms.date: 06/09/2023
5
+
ms.date: 02/07/2025
6
6
ms.custom: mvc
7
7
#Customer intent: As a developer, I want to understand the choices that Azure offers for hosting and executing my business logic so that I can choose the right set of Azure services.
8
8
---
@@ -15,51 +15,42 @@ This article compares the following Microsoft cloud services:
*[Azure App Service WebJobs](../app-service/webjobs-create.md)
17
17
18
-
All of these services can solve integration problems and automate business processes. They can all define input, actions, conditions, and output. You can run each of them on a schedule or trigger. Each service has unique advantages, and this article explains the differences.
18
+
All of these services can solve integration problems and automate business processes. They can all define input, actions, conditions, and output. You can run each of them on a schedule or trigger. Each service has unique advantages, and this article explains the differences.
19
19
20
-
>[!NOTE]
21
-
>If you're looking for a more general comparison between Azure Functions and other Azure compute options:
22
-
>+[Criteria for choosing an Azure compute service](/azure/architecture/guide/technology-choices/compute-comparison)
23
-
>+[Choosing an Azure compute option for microservices](/azure/architecture/microservices/design/compute-options)
20
+
> [!NOTE]
24
21
>
25
-
>For a summary and comparison of automation service options in Azure:
26
-
>+[Choose the Automation services in Azure](../automation/automation-services.md)
27
-
28
-
## Compare Microsoft Power Automate and Azure Logic Apps
29
-
30
-
Power Automate and Azure Logic Apps are both *designer-first* integration services that can create workflows. Both services integrate with various SaaS and enterprise applications.
22
+
> If you're looking for a more general comparison between Azure Functions and other Azure compute options, see the following articles:
23
+
>
24
+
> -[Criteria for choosing an Azure compute service](/azure/architecture/guide/technology-choices/compute-comparison)
25
+
> -[Choosing an Azure compute option for microservices](/azure/architecture/microservices/design/compute-options)
26
+
>
27
+
> For a summary and comparison of automation service options in Azure,
28
+
> see [Choose the Automation services in Azure](../automation/automation-services.md).
31
29
32
-
Power Automate is built on the Azure Logic Apps platform. Both provide similar workflow designers and [connectors](/connectors/connector-reference/).
30
+
## Compare Azure Logic Apps and Microsoft Power Automate
33
31
34
-
Power Automate empowers any office worker to perform simple integrations (for example, an approval process on a SharePoint Document Library) without going through developers or IT. Logic Apps can also enable advanced integrations (for example, B2B processes) where enterprise-level Azure DevOps and security practices are required. It's typical for a business workflow to grow in complexity over time.
32
+
These services are both *designer-first* integration platforms where you can build and run automated workflows. Both platforms integrate with various Software-as-a-Service (SaaS) and enterprise applications. Both provide similar workflow designers, and while [their connectors share some overlap](/connectors/connector-reference/), each platform also offers their own unique connectors.
35
33
36
-
The following table helps you determine whether Power Automate or Logic Apps is best for a particular integration:
34
+
Power Automate empowers business users, office workers, and citizen developers to build simple integrations without having to work with IT or developers or to write code. One example might be an approval workflow for a SharePoint document library. Azure Logic Apps supports integrations ranging from little-to-no-code scenarios to more advanced, codeful, and complex workflows. Examples include B2B processes or scenarios that require enterprise-level interactions with Azure DevOps. A business workflow can also grow from simple to complete over time.
37
35
38
-
|| Power Automate | Logic Apps |
39
-
| --- | --- | --- |
40
-
|**Users**|Office workers, business users, SharePoint administrators |Pro integrators and developers, IT pros |
|**Design tool**|In-browser and mobile app, UI only |In-browser, [Visual Studio Code](../logic-apps/quickstart-create-logic-apps-visual-studio-code.md), and [Visual Studio](../logic-apps/quickstart-create-logic-apps-with-visual-studio.md) with code view available |
43
-
|**Application lifecycle management (ALM)**|Power Platform [provides tools](/power-platform/alm/tools-apps-used-alm) that integrate with DevOps and [GitHub Actions](/power-platform/alm/devops-github-actions) to let you build automated pipelines in the ALM cycle. |Azure DevOps: source control, testing, support, automation, and manageability in [Azure Resource Manager](../logic-apps/logic-apps-azure-resource-manager-templates-overview.md)|
44
-
|**Admin experience**|Manage Power Automate environments and data loss prevention (DLP) policies, track licensing: [Admin center](https://admin.powerplatform.microsoft.com)|Manage resource groups, connections, access management, and logging: [Azure portal](https://portal.azure.com)|
45
-
|**Security**|Microsoft 365 security audit logs, DLP, [encryption at rest](https://wikipedia.org/wiki/Data_at_rest#Encryption) for sensitive data |Security assurance of Azure: [Azure security](https://www.microsoft.com/en-us/trustcenter/Security/AzureSecurity), [Microsoft Defender for Cloud](https://azure.microsoft.com/services/security-center/), [audit logs](/azure/security/fundamentals/log-audit)|
36
+
To help you determine whether you want to use Azure Logic Apps or Power Automate for a specific integration, see the [Capability comparison table](/azure/logic-apps/power-automate-migration#compare-capability-details).
46
37
47
38
## Compare Azure Functions and Azure Logic Apps
48
39
49
-
Functions and Logic Apps are Azure services that enable serverless workloads. Azure Functions is a serverless compute service, whereas Azure Logic Apps is a serverless workflow integration platform. Both can create complex *orchestrations*. An orchestration is a collection of functions, or*actions* in Azure Logic Apps, that you can run to complete a complex task. For example, to process a batch of orders, you might execute many instances of a function in parallel, wait for all instances to finish, and then execute a function that computes a result on the aggregate.
40
+
These Azure services enable you to build and run serverless workloads. Azure Functions is a serverless compute service, while Azure Logic Apps is a serverless workflow integration platform. Both can create complex *orchestrations*. An orchestration is a collection of functions, which are called*actions* in Azure Logic Apps, that you can run to complete a complex task. For example, to process a batch of orders, you might execute many instances of a function in parallel, wait for all instances to finish, and then execute a function that computes a result on the aggregate.
50
41
51
-
For Azure Functions, you develop orchestrations by writing code and using the [Durable Functions extension](durable/durable-functions-overview.md). For Azure Logic Apps, you create orchestrations by using a GUI or editing configuration files.
42
+
For Azure Functions, you develop orchestrations by writing code and using the [Durable Functions extension](durable/durable-functions-overview.md). For Azure Logic Apps, you create orchestrations by using a visual designer or by editing Azure Resource Manager templates.
52
43
53
-
You can mix and match services when you build an orchestration, such as calling functions from logic app workflows and calling logic app workflows from functions. Choose how to build each orchestration based on the services' capabilities or your personal preference. The following table lists some key differences between these services:
44
+
You can mix and match services when you build an orchestration. For example, you can call functions from logic app workflows and call logic app workflows from functions. Choose how to build each orchestration based on the services' capabilities or your personal preference. The following table lists some key differences between these services:
|**Connectivity**|[About a dozen built-in binding types](functions-triggers-bindings.md#supported-bindings), write code for custom bindings |[Large collection of connectors](/connectors/connector-reference/connector-reference-logicapps-connectors), [Enterprise Integration Pack for B2B scenarios](../logic-apps/logic-apps-enterprise-integration-overview.md), [build custom connectors](/connectors/custom-connectors/)|
59
-
|**Actions**| Each activity is an Azure function; write code for activity functions |[Large collection of ready-made actions](/connectors/connector-reference/connector-reference-logicapps-connectors)|
|**Execution context**| Can run [locally](./functions-kubernetes-keda.md) or in the cloud |Runs in Azure, locally, or on premises. For more information, see [What is Azure Logic Apps](../logic-apps/logic-apps-overview.md#resource-environment-differences).|
49
+
|**Connectivity**|- [A dozen built-in binding types](functions-triggers-bindings.md#supported-bindings) <br>- Write code for custom bindings |- [1,400+ prebuilt connectors with triggers and actions](/connectors/connector-reference/connector-reference-logicapps-connectors) <br>- [Enterprise Integration Pack for B2B scenarios](../logic-apps/logic-apps-enterprise-integration-overview.md) <br>- [Custom connectors](/connectors/custom-connectors/)|
50
+
|**Actions**| Each activity is an Azure function; write code for activity functions |[1,400+ prebuilt connectors with triggers and actions](/connectors/connector-reference/connector-reference-logicapps-connectors)|
51
+
|**Monitoring**|[Azure Application Insights](/azure/azure-monitor/app/app-insights-overview)|- [Azure portal](../logic-apps/view-workflow-status-run-history.md) <br>- [Azure Monitor Logs](../logic-apps/monitor-workflows-collect-diagnostic-data.md) <br>- [Microsoft Defender for Cloud](../logic-apps/healthy-unhealthy-resource.md) <br>- [Azure Application Insights for Standard workflows](/azure/logic-apps/create-single-tenant-workflows-azure-portal#enable-or-open-application-insights-after-deployment) <br>- [Health Check for Standard workflows](/azure/logic-apps/monitor-health-standard-workflows) <br><br>For more information, see [Monitor workflows in Azure Logic Apps](/azure/logic-apps/monitor-logic-apps-overview).|
|**Execution context**| Can run [locally](./functions-kubernetes-keda.md) or in the cloud |Can run in Azure, locally in Visual Studio Code, or in partially connected environments. For more information, see [What is Azure Logic Apps](../logic-apps/logic-apps-overview.md#resource-environment-differences)?|
63
54
64
55
<aname="function"></a>
65
56
@@ -95,12 +86,12 @@ Azure Functions is built on the WebJobs SDK, so it shares many of the same event
95
86
96
87
Azure Functions offers more developer productivity than Azure App Service WebJobs does. It also offers more options for programming languages, development environments, Azure service integration, and pricing. For most scenarios, it's the best choice.
97
88
98
-
Here are two scenarios for which WebJobs may be the best choice:
89
+
Here are two scenarios for which WebJobs might be the best choice:
99
90
100
-
* You need more control over the code that listens for events, the `JobHost` object. Functions offers a limited number of ways to customize `JobHost` behavior in the [host.json](functions-host-json.md) file. Sometimes you need to do things that can't be specified by a string in a JSON file. For example, only the WebJobs SDK lets you configure a custom retry policy for Azure Storage.
91
+
* You need more control over the code that listens for events, the `JobHost` object. Functions offers a limited number of ways to customize `JobHost` behavior in the [host.json](functions-host-json.md) file. Sometimes you need to do things that you can't specify by using a string in a JSON file. For example, only the WebJobs SDK lets you configure a custom retry policy for Azure Storage.
101
92
* You have an App Service app for which you want to run code snippets, and you want to manage them together in the same Azure DevOps environment.
102
93
103
-
For other scenarios where you want to run code snippets for integrating Azure or third-party services, choose Azure Functions over WebJobs with the WebJobs SDK.
94
+
For other scenarios where you want to run code snippets for integrating Azure or external services, choose Azure Functions over WebJobs with the WebJobs SDK.
104
95
105
96
<aname="together"></a>
106
97
@@ -110,13 +101,13 @@ You don't have to choose just one of these services. They integrate with each ot
110
101
111
102
A Power Automate flow can call an Azure Logic Apps workflow. An Azure Logic Apps workflow can call a function in Azure Functions, and vice versa. For example, see [Create a function that integrates with Azure Logic Apps](functions-twitter-email.md).
112
103
113
-
Between Power Automate, Logic Apps, and Functions, the integration experience between these services continues to improve over time. You can build a component in one service and use that component in the other services.
104
+
Between Power Automate, Azure Logic Apps, and Functions, the integration experience between these services continues to improve over time. You can build a component in one service and use that component in the other services.
114
105
115
-
You can get more information on integration services by using the following links:
106
+
For more information about integration services, see the following articles:
116
107
117
108
*[Leveraging Azure Functions & Azure App Service for integration scenarios by Christopher Anderson](https://www.biztalk360.com/integrate-2016-resources/leveraging-azure-functions-azure-app-service-integration-scenarios/)
118
109
*[Integrations Made Simple by Charles Lamanna](https://www.biztalk360.com/integrate-2016-resources/integrations-made-simple/)
119
-
*[Logic Apps Live webcast](https://aka.ms/logicappslive)
110
+
*[Azure Logic Apps Live webcast](https://aka.ms/logicappslive)
0 commit comments