Partilhar via


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

Este artigo compara os seguintes serviços cloud do Microsoft:

Todos estes serviços podem resolver problemas de integração e automatizar processos comerciais. Podem todos definir entradas, ações, condições e saídas. Pode executar cada um com base numa agenda ou num acionador. Cada serviço tem vantagens únicas, e este artigo explica as diferenças.

Nota

Se você estiver procurando uma comparação mais geral entre o Azure Functions e outras opções de computação do Azure, consulte os seguintes artigos:

Para obter um resumo e uma comparação das opções de serviço de automação no Azure, consulte Escolher os serviços de automação no Azure.

Compare os Aplicativos Lógicos do Azure e o Microsoft Power Automate

Esses serviços são plataformas de integração que priorizam o designer, onde você pode criar e executar fluxos de trabalho automatizados. Ambas as plataformas se integram com vários softwares como serviço (SaaS) e aplicativos corporativos. Ambos fornecem designers de fluxo de trabalho semelhantes e, embora seus conectores compartilhem alguma sobreposição, cada plataforma também oferece seus próprios conectores exclusivos.

O Power Automate permite que usuários corporativos, trabalhadores de escritório e desenvolvedores cidadãos criem integrações simples sem precisar trabalhar com TI ou desenvolvedores ou escrever código. Um exemplo pode ser um fluxo de trabalho de aprovação para uma biblioteca de documentos do SharePoint. Os Aplicativos Lógicos do Azure dão suporte a integrações que variam de cenários de pouco a nenhum código a fluxos de trabalho mais avançados, codificados e complexos. Os exemplos incluem processos B2B ou cenários que exigem interações de nível empresarial com o Azure DevOps. Um fluxo de trabalho de negócios também pode crescer de simples para completo ao longo do tempo.

Para ajudá-lo a determinar se deseja usar os Aplicativos Lógicos do Azure ou o Power Automate para uma integração específica, consulte a tabela de comparação de capacidades.

Comparar o Azure Functions e o Azure Logic Apps

Esses serviços do Azure permitem que você crie e execute cargas de trabalho sem servidor. O Azure Functions é um serviço de computação sem servidor, enquanto os Aplicativos Lógicos do Azure são uma plataforma de integração de fluxo de trabalho sem servidor. Ambos podem criar orquestrações complexas. Uma orquestração é uma coleção de funções, que são chamadas de ações nos Aplicativos Lógicos do Azure, que você pode executar para concluir uma tarefa complexa. Por exemplo, para processar um lote de ordens, você pode executar muitas instâncias de uma função em paralelo, aguardar a conclusão de todas as instâncias e, em seguida, executar uma função que calcula um resultado na agregação.

Nas Funções do Azure, vai desenvolver orquestrações ao escrever código e utilizar a extensão Durable Functions. Para os Aplicativos Lógicos do Azure, você cria orquestrações usando um designer visual ou editando modelos do Azure Resource Manager.

Você pode misturar e combinar serviços ao criar uma orquestração. Por exemplo, você pode chamar funções de fluxos de trabalho de aplicativos lógicos e chamar fluxos de trabalho de aplicativos lógicos de funções. Selecione como criar cada orquestração com base nas capacidades dos serviços ou nas suas preferências pessoais. A tabela a seguir lista algumas diferenças importantes entre esses serviços:

Funções Duráveis Azure Logic Apps
Desenvolvimento Baseado em código (imperativo) Baseado no estruturador (declarativo)
Conetividade - Uma dúzia de tipos de vinculação incorporados
- Escrever código para ligações personalizadas
- 1.400+ conectores pré-construídos com gatilhos e ações
- Pacote de Integração Empresarial para cenários B2B
- Conectores personalizados
Ações Cada atividade é uma função do Azure; escrever código para funções de atividades 1.400+ conectores pré-construídos com gatilhos e ações
Monitorização Azure Application Insights - Portal do Azure
- Registos do Azure Monitor
- Microsoft Defender para Cloud
- Azure Application Insights para fluxos de trabalho padrão
- Verificação de integridade para fluxos de trabalho padrão

Para obter mais informações, consulte Monitorar fluxos de trabalho em Aplicativos Lógicos do Azure.
Gestão - API REST
- Visual Studio
- Portal do Azure
- Visual Studio Code
- API REST
- PowerShell
- CLI do Azure (fluxos de trabalho padrão)
- CLI do Azure (fluxos de trabalho de consumo)
Contexto de execução Pode ser executado localmente ou na nuvem Pode ser executado no Azure, localmente no Visual Studio Code ou em ambientes parcialmente conectados. Para obter mais informações, consulte O que são os Aplicativos Lógicos do Azure?

Comparar as Funções e o 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. 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.

WebJobs e o SDK de WebJobs

Você pode usar o recurso WebJobs do Serviço de Aplicativo para executar um script ou código no contexto de um aplicativo Web do Serviço de Aplicativo. 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. Por exemplo, pode responder à criação de um blob de imagem no Armazenamento do Microsoft Azure ao criar uma imagem de miniatura. O SDK do WebJobs é executado como uma aplicação da consola .NET, a qual pode implementar num 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. Um WebJob pode executar qualquer programa ou script que execute na sandbox do Serviço de Aplicações. 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.

Tabela de comparação

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. Aqui estão alguns fatores a serem considerados ao escolher entre o Azure Functions e WebJobs com o SDK do WebJobs:

Funções WebJobs com o SDK do WebJobs
Modelo de aplicação sem servidor com dimensionamento automático
Programação e testes no browser
Preços com pagamento por utilização
Integração com Logic Apps
Eventos desencadeadores Temporizador
Filas e blobs de Armazenamento do Microsoft Azure
Filas e tópicos do Azure Service Bus
BD do Cosmos para o Azure
Azure Event Hubs
HTTP/WebHook (GitHub, Slack)
Azure Event Grid
Temporizador
Filas e blobs de Armazenamento do Microsoft Azure
Filas e tópicos do Azure Service Bus
BD do Cosmos para o Azure
Azure Event Hubs
Sistema de Ficheiros
Idiomas suportados C#
F#
JavaScript
Java
Python
PowerShell
C#1
Gerenciadores de pacotes npm e NuGet NuGet2

1 WebJobs (sem o SDK WebJobs) suporta linguagens como C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python e muito mais. Um WebJob pode executar qualquer programa ou script que possa ser executado na sandbox do Serviço de Aplicações.

2 WebJobs (sem o SDK WebJobs) suporta npm e NuGet.

Resumo

O Azure Functions oferece mais produtividade de desenvolvedor do que o Azure App Service WebJobs. Ele também oferece mais opções para linguagens de programação, ambientes de desenvolvimento, integração de serviços do Azure e preços. Para a maioria dos cenários, é a melhor escolha.

Aqui estão dois cenários para os quais WebJobs pode ser a melhor escolha:

  • Precisa de ter mais controlo sobre o código que escuta eventos, o objeto JobHost. As Funções oferecem um número limitado de formas de personalizar o comportamento JobHost no ficheiro host.json. Às vezes, você precisa fazer coisas que não pode especificar usando uma cadeia de caracteres em um arquivo JSON. Por exemplo, apenas o SDK do WebJobs permite configurar uma política de repetição personalizada para o Armazenamento do Microsoft Azure.
  • Tem uma aplicação do Serviço de Aplicações para a qual pretende executar fragmentos de código e geri-los em conjunto no mesmo ambiente Azure DevOps.

Para outros cenários em que você deseja executar trechos de código para integrar o Azure ou serviços externos, escolha Azure Functions em vez de WebJobs com o SDK WebJobs.

Power Automate, Aplicativos Lógicos, Funções e WebJobs juntos

Você não precisa escolher apenas um desses serviços. Integram-se entre si e com serviços externos.

Um fluxo do Power Automate pode chamar um fluxo de trabalho dos Aplicativos Lógicos do Azure. Um fluxo de trabalho de Aplicativos Lógicos do Azure pode chamar uma função no Azure Functions e vice-versa. Por exemplo, consulte Criar uma função que se integra com os Aplicativos Lógicos do Azure.

Entre o Power Automate, os Aplicativos Lógicos do Azure e o Functions, a experiência de integração entre esses serviços continua a melhorar ao longo do tempo. Você pode criar um componente em um serviço e usar esse componente nos outros serviços.

Para obter mais informações sobre serviços de integração, consulte os seguintes artigos:

Próximos passos

Comece criando seu primeiro fluxo, fluxo de trabalho de aplicativo lógico ou aplicativo de função. Selecione qualquer um dos seguintes links: