Descubra o Azure Functions

Concluído

As Funções do Azure são uma solução sem servidor que lhe permite escrever menos código, manter menos infraestruturas e reduzir os custos. Em vez de se preocupar em implementar e manter servidores, a infraestrutura de cloud fornece todos os recursos atualizados necessários para manter as suas aplicações em execução.

Muitas vezes construímos sistemas para reagir a uma série de eventos críticos. Quer esteja a criar uma API Web, a responder a alterações na base de dados, a processar fluxos de dados IoT ou até mesmo a gerir filas de mensagens, cada aplicação precisa de uma forma de executar algum código à medida que estes eventos ocorrem.

Funções do Azure suporta acionadores, que são formas de iniciar a execução do seu código, e enlaces, que são formas para simplificar a codificação de dados de entrada e saída. Existem outros serviços de integração e automação no Azure e todos eles podem resolver problemas de integração e automatizar processos de negócios. Podem todos definir entradas, ações, condições e saídas.

Comparar o Azure Functions e o Azure Logic Apps

As Funções e as Aplicações Lógicas são Serviços do Azure que permitem 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 ou passos, chamados ações no Logic Apps, que são executados para cumprir tarefas complexas.

Nas Funções do Azure, vai desenvolver orquestrações ao escrever código e utilizar a extensão Durable Functions. Para o Logic Apps, crie orquestrações ao utilizar um GUI ou editar os ficheiros de configuração.

A tabela a seguir lista algumas das principais diferenças entre Funções e Aplicativos Lógicos:

Tópico Funções do Azure Logic Apps
Desenvolvimento Baseado em código (imperativo) Baseado no estruturador (declarativo)
Conetividade Cerca de uma dúzia de tipos de vinculação integrados, escrever código para vinculações personalizadas Grande coleção de conectores, Enterprise Integration Pack para cenários B2B, criar conectores personalizados
Ações Cada atividade é uma função do Azure; escrever código para funções de atividades Grande coleção de ações prontas a utilizar
Monitorização Azure Application Insights Portal do Azure, registos do Azure Monitor
Gestão API REST, Visual Studio Portal do Azure, API REST, PowerShell, Visual Studio
Contexto de execução É executado no Azure ou localmente É executado no Azure, localmente ou no local

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.

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:

Fator Funções WebJobs com o SDK do WebJobs
Modelo de aplicativo sem servidor com dimensionamento automático Sim No
Programação e testes no browser Sim No
Preços com pagamento por utilização Sim No
Integração com Logic Apps Sim No
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)
Folga)
Grelha de Eventos do Azure
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

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.