[Código fuente de Spring6・Transacción] Análisis del código fuente del núcleo de la transacción

relacionado al negocio

Antes de eso, una breve reseña:

Cuatro características de las transacciones:

  • Atomicidad: Las transacciones son indivisibles, o se ejecutan todas o no se ejecuta ninguna.
  • Coherencia: antes y después de la ejecución de la transacción, la integridad de los datos permanece constante, es decir, la cantidad total de datos antes y después de la modificación es aproximadamente la misma.
  • Aislamiento: Durante la ejecución de una transacción, no será perturbada por otras transacciones.
  • Durabilidad: una vez que finaliza una transacción, el impacto en la base de datos es permanente. Los datos se conservan en la base de datos.

Problemas comunes de transacciones en escenarios concurrentes:

  • Lectura sucia: cuando la transacción A lee los datos no confirmados de la transacción B, la transacción B retrocede, lo que hace que los datos leídos por la transacción A sean datos sucios.
  • Lectura no repetible: después de que la transacción A lea los datos por primera vez, la transacción B modifica y envía los datos

Supongo que te gusta

Origin blog.csdn.net/CSDN_SAVIOR/article/details/128902001
Recomendado
Clasificación