Visão geral do 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.
Você se concentra no código que mais importa para você, na linguagem mais produtiva para você, e o Azure Functions manipula o restante.
Para obter a melhor experiência com a documentação do Functions, escolha sua linguagem de desenvolvimento preferida na lista de linguagens nativas do Functions na parte superior do artigo.
Cenários
O Functions fornece um conjunto abrangente de gatilhos e associações controlados por eventos que conectam suas funções a outros serviços sem precisar escrever código extra.
Veja a seguir um conjunto comum, mas não exaustivo, de cenários integrados que possuem o Functions.
Se desejar... | então… |
---|---|
Processar uploads de arquivo | Executar o código quando um arquivo for carregado ou alterado no armazenamento de blobs. |
Processar dados em tempo real | Capturar e transformar dados de fluxos de origem de eventos e IoT a caminho do armazenamento. |
Inferir em modelos de dados | Efetue pull de texto de uma fila e apresente-o a vários serviços de IA para análise e classificação. |
Executar tarefa agendada | Executar código de limpeza de dados em intervalos de tempo predefinidos. |
Criar uma API Web escalonável | Implemente um conjunto de pontos de extremidade REST para seus aplicativos Web usando gatilhos HTTP. |
Criar um fluxo de trabalho sem servidor | Criar um fluxo de trabalho controlado por eventos a partir de uma série de funções usando Durable Functions. |
Responder a alterações no banco de dados | Execute a lógica personalizada quando um documento for criado ou atualizado no Azure Cosmos DB. |
Criar sistemas de mensagens confiáveis | Processe filas de mensagens usando o Armazenamento de Filas, o Barramento de Serviço ou os Hubs de Eventos. |
Esses cenários permitem que você crie sistemas controlados por eventos usando padrões de arquitetura modernos. Para obter mais informações, confira Cenários do Azure Functions.
Ciclo de vida de desenvolvimento
Com o Functions, você escreve seu código de função em sua linguagem preferida usando suas ferramentas de desenvolvimento favoritas e implanta seu código na nuvem do Azure. O Functions fornece suporte nativo para desenvolvimento em C#, Java, JavaScript, PowerShell, Python, além da capacidade de usar mais linguagens, como Rust e Go.
O Functions integra-se diretamente ao Visual Studio, Visual Studio Code, Maven e outras ferramentas de desenvolvimento populares para habilitar implantações e depuração contínuas.
O Functions também se integra ao Azure Monitor e ao Azure Application Insights para fornecer telemetria de runtime abrangente e análise de suas funções na nuvem.
Opções de hospedagem
O Functions fornece uma variedade de opções de hospedagem para suas necessidades de negócios e carga de trabalho de aplicativo. As opções de hospedagem de escala controladas por eventos variam de totalmente sem servidor, em que você paga apenas pelo tempo de execução (Plano de Consumo), a instâncias sempre quentes e prontas para tempos de resposta mais rápidos (Plano Premium).
Quando você tiver recursos de hospedagem do Serviço de Aplicativo em excesso, poderá hospedar suas funções em um plano do Serviço de Aplicativo existente. Esse tipo de plano de hospedagem dedicado também é uma boa opção quando você precisa de comportamentos de escala e custos de suas funções.
Se você quiser ter controle total sobre o ambiente e as dependências do Functions Runtime, poderá até mesmo implantar suas funções em contêineres que podem ser totalmente personalizados. Seus contêineres personalizados podem ser hospedados pelo Functions, implantados como parte de uma arquitetura de microsserviços em Aplicativos de Contêiner do Azure ou até mesmo auto-hospedados no Kubernetes.