Patrones de gobierno de datos
Sesión 5: 5m30s
Patrones de estructura de datos
- Base de datos por servicio: Cada microservicio administra sus datos (soberanía de datos). Los desarrolladores usan API's bien definidas para facilitar la comunicación entre las bases de datos de dos o más microservicios.
- Base de datos compartida (antipatrón): Permite que varios servicios accedan y almacenen datos en la misma base de datos. Si usa la base de adtos compartida apra varios microservicios, entonces caerá en un antipatrón y debe evitar estos enfoques.
- Patrón Saga: Saga es una secuencia de transacciones locales en la que el resultado de cada transacción depende de un nuevo evento anterior. Si alguna transacción falla, saga realiza una serie de transacciones de compensación. Gestión de transacciones distribuidas (pseudo transacción por que no cumple con todo los aspectos de una transacción).
No olvidar que los microservicios es una arquitectura lógica. Usualmente va a coincidir con la arquitectura física. Sin embargo, con el tiempo la arquitectura física se va ir complejizando. El uso de los DBLinks en base de datos también es un antipatrón.
Patrones de gestión de comunicación de los datos
- Patrón CQRS: Se proporciona a la base de datos de comandos y consultas separadas para realizar mejor la consulta de varios microservicios. CQRS ofrece un mayor rendimiento y una mejor escalabilidad de los microservicios.
- Patrón Event Sourcing: Proporciona acumular eventos y agregarlos en una secuencia de eventos en bases de datos. De esta manera podemos reproducir a cierto punto de los eventos. Este patrón está muy bien usando con cqrs y patrones de saga.
- Composición de APIs: Utiliza compositores de API para acceder a los conjuntos de datos de los servicios. Después de obtener los datos, el patrón utiliza una "unión en memoria" para emparejar dos servicios antes de enviarlos al consumidor.
Comments
Post a Comment