Descobrir o Azure Functions
O Azure Functions é uma solução sem servidor que permite que você escreva menos código, mantenha menos infraestrutura e economize nos custos. Em vez de se preocupar com a implantação e manutenção de servidores, a infraestrutura de nuvem fornece todos os recursos atualizados necessários para manter seus aplicativos em execução.
Muitas vezes, criamos sistemas para reagir a uma série de eventos críticos. Se você estiver criando uma API Web, respondendo a alterações no banco de dados, processando fluxos IoT ou até mesmo gerenciando filas de mensagens - cada aplicativo precisa ter uma forma de executar algum código à medida que esses eventos ocorrem.
O Azure Functions dá suporte a gatilhos, que são maneiras de iniciar a execução do seu código, e associações, que são maneiras de simplificar a codificação de dados de entrada e de saída. Há 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. Todos eles definem entrada e saída, condições e ações.
Comparar o Azure Functions e os Aplicativos Lógicos do Azure
O Azure Functions e os Aplicativos Lógicos são serviços do Azure que permitem habilitar cargas de trabalho sem servidor. O Azure Functions é um serviço de computação sem servidor, enquanto os Aplicativos Lógicos do Azure fornecem 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 etapas, chamadas ações nos Aplicativos Lógicos, que são executadas para realizar uma tarefa complexa.
Para o Azure Functions, você desenvolve orquestrações escrevendo o código e usando a extensão Durable Functions. Para os Aplicativos Lógicos, você pode criar orquestrações usando uma GUI ou editando arquivos de configuração.
A seguinte tabela lista algumas das principais diferenças entre o Functions e os Aplicativos Lógicos:
Tópico | Funções do Azure | Aplicativos Lógicos |
---|---|---|
Desenvolvimento | Primeiro o código (obrigatória) | Primeiro o designer (declarativa) |
Conectividade | Cerca de doze tipos internos de associação + possibilidade de escrita de código para associações personalizadas | Grande conjunto de conectores + Enterprise Integration Pack para cenários de B2B + possibilidade de criar conectores personalizados |
Ações | Cada atividade é uma função do Azure. Escrever código para funções de atividade | Grande conjunto de ações predefinidas |
Monitoring | Azure Application Insights | Portal do Azure, logs do Azure Monitor |
Gerenciamento | 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 Functions e WebJobs
Como no Azure Functions, o WebJobs do Serviço de Aplicativo do Azure com o SDK do WebJobs é um serviço de integração com prioridade de código que foi projetado para desenvolvedores. Ambos são criados no Serviço de Aplicativo do Azure e dão suporte a recursos como integração de controle de origem, autenticação e monitoramento com integração do Application Insights.
O Azure Functions se baseia no SDK do WebJobs e, portanto, compartilha muitos dos mesmos gatilhos de evento e conexões com outros serviços do Azure. Estes são alguns fatores a serem considerados quando você escolher entre o Azure Functions e o 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 |
Desenvolver e testar no navegador | Sim | No |
Preço de pagamento por uso | Sim | No |
Integração com os Aplicativos Lógicos | Sim | No |
Eventos de gatilho | Temporizador Blobs e filas do Armazenamento do Azure Filas e tópicos do Barramento de Serviço do Azure Azure Cosmos DB Hubs de eventos do Azure HTTP/WebHook (GitHub Slack) Grade de Eventos do Azure |
Temporizador Blobs e filas do Armazenamento do Azure Filas e tópicos do Barramento de Serviço do Azure Azure Cosmos DB Hubs de eventos do Azure Sistema de arquivos |
O Azure Functions oferece mais produtividade para o desenvolvedor do que o WebJobs do Serviço de Aplicativo do Azure. Também oferece mais opções de linguagens de programação, ambientes de desenvolvimento, integração de serviços do Azure e preços. Na maioria dos cenários, é a melhor opção.