Soluciones de transacciones distribuidas y distribuidas.

 

Antecedentes de generación distribuida :

1. Cuando hay múltiples fuentes de datos para proyectos tradicionales;

2. En la llamada remota RPC, después de que el iniciador A llama a la interfaz B con éxito, el iniciador repentinamente informa un error (en este momento, la parte B puede haberse presentado y A no puede informar a B después de informar un error);

Solución : Usando la consistencia final y 2PC o 3PC (confirmación de dos fases, confirmación de tres fases), se permite un breve retraso de datos, pero los datos finales deben ser consistentes.

Solución :

1. JTA + Atomic, adecuado para proyectos tradicionales

2. Resolver transacciones distribuidas basadas en la compensación MQ, RabbitMQ

3. RocketMQ viene con mensajes de transacción,
4. Resuelve transacciones distribuidas basadas en LCN, principio: proxy de nuestra propia fuente de datos para reescribir los métodos de conexión y retroceso para lograr un cierre falso, pasa la identificación global de la transacción,
5. Resuelve distribuido en base a Seata Transacción, el principio es el mismo que LCN, la
diferencia entre los dos es: la forma de deshacer, la reversión de LCN es un cierre falso es fácil de causar un punto muerto, pero
seata utiliza el registro de deshacer para generar declaraciones SQL para lograr la reversión.

Los cinco esquemas anteriores son adecuados para la realización de servicios de proyectos internos de empresas .


Si se trata de una interfaz externa y externa para resolver el problema de la transacción distribuida, puede usar un método de devolución de llamada asíncrono similar a la consulta activa Alipay +

 

Supongo que te gusta

Origin www.cnblogs.com/long2050/p/12694690.html
Recomendado
Clasificación