O que é o Azure Functions?
O Azure Functions é um serviço de computação baseado em nuvem que fornece computação sem servidor escalável e controlada por eventos para o Azure. Em alguns casos, você só é cobrado pelo tempo em que o código de função é executado.
Você poderá usar o Azure Functions para executar seu código quando precisar que ele seja executado. Por exemplo, seu código pode ser executado como resultado de um evento ou alteração, como quando uma mensagem chega em uma fila ou quando um objeto armazenado é atualizado. Você também pode definir um intervalo agendado para a execução do código usando regras cron
.
Usar gatilhos para decidir quando executar código
O Azure Functions permite definir gatilhos, que iniciam a execução do código. Os gatilhos também podem processar entradas para passar dados para suas funções. Cada função pode ter apenas um gatilho. Alguns dos tipos de gatilho compatíveis com as funções do Azure incluem:
- Armazenamento: Você pode escutar eventos de bancos de dados como o Azure Cosmos DB. Por exemplo, quando uma nova linha é inserida.
- Eventos: a Grade de Eventos do Azure e os Hubs de Eventos produzem eventos que podem disparar seu código.
- Código HTTP: as solicitações da Web e os webhooks podem disparar o código HTTP.
- Filas: as mensagens da fila também podem ser processadas.
- Temporizador: Invocar o código com base em um intervalo de tempo especificado.
Use associações para se conectar a fontes de dados
As associações são maneiras de simplificar a codificação para dados de entrada e saída. Embora você possa usar um SDK de cliente para se conectar a serviços a partir do código da função, o Azure Functions fornece associações para simplificar essas conexões. Essencialmente, as associações são códigos de conexão que você não precisa escrever. Você pode integrar-se a muitos serviços no Azure para resolver problemas de integração e automatizar processos de negócios.
As associações têm duas formas: entrada e saída. Uma associação de saída fornece uma maneira de gravar dados no destino de dados, por exemplo, colocar uma mensagem em uma fila ou em uma nova linha em um banco de dados. Uma associação de entrada pode ser usada para passar dados para sua função a partir de uma fonte de dados diferente daquela que disparou a função.
Recursos
Há alguns recursos que tornam Azure Functions uma escolha atraente:
Planos de hospedagem flexíveis. Há três planos de hospedagem diferentes para atender às suas necessidades de negócios.
- Plano de consumo. Uma opção de hospedagem totalmente sem servidor para Funções. O Functions escala automaticamente e você paga apenas pelos recursos de computação quando suas funções estiverem em execução. Esse plano fornece computação econômica para cargas de trabalho de processo curto, que tendem a ser mais intermitentes com cargas menos previsíveis.
- Plano Premium. Neste plano, suas funções são mantidas inicializadas, o que significa que não há atraso após ociosidade. O plano Premium é uma boa opção quando seu aplicativo de funções precisa ser executado por longos períodos, mas você ainda precisa de escala dinâmica. Esse plano também permite que você comece a dimensionar com mais recursos mais rapidamente do que com o plano de Consumo. No plano de Consumo, também há limites no tempo de execução, que este plano pode substituir. Embora você ainda obtenha as vantagens de custo da escala dinâmica, você paga mais.
- Plano dedicado. Você executa suas funções com um plano do Serviço de Aplicativo regular. É melhor para cenários em que suas funções precisam ser executadas continuamente. Outro benefício é que você controla totalmente como o aplicativo é dimensionado e pode prever os custos mais facilmente. Um plano Dedicado também é uma boa escolha quando você tem um plano do Serviço de Aplicativo existente, mas subutilizado, disponível.
Dimensionamento dinâmico. Na maioria dos planos, as funções são dimensionadas dinamicamente com base na carga. Quando a demanda de execução aumenta, mais recursos são alocados automaticamente para o serviço e, quando as solicitações caem, recursos e instâncias de aplicativo são removidos automaticamente. No plano de Consumo, você não paga nada por funções ociosas.
Arquitetura baseada em eventos. As funções devem ser pequenas e focadas. Elas processam dados de entrada e são concluídas ou geram um novo evento por sua vez. Algumas áreas de uso comuns das funções do Azure são enviar emails, iniciar backup, processamento de pedidos, agendamento de tarefas, como limpeza de banco de dados, envio de notificações, mensagens e processamento de dados de IoT.