Desenvolvimento e implementação de aplicações
Para desenvolver e implantar aplicativos sem servidor com o Azure Functions, examine padrões e práticas, configure pipelines de DevOps e implemente práticas recomendadas de SRE (engenharia de confiabilidade de site).
Para obter informações detalhadas sobre arquiteturas sem servidor e Azure Functions, consulte:
- Aplicativos sem servidor: arquitetura, padrões e implementação do Azure
- Azure Serverless Computing Cookbook
- Exemplo de arquiteturas de referência sem servidor
Planeamento
Para planejar o desenvolvimento e a implantação de aplicativos:
- Prepare o ambiente de desenvolvimento e configure o fluxo de trabalho.
- Estruture projetos para dar suporte ao desenvolvimento do aplicativo Azure Functions.
- Identifique gatilhos de aplicativos, associações e requisitos de configuração.
Compreender a arquitetura orientada a eventos
Um evento diferente dispara cada função em um projeto Functions sem servidor. Para obter mais informações sobre arquiteturas controladas por eventos, consulte:
- Estilo de arquitetura orientada a eventos.
- Padrões de design orientados a eventos para aprimorar aplicativos existentes usando o Azure Functions
Preparar o ambiente de desenvolvimento
Configure seu fluxo de trabalho e ambiente de desenvolvimento com as ferramentas para criar Funções. Para obter detalhes sobre ferramentas de desenvolvimento e estrutura de projeto de código do Functions, consulte:
- Criar código e testar as Funções do Azure localmente
- Desenvolver as Funções do Azure com o Visual Studio Code
- Desenvolver as Funções do Azure com o Visual Studio
- Trabalhar com as Ferramentas Principais do Azure Functions
- Estrutura de pastas
Desenvolvimento
Decida qual a linguagem de desenvolvimento a ser usada. O Azure Functions suporta C#, F#, PowerShell, JavaScript, TypeScript, Java e Python. Todas as funções de um projeto devem estar na mesma linguagem. Para obter mais informações, consulte Idiomas com suporte no Azure Functions.
Definir gatilhos e ligações
Um gatilho invoca uma Função e cada Função deve ter exatamente um gatilho. A vinculação a uma Função conecta declarativamente outro recurso à Função. Para obter mais informações sobre acionadores e associações de funções, consulte:
- Conceitos dos acionadores e dos enlaces das Funções do Azure
- Executar uma função do Azure com gatilhos
- Encadear funções do Azure usando associações de entrada e saída
Criar o aplicativo Functions
As funções seguem o princípio da responsabilidade única: fazer apenas uma coisa. Para obter mais informações sobre o desenvolvimento de funções, consulte:
- Guia de desenvolvedores do Azure Functions
- Criar aplicativos sem servidor
- Estratégias para testar seu código no Azure Functions
- Melhores práticas das Funções
Usar funções duráveis para fluxos de trabalho com monitoração de estado
As Funções Duráveis no Azure Functions permitem definir fluxos de trabalho com monitoração de estado em um ambiente sem servidor escrevendo funções de orquestrador e entidades com estado escrevendo funções de entidade. As funções duráveis gerenciam o estado, os pontos de verificação e as reinicializações, permitindo que você se concentre na lógica de negócios. Para obter mais informações, consulte O que são funções duráveis.
Compreender e resolver o problema dos arranques a frio
Se o número de instâncias de host sem servidor for reduzido a zero, a próxima solicitação terá a latência adicional de reiniciar o aplicativo Function, chamado de cold start. Para minimizar o impacto no desempenho de arranques a frio, reduza as dependências que a aplicação Functions precisa de carregar no arranque e utilize o menor número possível de chamadas e operações grandes e síncronas. Para obter mais informações sobre dimensionamento automático e partidas a frio, consulte Operações de funções sem servidor.
Gerir segredos da aplicação
Por motivos de segurança, não armazene credenciais no código do aplicativo. Para usar o Cofre de Chaves do Azure com o Azure Functions para armazenar e recuperar chaves e credenciais, consulte Usar referências do Cofre de Chaves para o Serviço de Aplicativo e o Azure Functions.
Para obter mais informações sobre a segurança do aplicativo Serverless Functions, consulte Segurança do Serverless Functions.
Implementação
Para preparar o aplicativo Functions sem servidor para produção, certifique-se de que:
- Cumpra os requisitos de recursos do aplicativo.
- Monitore todos os aspetos do aplicativo.
- Diagnostique e solucione problemas de aplicativos.
- Implante novas versões de aplicativos sem afetar os sistemas de produção.
Definir tecnologia de implantação
Decida sobre a tecnologia de implantação e organize versões agendadas. Para obter mais informações sobre como a implantação do aplicativo Functions permite atualizações confiáveis sem tempo de inatividade, consulte Tecnologias de implantação no Azure Functions.
Evite usar muitas conexões de recursos
As funções em um aplicativo do Functions compartilham recursos, incluindo conexões com HTTPS, bancos de dados e serviços, como o Armazenamento do Azure. Quando muitas funções estão sendo executadas simultaneamente, é possível ficar sem conexões disponíveis. Para obter mais informações, consulte Gerenciar conexões no Azure Functions.
Configurar registro, alertas e monitoramento de aplicativos
O Application Insights no Azure Monitor coleta dados de log, desempenho e erro. O Application Insights deteta automaticamente anomalias de desempenho e inclui poderosas ferramentas de análise para ajudar a diagnosticar problemas e entender o uso da função.
Para obter mais informações sobre monitoramento e registro em log de aplicativos, consulte:
- Monitorizar as Funções do Azure
- Monitorando o Azure Functions com os Logs do Azure Monitor
- Recursos suportados do Application Insights for Azure Functions
Diagnosticar e solucionar problemas
Saiba como usar efetivamente o diagnóstico para solução de problemas em cenários proativos e que priorizam problemas. Para mais informações, consulte:
- Mantenha seus aplicativos do Serviço de Aplicativo do Azure e do Azure Functions saudáveis e felizes
- Como corrigir o problema “O Runtime das Funções do Azure está inacessível”
Implante aplicativos usando um pipeline automatizado e DevOps
A automação completa de todas as etapas, desde a confirmação do código até a implantação da produção, permite que as equipes se concentrem na criação de código e remove a sobrecarga e o potencial erro humano das etapas manuais. A implantação de novo código é mais rápida e menos arriscada, ajudando as equipes a se tornarem mais ágeis, mais produtivas e mais confiantes em relação ao seu código.
Para obter mais informações sobre DevOps e implantação contínua (CD), consulte:
- Implementação contínua para Funções do Azure
- Entrega contínua usando o Azure DevOps
- Entrega contínua usando o GitHub Action
Otimização
Quando o aplicativo estiver em produção, prepare-se para dimensionamento e implemente a engenharia de confiabilidade do local (SRE).
Garanta a escalabilidade ideal
Para obter informações sobre fatores que afetam a escalabilidade do aplicativo Functions, consulte:
Implementar práticas SRE
A Engenharia de Confiabilidade de Site (SRE) é uma abordagem comprovada para manter a confiabilidade crucial do sistema e do aplicativo, enquanto itera na velocidade que o mercado exige. Para mais informações, consulte:
Próximos passos
Para obter instruções práticas de desenvolvimento e implantação do aplicativo Functions sem servidor, consulte:
Para obter um manual de engenharia para ajudar equipes e clientes a implementar com sucesso projetos de funções sem servidor, consulte o Code-With Customer/Partner Engineering Playbook.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários