Choose the right integration and automation services in Azure (Escolher os serviços de integração e automatização certos no Azure)Choose the right integration and automation services in Azure

Este artigo compara os seguintes serviços cloud do Microsoft:This article compares the following Microsoft cloud services:

Todos estes serviços podem resolver problemas de integração e automatizar processos comerciais.All of these services can solve integration problems and automate business processes. Podem todos definir entradas, ações, condições e saídas.They can all define input, actions, conditions, and output. Pode executar cada um com base numa agenda ou num acionador.You can run each of them on a schedule or trigger. Cada serviço tem vantagens únicas, e este artigo explica as diferenças.Each service has unique advantages, and this article explains the differences.

Se procura uma comparação mais geral entre as Funções Azure e outras opções de computação Azure, consulte Critérios para escolher um serviço de computação Azure e escolher uma opção de computação Azure para microserviços.If you're looking for a more general comparison between Azure Functions and other Azure compute options, see Criteria for choosing an Azure compute service and Choosing an Azure compute option for microservices.

Compare as aplicações de automação de energia da Microsoft e a Azure LogicCompare Microsoft Power Automate and Azure Logic Apps

Power Automamate e Logic Apps são ambos serviços de integração de designers que podem criar fluxos de trabalho.Power Automate and Logic Apps are both designer-first integration services that can create workflows. Ambos os serviços integram-se com diversas aplicações empresariais e SaaS.Both services integrate with various SaaS and enterprise applications.

Power Automamate é construído em cima de Aplicações Lógicas.Power Automate is built on top of Logic Apps. Partilham o mesmo designer de fluxo de trabalho e os mesmos conectores.They share the same workflow designer and the same connectors.

A Power Automamate capacita qualquer trabalhador de escritório para realizar integrações simples (por exemplo, um processo de aprovação numa Biblioteca de Documentos SharePoint) sem passar por desenvolvedores ou TI.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. As Aplicações Lógicas também podem permitir integrações avançadas (por exemplo, processos B2B) onde são necessárias práticas de segurança a nível empresarial Azure DevOps e de segurança.Logic Apps can also enable advanced integrations (for example, B2B processes) where enterprise-level Azure DevOps and security practices are required. É normal um fluxo de trabalho do negócio se tornar cada vez mais complexo ao longo do tempo.It's typical for a business workflow to grow in complexity over time. Assim, pode começar com um fluxo no início e depois convertê-lo numa aplicação lógica, conforme necessário.Accordingly, you can start with a flow at first, and then convert it to a logic app as needed.

A tabela a seguir ajuda-o a determinar se o Power Automamate ou o Logic Apps são os melhores para uma determinada integração:The following table helps you determine whether Power Automate or Logic Apps is best for a particular integration:

Power AutomatePower Automate Logic AppsLogic Apps
UtilizadoresUsers Trabalhadores do escritório, utilizadores empresariais, administradores do SharePointOffice workers, business users, SharePoint administrators Integradores e programadores profissionais, profissionais de TIPro integrators and developers, IT pros
CenáriosScenarios Gestão personalizadaSelf-service Integrações avançadasAdvanced integrations
Ferramenta de designDesign tool Aplicação no browser e móvel, apenas IUIn-browser and mobile app, UI only No browser e Visual Studio, Vista de código disponívelIn-browser and Visual Studio, Code view available
Gestão do ciclo de vida da aplicação (ALM)Application lifecycle management (ALM) Conceber e testar em ambientes não produtivos, promover a produção quando estiver prontoDesign and test in non-production environments, promote to production when ready Azure DevOps: controlo de fontes, testes, suporte, automação e gestão no Azure Resource ManagerAzure DevOps: source control, testing, support, automation, and manageability in Azure Resource Manager
Experiência de administraçãoAdmin experience Gerir ambientes de automatização de energia e políticas de prevenção de perdas de dados (DLP), acompanhar o licenciamento: Centro de AdministraçãoManage Power Automate environments and data loss prevention (DLP) policies, track licensing: Admin center Gerir grupos de recursos, conexões, gestão de acessos e registos: Portal AzureManage resource groups, connections, access management, and logging: Azure portal
SegurançaSecurity Office 365 Registos de auditoria de segurança e conformidade, DLP, encriptação em repouso para dados sensíveisOffice 365 Security and Compliance audit logs, DLP, encryption at rest for sensitive data Garantia de segurança da Azure: Segurança Azure, Azure Security Center, registos de auditoriaSecurity assurance of Azure: Azure security, Azure Security Center, audit logs

Comparar o Azure Functions e o Azure Logic AppsCompare Azure Functions and Azure Logic Apps

O Functions e o Logic Apps são serviços do Azure que permitem cargas de trabalho sem servidor.Functions and Logic Apps are Azure services that enable serverless workloads. Azure Functions é um serviço de computação sem servidor, enquanto a Azure Logic Apps fornece fluxos de trabalho sem servidor.Azure Functions is a serverless compute service, whereas Azure Logic Apps provides serverless workflows. Ambos podem criar orquestrações complexas.Both can create complex orchestrations. Uma orquestração é uma coleção de funções ou passos, chamados ações no Logic Apps, que são executados para cumprir tarefas complexas.An orchestration is a collection of functions or steps, called actions in Logic Apps, that are executed to accomplish a complex task. Por exemplo, para processar um lote de encomendas, pode executar muitas instâncias de uma função em paralelo, esperar que todas as instâncias terminem e, em seguida, executar uma função que calcula um resultado no agregado.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.

Nas Funções do Azure, vai desenvolver orquestrações ao escrever código e utilizar a extensão Durable Functions.For Azure Functions, you develop orchestrations by writing code and using the Durable Functions extension. Para o Logic Apps, crie orquestrações ao utilizar um GUI ou editar os ficheiros de configuração.For Logic Apps, you create orchestrations by using a GUI or editing configuration files.

Pode combinar serviços ao criar uma orquestração, chamar funções de aplicações lógicas e chamar aplicações lógicas de funções.You can mix and match services when you build an orchestration, calling functions from logic apps and calling logic apps from functions. Selecione como criar cada orquestração com base nas capacidades dos serviços ou nas suas preferências pessoais.Choose how to build each orchestration based on the services' capabilities or your personal preference. A tabela que se segue enumera algumas das principais diferenças entre estes:The following table lists some of the key differences between these:

Funções DuráveisDurable Functions Logic AppsLogic Apps
DesenvolvimentoDevelopment Baseado em código (imperativo)Code-first (imperative) Baseado no estruturador (declarativo)Designer-first (declarative)
ConetividadeConnectivity Cerca de uma dúzia de tipos de encadernação incorporados,código de escrita para encadernações personalizadasAbout a dozen built-in binding types, write code for custom bindings Grande coleção de conectores, Pacote de Integração Empresarial para cenários B2B, construa conectores personalizadosLarge collection of connectors, Enterprise Integration Pack for B2B scenarios, build custom connectors
AçõesActions Cada atividade é uma função do Azure; escrever código para funções de atividadesEach activity is an Azure function; write code for activity functions Grande coleção de ações prontas a utilizarLarge collection of ready-made actions
MonitorizaçãoMonitoring Azure Application InsightsAzure Application Insights Portal Azure, registos do Monitor AzureAzure portal, Azure Monitor logs
GestãoManagement REST API, Estúdio VisualREST API, Visual Studio Portal Azure, REST API, PowerShell, Visual StudioAzure portal, REST API, PowerShell, Visual Studio
Contexto de execuçãoExecution context Pode correr localmente ou na nuvemCan run locally or in the cloud São executadas apenas na cloudRuns only in the cloud

Comparar o Functions e o WebJobsCompare Functions and WebJobs

Tal como as Funções do Azure, o Serviço de Aplicações do Azure WebJobs com o SDK do WebJobs é um serviço de integração baseado em código e concebido para programadores.Like Azure Functions, Azure App Service WebJobs with the WebJobs SDK is a code-first integration service that is designed for developers. Ambos são criados no Serviço de Aplicações do Azure e suportam funcionalidades como a integração de controlo de origem, a autenticação e a monitorização com integração do Application Insights.Both are built on Azure App Service and support features such as source control integration, authentication, and monitoring with Application Insights integration.

WebJobs e o SDK de WebJobsWebJobs and the WebJobs SDK

Pode utilizar a funcionalidade WebJobs do Serviço de Aplicações para executar um script ou código no contexto de uma aplicação web do Serviço de Aplicações.You can use the WebJobs feature of App Service to run a script or code in the context of an App Service web app. O SDK do WebJobs é uma arquitetura concebida para o WebJobs que simplifica o código que escreveu para responder a eventos em serviços do Azure.The WebJobs SDK is a framework designed for WebJobs that simplifies the code you write to respond to events in Azure services. Por exemplo, pode responder à criação de uma bolha de imagem no Azure Storage criando uma imagem de miniatura.For example, you might respond to the creation of an image blob in Azure Storage by creating a thumbnail image. O SDK do WebJobs é executado como uma aplicação da consola .NET, a qual pode implementar num WebJob.The WebJobs SDK runs as a .NET console application, which you can deploy to a WebJob.

O WebJobs e o SDK do WebJobs funcionam melhor em conjunto, mas pode utilizar o WebJobs sem o SDK do WebJobs e vice-versa.WebJobs and the WebJobs SDK work best together, but you can use WebJobs without the WebJobs SDK and vice versa. Um WebJob pode executar qualquer programa ou script que execute na sandbox do Serviço de Aplicações.A WebJob can run any program or script that runs in the App Service sandbox. Uma aplicação de consola do SDK do WebJobs pode ser executada em qualquer local onde as aplicações de consolas se executam, como nos servidores no local.A WebJobs SDK console application can run anywhere console applications run, such as on-premises servers.

Tabela de comparaçãoComparison table

As Funções do Azure são criadas no SDK do WebJobs, pelo que partilham muitos dos acionadores de eventos e das ligações a outros serviços do Azure.Azure Functions is built on the WebJobs SDK, so it shares many of the same event triggers and connections to other Azure services. Aqui ficam alguns fatores a ter em conta quando estiver a escolher entre as Funções Azure e webJobs com o WebJobs SDK:Here are some factors to consider when you're choosing between Azure Functions and WebJobs with the WebJobs SDK:

FunçõesFunctions WebJobs com o SDK do WebJobsWebJobs with WebJobs SDK
Modelo de aplicativo sem servidor com escala automáticaServerless app model with automatic scaling
Desenvolver e testar no navegadorDevelop and test in browser
Preços com pagamento por utilizaçãoPay-per-use pricing
Integração com o Logic AppsIntegration with Logic Apps
Eventos de acionadorTrigger events TemporizadorTimer
Filas e blobs de Armazenamento do Microsoft AzureAzure Storage queues and blobs
Filas e tópicos do Azure Service BusAzure Service Bus queues and topics
BD do Cosmos para o AzureAzure Cosmos DB
Azure Event HubsAzure Event Hubs
HTTP/WebHook (GitHub, Slack)HTTP/WebHook (GitHub, Slack)
Azure Event GridAzure Event Grid
TemporizadorTimer
Filas e blobs de Armazenamento do Microsoft AzureAzure Storage queues and blobs
Filas e tópicos do Azure Service BusAzure Service Bus queues and topics
BD do Cosmos para o AzureAzure Cosmos DB
Azure Event HubsAzure Event Hubs
Sistema de FicheirosFile system
Idiomas suportadosSupported languages C#C#
F#F#
JavaScriptJavaScript
JavaJava
PythonPython
PowerShellPowerShell
C#1C#1
Gestores de pacotesPackage managers NPM e NuGetNPM and NuGet NuGet2NuGet2

1 WebJobs (sem o WebJobs SDK) suporta C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python, entre outros.1 WebJobs (without the WebJobs SDK) supports C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python, and more. Esta não é uma lista completa.This is not a comprehensive list. Um WebJob pode executar qualquer programa ou script que possa ser executado na sandbox do Serviço de Aplicações.A WebJob can run any program or script that can run in the App Service sandbox.

2 WebJobs (sem o WebJobs SDK) suporta NPM e NuGet.2 WebJobs (without the WebJobs SDK) supports NPM and NuGet.

ResumoSummary

O Azure Functions oferece mais produtividade do programador do que o Azure App Service WebJobs.Azure Functions offers more developer productivity than Azure App Service WebJobs does. Também oferece mais opções para a programação de linguagens, ambientes de desenvolvimento, integração de serviços Azure e preços.It also offers more options for programming languages, development environments, Azure service integration, and pricing. Para a maioria dos cenários, é a melhor escolha.For most scenarios, it's the best choice.

Eis dois cenários para os quais o WebJobs pode ser a melhor escolha:Here are two scenarios for which WebJobs may be the best choice:

  • Precisa de ter mais controlo sobre o código que escuta eventos, o objeto JobHost.You need more control over the code that listens for events, the JobHost object. As Funções oferecem um número limitado de formas de personalizar o comportamento JobHost no ficheiro host.json.Functions offers a limited number of ways to customize JobHost behavior in the host.json file. Por vezes, precisa de fazer coisas que não podem ser especificadas por uma cadeia num ficheiro JSON.Sometimes you need to do things that can't be specified by a string in a JSON file. Por exemplo, apenas o SDK do WebJobs permite configurar uma política de repetição personalizada para o Armazenamento do Microsoft Azure.For example, only the WebJobs SDK lets you configure a custom retry policy for Azure Storage.
  • Tem uma aplicação de Serviço de Aplicações para a qual pretende executar código snippets, e quer geri-los juntos no mesmo ambiente Azure DevOps.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.

Para outros cenários nos quais pretenda executar fragmentos de código para integrar serviços do Azure ou de terceiros, selecione as Funções do Azure sobre o WebJobs com o SDK do WebJobs.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.

Power Automamate, Logic Apps, Functions e WebJobs juntosPower Automate, Logic Apps, Functions, and WebJobs together

Não tens de escolher apenas um destes serviços.You don't have to choose just one of these services. Integram-se uns aos outros, assim como com serviços externos.They integrate with each other as well as they do with external services.

Um fluxo pode chamar uma aplicação lógica.A flow can call a logic app. Uma aplicação lógica pode chamar uma função e uma função pode chamar uma aplicação lógica.A logic app can call a function, and a function can call a logic app. Consulte, por exemplo, Criar uma função que se integra no Azure Logic Apps.See, for example, Create a function that integrates with Azure Logic Apps.

A integração entre Power Automamate, Logic Apps e Functions continua a melhorar ao longo do tempo.The integration between Power Automate, Logic Apps, and Functions continues to improve over time. Pode criar algo num serviço e utilizar noutros serviços.You can build something in one service and use it in the other services.

Pode obter mais informações sobre serviços de integração utilizando os seguintes links:You can get more information on integration services by using the following links:

Passos seguintesNext steps

Comece por criar o seu primeiro fluxo, aplicação lógica ou aplicação de funções.Get started by creating your first flow, logic app, or function app. Selecione qualquer um dos seguintes links:Select any of the following links: