Romper el monolito suena glorioso hasta que necesitas cobrar la tarjeta, descontar inventario y generar factura... y el módulo del medio falla.
En un sistema clásico monolítico, se invoca un 'BEGIN TRANSACTION SQL'. Si descontar el stock falla porque alguien lo compró un segundo antes, el motor hace 'ROLLBACK' automático revirtiendo el cobro milagrosamente. En un escenario moderno Microservicios donde cada servicio tiene su propia base independiente MongoDB o DynamoDB, el rollback automático ACID no existe (Two-Phase Commit es demasiado lento). La inconsistencia de datos ('Se cobró pero no hay producto') arruinará la empresa logísticamente en menos de un mes.
Compensaciones Event-Driven (Sagas)
Instauramos Coreografía tipo Saga (Eventual Consistency). Si el paso tres (Facturación) colapsa y arroja error, el sistema despacha comandos de compensación asíncronos programados hacia atrás: envía orden al microservicio 2 para 'Devolver Stock' y al microservicio 1 para 'Refund Tarjeta'.
Garantía de Resiliencia Descentralizada
- Escalabilidad Real Independiente: Se mantiene la velocidad de procesamiento alta del sistema sin bloquear bases externas.
- Consistencia Eventual Férrea (Eventual Consistency): El ecosistema tolera demoras transitorias; asegura matemáticamente que los sistemas convergiran al estado neutral correcto sin intervención humana.
- Prevención de Estados Mutantes (Dead Letter Queues): Eventos imposibles de revertir caen a colas muertas aisladas donde herramientas automatizadas o humanos deciden cómo conciliar.
La ingeniería distribuida demanda arquitectos que dejen de confiar ingenuamente en las redes locales y comiencen a diseñar asumiendo explícitamente el fracaso técnico.