Escolher o destino certo
Discutimos as opções disponíveis para implantar um aplicativo Java na nuvem e, mais especificamente, no Azure. Mas que opção melhor se adequa às suas necessidades específicas? Eis um guia para o ajudar a escolher.
Plataforma como serviço ou controlo de infraestrutura?
A primeira pergunta a fazer é se quer ter controlo total sobre a sua aplicação ou se quer utilizar uma solução de plataforma como serviço (PaaS). Sua resposta geralmente depende das necessidades da equipe com a qual você está trabalhando.
As soluções PaaS são mais fáceis de usar. Muitas equipas preferem-nas, uma vez que oferecem um custo mais baixo, melhor fiabilidade e maior segurança.
As equipas optam pelas soluções PaaS pelos seguintes motivos:
- Precisam de passar rapidamente à produção e têm apenas uma equipa de operações limitada ou não têm sequer equipa de operações.
- Eles têm certos requisitos de alta disponibilidade, segurança ou conformidade, e podem atender a essas necessidades com recursos prontos para uso que um serviço gerenciado oferece.
- Poderá não ter os recursos ou a disposição para efetuar a manutenção de uma infraestrutura de nível de produção.
No entanto, algumas equipas preferem ter o controlo total da infraestrutura, principalmente pelos seguintes motivos:
- Se você estiver usando software proprietário específico ou recursos Java não comuns, um serviço gerenciado pode não ser o ideal para você. Por exemplo, pode querer utilizar a transmissão de rede para localizar os nós da sua aplicação e esta funcionalidade não está disponível num serviço gerido.
- Pode também querer utilizar uma biblioteca nativa em específico, que também não poderá ser executada num serviço gerido.
Escolher uma solução PaaS no Azure
Para executar cargas de trabalho Java em uma plataforma como uma solução de serviço, o Azure fornece quatro opções possíveis:
- Azure Functions: Ideal para cargas de trabalho simples orientadas a eventos que podem ser dimensionadas extremamente bem.
- Serviço de Aplicativo do Azure: melhor para executar cargas de trabalho do Jakarta EE.
- Azure Spring Apps: Melhor para executar aplicativos Spring Boot e, mais especificamente, microsserviços Spring Cloud.
Escolher o controlo de infraestrutura no Azure
Para obter o controlo total das suas implementações, o Azure fornece as duas seguintes opções principais:
- Azure Container Apps: Ideal para executar aplicativos monolíticos Java simples baseados em contêiner.
- Azure Kubernetes Service (AKS): Ideal para aplicativos Java baseados em contêiner mais complexos. Você também se beneficia do rico ecossistema AKS.
- Máquinas virtuais do Azure: melhor para executar qualquer tipo de carga de trabalho ou se você quiser "elevar e mudar" de uma infraestrutura local existente sem rearquitetar seus aplicativos.
Considerações finais para ajudar na decisão
Decidir um destino é apenas o primeiro passo. À medida que escolher o seu serviço, tenha em atenção o seguinte:
- As suas tarefas de manutenção irão variar bastante consoante o tipo de serviço que escolher e o conjunto de competências da sua própria equipa de operações.
- Os seus programadores utilizarão a plataforma diariamente e serão mais produtivos se o serviço proporcionar uma ótima experiência de programação.
Para ambos estes pontos, a sua escolha depende da equipa que tiver. A melhor prática é escolher um destino que corresponda aos conhecimentos e às preferências da sua equipa.