La arquitectura utilizada para este aplicativo es de tipo orientada a servicios, lo cual significa que el sistema se construye a partir de varios “servicios” independientes que se comunican entre sí.
¿Qué es una arquitectura orientada a servicios? Una arquitectura orientada a servicios (también conocida como SOA, por sus siglas en inglés “Service-Oriented Architecture”) es un diseño en el que las funcionalidades del sistema se dividen en diferentes servicios especializados. Cada servicio tiene una tarea específica y puede funcionar de forma independiente de los demás. Esto significa que, aunque los servicios se comuniquen entre sí para ofrecer una experiencia unificada al usuario, cada uno puede actualizarse, mejorarse o escalarse sin afectar al resto del sistema.
Ventajas de esta arquitectura:
Flexibilidad y Reutilización: Los servicios pueden ser reutilizados en diferentes aplicaciones, ahorrando tiempo y esfuerzo.
Estos servicios se despliegan en servidores de aplicaciones wildfly: Una vez que los servicios están desarrollados, se despliegan (es decir, se ponen a funcionar) en servidores de aplicaciones. Estos servidores son programas especializados que se encargan de ejecutar los servicios y gestionarlos, proporcionando un entorno seguro, estable y eficiente para su funcionamiento.
El aplicativo está desarrollado en Java 11 y utiliza Spring Boot 2.x.x como su marco de trabajo principal. Java 11 es una versión moderna y estable de Java, que ofrece mejoras en rendimiento y seguridad en comparación con versiones anteriores. Por su parte, Spring Boot 2.x.x facilita la creación de aplicaciones empresariales al proporcionar herramientas y configuraciones automáticas que agilizan el desarrollo. Este entorno permite construir servicios de manera rápida, modular y escalable, lo que se ajusta perfectamente a la arquitectura orientada a servicios empleada en este sistema.
Los archivos fuente del aplicativo se encuentran almacenados en el siguiente repositorio: http://adacsc.co:1443/svn/repository/ADA/Ecosistema/Java/Microservicios/ModeloCentralizado/Fuentes/. Este repositorio centralizado permite acceder a todo el código del proyecto, facilitando la colaboración y el control de versiones entre los desarrolladores. Aquí se almacenan todas las versiones y ramas de desarrollo de los microservicios que componen la aplicación.