Como funciona o Azure Functions

Concluído

Aqui, você aprenderá sobre como usar o Azure Functions para desenvolver arquiteturas sem servidor e usar as várias implementações de recursos fornecidas pelo Functions.

Você também aprenderá mais sobre como o Azure Functions funciona. Isso também ajudará você a determinar como você pode usar melhor o Azure Functions para atender aos requisitos da sua organização.

O Azure Functions é uma solução de computação sem servidor que permite escrever menos código. É uma oferta de plataforma como serviço para que você não precise se preocupar em hospedar seu aplicativo e economizar custos.

Funções do Azure é uma excelente solução para processar dados, integrar sistemas, trabalhar com a Internet das Coisas (IoT) e a criação de API simples e micro-serviços.

Dimensionamento de aplicativos de função

O contexto no qual suas funções são executadas é chamado de aplicativo de função. Um aplicativo de função é uma unidade de implantação, gerenciamento e dimensionamento para suas funções. Todas as funções em um aplicativo de função compartilham a mesma configuração e conexões.

Nos planos Consumo e Premium, o Functions dimensiona os recursos de CPU e memória adicionando mais instâncias de aplicativos de função. O número de instâncias é determinado com base no número de eventos que acionam uma função. Todas as funções dentro de um aplicativo de função compartilham recursos dentro de uma instância e são dimensionadas ao mesmo tempo.

Monitoramento do Azure Functions

O Azure Functions oferece integração interna com o Azure Application Insights para monitorar funções. O Application Insights recolhe dados de registo, desempenho e erro. Ele ajuda você a detetar anomalias de desempenho, diagnosticar problemas e entender melhor como suas funções são usadas.

A instrumentação do Application Insights é incorporada ao Azure Functions. Com a integração do Application Insights, os dados de telemetria são enviados para sua instância conectada do Application Insights. Esses dados incluem logs gerados pelo host Functions, rastreamentos gravados a partir do código de funções e dados de desempenho.

Nota

Além dos dados de suas funções e do host de funções, você também pode coletar dados do controlador de escala de funções.

A imagem a seguir mostra um exemplo de como exibir dados no Application Insights para um aplicativo de função.

Screenshot showing Monitoring telemetry data for Azure Functions

Componentes do Azure Functions

A tabela a seguir descreve os principais componentes do Azure Functions:

Componente Description
Gatilhos de função Os gatilhos são o que fazem com que uma função seja executada. Um acionador define como uma função é invocada e uma função tem de ter exatamente um acionador.
Ligações de função A vinculação a uma função é uma forma de conectar declarativamente outro recurso à função; As ligações podem ser conectadas como ligações de entrada, ligações de saída ou ambas. Os dados de enlaces são fornecidos à função como parâmetros. Se você não quiser ou não puder usar associações, ainda poderá usar um SDK de cliente em suas funções como faria normalmente ao se conectar a serviços.
Tempo de execução da função Atualmente, o Azure Functions dá suporte a várias versões do host de tempo de execução. As funções também suportam muitos tempos de execução diferentes, como .NET Core, Node.js, Java, PowerShell e Python. Durante o desenvolvimento, você pode instalar o tempo de execução do Functions em seu computador local e executar funções localmente usando as Ferramentas Principais do Azure Functions.
Gestão de API O APIM fornece segurança e roteamento para seus pontos de extremidade de função acionados por HTTP como uma maneira de expô-los como uma verdadeira API REST.
Blocos de implementação Os slots de implantação do Azure Functions permitem que seu aplicativo de função execute diferentes instâncias chamadas "slots". Os slots são ambientes diferentes expostos por meio de um ponto de extremidade disponível publicamente. Os slots fornecem uma maneira de testar uma nova versão de suas funções no Azure em um ambiente seguro e, em seguida, trocar perfeitamente a nova versão para produção.
Configuração do aplicativo de função Cadeias de conexão, variáveis de ambiente e outras configurações de aplicativo são definidas separadamente para cada aplicativo de função. Os valores das configurações do aplicativo de função podem ser lidos no código como variáveis de ambiente.

Esses componentes trabalham juntos para fornecer uma plataforma completa de ponta a ponta para engenheiros de aplicativos e DevOps desenvolverem arquiteturas sem servidor aproveitando o Azure Functions.

Verifique o seu conhecimento

1.

Quantos gatilhos tem uma Função do Azure?