es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Aplicación de microservicios desplegable en un antiguo servidor de aplicaciones JavaEE.

¡Tengo un gran problema y espero que alguien pueda ayudarme!

Me gustaría refactorizar una antigua aplicación JavaEE heredada.

La refactorización que tengo en mente es muy profunda y me gustaría rediseñar la aplicación moviéndome hacia una arquitectura de microservicios utilizando Java de nuevo.

Hay muchos frameworks para hacer eso, pero me gustaría usar uno de los siguientes: Quarkus (mi favorito), Microprofile y Vert.x.

El problema es que tengo la indicación de que la nueva aplicación debe ser implantable en antiguos servidores de aplicaciones, como WebSphere 8.5.5, WebLogic 12c, y debe poder ser implantable en un entorno Kubernetes sin ningún servidor de aplicaciones.

¿Hay alguna manera de cumplir con este último requisito?

¡Cualquier ayuda será muy apreciada!

¡Muchas gracias!

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Como experto en tecnología de la información especializado en Kubernetes, Jakarta-EE, microservicios, legado y servidores de aplicaciones, puedo ofrecerle orientación sobre su situación. Es posible cumplir con el requisito de implementar su nueva aplicación de microservicios en antiguos servidores de aplicaciones, como WebSphere 8.5.5 y WebLogic 12c, así como en un entorno de Kubernetes sin un servidor de aplicaciones.

    En primer lugar, recomendaría utilizar un marco de trabajo que admita tanto los servidores de aplicaciones heredados como los entornos nativos de la nube en Kubernetes. Quarkus y MicroProfile son excelentes opciones en este caso, ya que ambos proporcionan soporte de tiempo de ejecución para servidores de aplicaciones tradicionales y están optimizados para implementaciones nativas en la nube en Kubernetes.

    En segundo lugar, asegúrese de que sus microservicios estén diseñados y construidos sin dependencias de ningún servidor de aplicaciones. Esto significa que todos los componentes de la aplicación deben poder ejecutarse de manera aislada, sin depender de ninguna funcionalidad específica del servidor de aplicaciones. Para lograr esto, puede utilizar estándares de Jakarta EE, como JAX-RS para servicios web RESTful, JPA para persistencia y CDI para inyección de dependencias.

    Finalmente, puede aprovechar la contenerización y Kubernetes para implementar su aplicación de microservicios sin un servidor de aplicaciones. Los contenedores Docker se pueden utilizar para empaquetar cada microservicio, junto con sus dependencias, en una sola unidad que se puede ejecutar en cualquier plataforma. Kubernetes proporciona una plataforma para administrar y orquestar sus contenedores, lo que le permite implementar, escalar y actualizar fácilmente su aplicación.

    En resumen, es posible cumplir con su requisito de implementar su aplicación de microservicios en antiguos servidores de aplicaciones y en un entorno de Kubernetes sin un servidor de aplicaciones. Al utilizar un marco de trabajo que admita tanto servidores de aplicaciones tradicionales como implementaciones nativas en la nube, diseñar sus microservicios para que sean independientes de cualquier dependencia del servidor de aplicaciones y aprovechar la contenerización y Kubernetes, puede modernizar con éxito su aplicación heredada.

Comments are closed.