Cómo elegir el servicio de Azure adecuado para implementar una aplicación de Java. Parte 2

Elección del destino adecuado

Hemos visto las opciones disponibles para implementar una aplicación de Java en la nube y, más concretamente, en Azure. Pero ¿qué opción se adapta mejor a sus necesidades específicas? Esta es una guía para ayudarle a elegir.

¿Plataforma como servicio o control de infraestructura?

La primera pregunta que se debe plantear es si quiere tener un control total de la aplicación o si prefiere usar una solución de plataforma como servicio (PaaS). Normalmente, la respuesta depende de las necesidades del equipo con el que esté trabajando.

Las soluciones de plataforma como servicio son más fáciles de usar. Muchos equipos las prefieren porque ofrecen un costo más bajo, mejor confiabilidad y mayor seguridad.

Los equipos eligen soluciones de PaaS por los siguientes motivos:

  • Deben ir a producción rápidamente y solo tienen un equipo de operaciones limitado, o ni siquiera lo tienen.
  • Tienen ciertos requisitos de alta disponibilidad, seguridad o cumplimiento y estas necesidades se pueden cumplir gracias a las características integradas que proporciona un servicio administrado.
  • Podrían no tener los recursos o la voluntad para mantener una infraestructura de nivel de producción.

Pero algunos equipos prefieren tener un control total sobre su infraestructura, principalmente por los siguientes motivos:

  • Si usa un software propietario específico o características de Java no comunes, es posible que un servicio administrado no se ajuste a sus necesidades. Por ejemplo, puede que quiera usar la transmisión de red para buscar los nodos de la aplicación, y esta característica no está disponible en un servicio administrado.
  • Puede que quiera usar una biblioteca nativa específica, que tampoco podrá ejecutarse en un servicio administrado.

Elección de una solución de PaaS en Azure

Para ejecutar cargas de trabajo de Java en una solución de plataforma como servicio, Azure ofrece tres posibles opciones:

  • Azure Functions: ideal para cargas de trabajo simples orientadas a eventos que se pueden escalar muy bien.
  • Azure App Service: ideal para aplicaciones web normales o para ejecutar cargas de trabajo de Jakarta EE.
  • Azure Spring Cloud: ideal para ejecutar aplicaciones de Spring Boot y, más concretamente, microservicios de Spring Cloud.

Elección del control de infraestructura en Azure

Para tener un control total sobre las implementaciones, Azure proporciona las dos opciones principales siguientes:

  • Azure Kubernetes Service (AKS): ideal para ejecutar imágenes de Docker. También se beneficia del variado ecosistema de AKS.
  • Máquinas virtuales de Azure: ideales para ejecutar cualquier tipo de carga de trabajo, o si quiere migrar mediante “lift-and-shift” desde una infraestructura local existente sin tener que rediseñar las aplicaciones.

Palabras finales que le ayudarán a decidir

Decidir un destino es solo un primer paso. Cuando vaya a elegir el servicio, tenga en cuenta lo siguiente:

  • Las tareas de mantenimiento variarán en gran medida en función del tipo de servicio que elija y del conjunto de aptitudes de su equipo de operaciones.
  • Los desarrolladores usarán la plataforma a diario y, por tanto, serán más productivos si el servicio proporciona una excelente experiencia de desarrollador.

En ambos casos, su elección depende del equipo que tenga. El procedimiento recomendado consiste en elegir un destino que coincida con la experiencia y las preferencias del equipo.

FUENTE: https://n9.cl/cbbay