Escolher o destino ideal

Concluído

Discutimos as opções disponíveis para implantar um aplicativo Java na nuvem e, mais especificamente, no Azure. Mas qual opção melhor atende às suas necessidades específicas? Confira um guia para ajudar a escolher.

Plataforma como serviço ou controle de infraestrutura?

A primeira pergunta a ser feita é se você deseja ter controle total sobre seu aplicativo ou se deseja usar uma solução de PaaS (plataforma como serviço). Sua resposta geralmente depende das necessidades da equipe com a qual você está trabalhando.

As soluções de PaaS são mais fáceis de usar. Muitas equipes preferem usá-las, porque oferecem menor custo, melhor confiabilidade e maior segurança.

As equipes escolhem as soluções de PaaS pelos seguintes motivos:

  • Elas precisam passar rapidamente para a produção e têm apenas uma equipe de operações limitada ou nenhuma.
  • Elas têm certos requisitos de alta disponibilidade, segurança ou conformidade e essas necessidades podem ser atendidas por recursos prontos para uso fornecidos por um serviço gerenciado.
  • Elas podem não ter os recursos nem a disposição para manter uma infraestrutura de nível de produção.

No entanto, algumas equipes preferem ter controle total sobre a infraestrutura, principalmente pelos seguintes motivos:

  • Se você usa um software proprietário específico ou recursos Java não comuns, um serviço gerenciado pode não ser ideal para você. Por exemplo, o ideal é usar a difusão de rede para localizar os nós do aplicativo, e esse recurso não está disponível em um serviço gerenciado.
  • Ou, então, usar uma biblioteca nativa específica, que também não poderá ser executada em um serviço gerenciado.

Escolher uma solução de PaaS no Azure

Para executar cargas de trabalho Java em uma solução de plataforma como serviço, o Azure fornece quatro soluções possíveis:

  • Azure Functions: melhor para cargas de trabalho simples controladas por eventos que podem ser escaladas muito bem.
  • Serviço de Aplicativo do Azure: Ideal para executar cargas de trabalho do Jakarta EE.
  • Aplicativos Spring do Azure: melhores para executar aplicativos Spring Boot e, especificamente, microsserviços Spring Cloud.

Escolher o controle de infraestrutura no Azure

Para ter controle total sobre suas implantações, o Azure fornece as duas seguintes opções principais:

  • Aplicativos de Contêiner do Azure: Ideal para executar aplicativos monolíticos Java baseados em contêiner simples.
  • AKS (Serviço de Kubernetes do Azure): Ideal para aplicativos Java baseados em contêiner mais complexos. Você também será beneficiado pelo ecossistema do AKS.
  • Máquinas virtuais do Azure: melhor para executar qualquer tipo de carga de trabalho ou se você quiser fazer a migração por lift-and-shift de uma infraestrutura local existente sem precisar rearquitetar seus aplicativos.

Palavras finais para ajudar você a decidir

Decidir qual destino será usado é apenas a primeira etapa. Enquanto você escolhe seu serviço, tenha em mente o seguinte:

  • Suas tarefas de manutenção variam muito, dependendo do tipo de serviço escolhido e do conjunto de habilidades da própria equipe de operações.
  • Seus desenvolvedores usarão a plataforma diariamente e serão mais produtivos se esse serviço fornecer uma excelente experiência do desenvolvedor.

Levando em conta esses dois aspectos, sua escolha depende da equipe que você tem. A melhor prática é escolher um destino que corresponda ao conhecimento e às preferências da sua equipe.