Microservicios
Como su nombre indica, es una colección de varios servicios pequeños. En el caso de una aplicación monolítica, todas las características estarán en una sola aplicación. Por lo tanto, cuando un servicio falla, todos los demás quedarán inoperativos. Esto supuso un gran inconveniente para los clientes bancarios que querían centrarse más en la banca, como ya vimos.
La solución para eso son los microservicios. Esto es lo que utilizan Uber, Amazon, Netflix, etc., para gestionar sus usuarios y cargas. Es un estilo arquitectónico. Como su nombre indica, cada servicio tiene una lógica específica, en su mayoría servicios reutilizables orientados a los negocios, por ejemplo, Holdings, para obtener una lista de todos los datos de una cuenta. No hace nada más y solo tiene una lógica de negocio. Está completamente abstraído y, por lo tanto, el sistema de llamada lo trata como una caja negra. Todos los configurables están externalizados, incluida la exposición de puertos, y esto lo hace muy amigable para los equipos de implementación que trabajan en proyectos grandes.
Se puede implementar de forma independiente, por lo que un retraso en la implementación de un servicio no afecta a los demás. Es altamente eficiente en la capacidad de escalado elástico debido al aprovisionamiento automático de recursos para adaptarse perfectamente a la demanda hacia arriba o hacia abajo.
Por último, también se expone como APIs. Al igual que las API, los microservicios también se integran en la comunidad de desarrolladores. Admitimos plataformas como AWS, AZURE, GCP y también contenedores Docker para paquetes de microservicios.