Implementación genérica del patrón SAGA a un proceso
Sesión 5: 4h33m
Patrón SAGA
- Reemplaza una transacción distribuida con una saga
- Divide la transacción en muchas solicitudes
- Rastrea cada solicitud
- ACID: compromiso de atomicidad
- Descrito por primera vez en 1987
- También es un patrón de gestión de fallas
- Qué hacer cuando falla un servicio
- Compensar solicitudes
- Implementación: considerar lo siguiente:
- SAGA Log
- Coordinador de ejecución de saga (SEC)
- Solicitudes y compensación de solicitudes
Patrón SAGA implementación
- Servicio que inicia la saga
- Envía la solicitud de saga al registro de saga
- Saga Log
- Servicio con una base de datos
- SEC
- Interpreta y escribe en el registro
- Envía solicitudes de saga
- Envía solicitudes de compensación de saga
- Recuperación: estado seguro vs estado inseguro
- Solicitudes de compensación
- Enviar en caso de error para todas las solicitudes completadas
- Idempotente (fácil con REST)
- Cada uno se envía de cero a muchas veces
Comments
Post a Comment