Diferencia entre arquitectura monolítica y de microservicios

Conoce la principal diferencia entre una arquitectura monolítica y una arquitectura basada en microservicios.

Arquitectura monolítica

Una arquitectura monolítica se puede resumir con el siguiente esquema:

Normalmente tenemos un frontend y luego todos los servicios o módulos, que están integrados dentro de un desplegable, por ejemplo, en el caso de Java puede ser un JAR o un WAR.

Todos estos módulos están corriendo debajo de la misma máquina virtual, de forma que toda la comunicación entre todos los módulos, realmente pasa a memoria entre llamadas a métodos.

Arquitectura basada en microservicios

En los microservicios lo que se hace es particionar el dominio usando domain driven design.

En este caso, cada uno de los bounded context se aísla y se hace que se comuniquen entre ellos mediante red, evitando así que lo hagan a través de una llamada a un método local, con lo que conseguimos que todos los servicios se comuniquen remotamente.

La arquitectura basada en microservicios es realmente programación distribuida, porque vamos a conseguir agilidad a la hora de llevar nuestra aplicación desde desarrollo hasta producción, lo que se consigue gracias a técnicas como continuous delivery, continuous deployment y continuous improvement.

Con los microservicios conseguimos poder ser capaces de desplegar a producción de forma más continua y de una forma mucho más ágil.

Si todo esto te interesa y quieres profundizar mucho más, puedes hacer el curso de arquitecturas monóliticas basadas en microservicioscon el que aprenderás de principio a fin cómo desarrollar una arquitectura monolítica compuesta de microservicios.
 

Recuerda que puedes comenzar este curso con tu suscripción de OpenWebinars. Si todavía no estás suscrito, aprovecha para hacerlo ahora.

Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información