Design para soluções do Serviço de Aplicativo do Azure

Concluído

O Serviço de Aplicativo do Azure é um serviço baseado em HTTP que permite criar e hospedar aplicativos Web, trabalhos em segundo plano, back-ends móveis e APIs RESTful. Você pode usar a linguagem de programação de sua escolha e criar implantações automatizadas do GitHub, Azure DevOps ou qualquer repositório Git. O Serviço de Aplicativo oferece dimensionamento automático e alta disponibilidade.

Coisas a saber sobre o Serviço de Aplicativo do Azure

Com o Serviço de Aplicativo do Azure, todos os seus aplicativos compartilham benefícios comuns. Esses benefícios tornam o Serviço de Aplicativo a solução de computação ideal para qualquer aplicativo Web hospedado para suportar novas cargas de trabalho e migrar dados.

Flowchart that shows the decision tree for selecting Azure App Service to build new workloads and to support lift and shift migrations.

  • O Serviço de Aplicativo do Azure é um ambiente de plataforma como serviço (PaaS). Você se concentra no desenvolvimento do site e na lógica da API. O Azure lida com a infraestrutura para executar e dimensionar seus aplicativos Web.

  • O Serviço de Aplicativo oferece suporte ao desenvolvimento em vários idiomas e estruturas e oferece implantação e gerenciamento integrados com pontos de extremidade seguros.

  • O Serviço de Aplicativo oferece balanceamento de carga e gerenciamento de tráfego integrados em escala global com alta disponibilidade.

  • O Serviço de Aplicativo fornece recursos internos de autenticação e autorização (às vezes chamado de Easy Auth). Você pode entrar em usuários e acessar dados escrevendo um código mínimo ou nenhum.

Implementação contínua

O Serviço de Aplicativo do Azure permite a implantação contínua. O Azure DevOps fornece serviços de programadores para equipas de suporte para planear trabalho, colaborar no desenvolvimento de código e criar e implementar aplicações. Sempre que possível ao implantar continuamente seu código, use slots de implantação para uma nova compilação de produção.

Diagram that shows container slots for development, staging, primary, and production when using Azure App Service.

Ao escolher uma camada de Plano de Serviço de Aplicativo Padrão ou superior, você pode implantar seu aplicativo em um ambiente de preparação, validar suas alterações e fazer testes de desempenho. Quando estiver pronto, você pode trocar seus slots de preparação e produção. A operação de permuta aciona as instâncias de trabalho necessárias para corresponder à sua escala de produção.

Custos do Serviço de Aplicações do Azure

Você paga pelos recursos de computação do Azure que seu aplicativo usa enquanto processa solicitações. O custo é baseado no plano do Serviço de Aplicativo do Azure que você escolher. O plano do Serviço de Aplicações determina quanto do hardware é dedicado ao seu anfitrião. O plano especifica se você está usando hardware dedicado ou compartilhado e quanta memória é reservada. Você pode ter diferentes planos de serviço de aplicativo para aplicativos diferentes, e seu plano pode ser dimensionado para cima e para baixo a qualquer momento.

Coisas a considerar ao usar o Serviço de Aplicativo do Azure

Vamos examinar alguns cenários para usar o Serviço de Aplicativo do Azure. Ao analisar essas opções, pense em como integrar o Serviço de Aplicativo do Azure na infraestrutura do Tailwind Traders.

  • Considere aplicativos Web. Crie aplicativos Web com o Serviço de Aplicativo usando ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP ou Python. Pode escolher o Windows ou o Linux como o sistema operativo anfitrião.

  • Considere aplicativos de API. Crie aplicativos de API semelhantes às APIs da Web baseadas em REST com sua escolha de linguagem e estrutura. O Serviço de Aplicativo do Azure oferece suporte completo ao Swagger e a capacidade de empacotar e publicar sua API no Azure Marketplace. Os aplicativos podem ser consumidos de qualquer cliente HTTP ou HTTPS.

  • Considere WebJobs. Use o recurso WebJobs do Serviço de Aplicativo para executar um programa ou script. Exemplos de programas incluem Java, PHP, Python ou Node.js. Exemplos de script incluem cmd, bat, PowerShell ou Bash. WebJobs podem ser agendados ou executados por um gatilho. Os WebJobs são frequentemente utilizados para executar tarefas em segundo plano como parte da lógica da aplicação.

  • Considere aplicativos móveis. Exerça o recurso Aplicativos Móveis do Serviço de Aplicativo do Azure para criar rapidamente um back-end para aplicativos iOS e Android. No lado do aplicativo móvel, o Serviço de Aplicativo fornece suporte ao SDK para aplicativos nativos iOS e Android, Xamarin e React. Com apenas algumas etapas no portal do Azure, você pode:

    • Armazenar dados de aplicações móveis numa base de dados SQL com base na cloud.
    • Autenticar os clientes junto de fornecedores de redes sociais comuns, como MSA, Google, Twitter e Facebook.
    • Enviar notificações push.
    • Executar lógica de back-end personalizada em C# ou Node.js.
  • Considere a implantação contínua. Escolha a camada do Plano do Serviço de Aplicativo Padrão ou superior para habilitar a implantação contínua do seu código. Implante seu aplicativo em um slot de preparo e valide seu aplicativo com execuções de teste. Quando o aplicativo estiver pronto para lançamento, troque seus slots de preparação e produção. A operação de permuta aquece as instâncias de trabalho necessárias para corresponder à sua escala de produção, o que elimina o tempo de inatividade.

  • Considere a autenticação e a autorização. Aproveite os recursos de autenticação internos no Serviço de Aplicativo do Azure. Você não precisa de nenhuma linguagem, SDK, experiência em segurança ou até mesmo qualquer código para usar a funcionalidade em seu aplicativo Web ou API. Você pode integrar com vários provedores de login, como Microsoft Entra ID, Facebook, Google e Twitter. O Azure Functions oferece os mesmos recursos de autenticação internos que estão disponíveis no Serviço de Aplicativo.

  • Considere vários planos para reduzir custos. Configure diferentes planos do Serviço de Aplicativo do Azure para aplicativos diferentes. Aumente e diminua o seu plano a qualquer momento. Comece a testar seu aplicativo Web em um plano do Serviço de Aplicativo Gratuito e não pague nada. Quando quiser adicionar seu nome DNS personalizado ao aplicativo Web, basta dimensionar seu plano para a camada Compartilhado.