Detallado 3 --- de SEAT transacciones distribuidas Distributed Marco de Transacción

Transacciones distribuidas Detallado 1 --- lo que se distribuye transacción

Detallado de transacciones distribuidas Solución 2 ---

Detallado 3 --- de SEAT transacciones distribuidas Distributed Marco de Transacción

Aquí introducido a Ali de SEAT marco de código abierto para las transacciones distribuidas.

1 de SEAT Introducción

De SEAT (anteriormente conocido como Fescar ) Ali 18 marco para transacciones distribuidas en código abierto. Fescar marco de código abierto para la transacción distribuida un gran impacto en el campo. Tan grande de código abierto, Fescar GTS de Ali (PS: Por supuesto GTS, si los costos lo permiten, se pueden utilizar directamente, de acuerdo con la cantidad de carga), ha superado la prueba varias de dos-Eleven, una vez que abra la atención popular. Fescar más tarde llamado de SEAT .
Fescar Aunque se distribuye transacción confirmación de dos fases protocolo, pero que resuelve XA algunas de las desventajas de :
 
  • problema de un solo punto:
  • bloqueo síncrono : Fescar dos etapas, la primera etapa de nuevo cuando la transacción local se ha presentado a la liberación de los recursos, no como XA nuevo dos preparará y comprometerse fases recursos están bloqueadas, y Fescar, comprometer el funcionamiento asíncrono, sino también la clave para mejorar el rendimiento.
  • incoherencia de datos : Si hay una parte de la cometen un error, fescar-servidor será diferente estrategia de reintento basada en los resultados del actual estado de cosas volver transacciones de modo y sucursales. Y fescar transacción local será sometida a una etapa en la que, de hecho, basta con ver que cometen la base de datos cuando la base de datos ha sido consistente.
  • Sólo se puede utilizar para una sola base de datos : Fescar ofrece dos modos, AT y MT . En AT asuntos modo de recurso puede ser cualquier base de datos que soporta ácido en MT modo transaccional con recursos ilimitados, puede ser almacenado en caché, puede ser un archivo, puede ser otro y así sucesivamente.
Por supuesto, estos dos modos pueden ser mixtos.
Mientras tanto Fescar también retuvo cerca de 0 ventaja de negocio de la invasión, solamente una configuración sencilla Fescar de datos proxy y el procesamiento de un comentario, además de una mesa Undolog, podemos lograr lo que queremos.
 

2 El principio

Fescar una transacción local como una rama de transacción distribuida, por lo que el número de distribuciones en diferentes micro-servicios en los asuntos locales juntos para formar una transacción global, estructurado como sigue:
Gestor de transacciones (TM) : transacciones globales de control de fronteras, es el encargado de abrir una transacción global, y, finalmente, poner en marcha una solución global para confirmar o deshacer global.
Administrador de recursos (RM) : asuntos de control de rama, la rama es responsable del registro, informes de estado, y recibir instrucciones coordinador de asuntos, confirmar y deshacer rama unidad de transacción (local).
Un proceso de transacción distribuida típica:
  1. TM al TC que solicita la apertura de una transacción global, la transacción global se crea con éxito y generar un único global XID .
  2. XID difusión en el contexto de micro-servicio de enlace de llamada.
  3. RM a TC registrado transacciones de sucursales serán incorporados a XID jurisdicción correspondiente a la transacción global.
  4. TM a TC inició contra XID cometer o resolución reducción mundial.
  5. TC programación XID todo finalización de transacción rama bajo la jurisdicción de la solicitud de confirmación o reversión.

3 Fescar modo

Fescar proporciona una realización de transacciones distribuidas 3 modos, AT modo, MT modo y el modo mixto:
 

3.1 A modo de

La lógica de negocio no tiene que ser el mecanismo en cuestión transacción, sucursal y las transacciones globales proceso interactivo de forma automática.
A modo : se centran en múltiples DB consistencia de acceso a datos, fácil de implementar, menos invasiva para el negocio.
A parte del modo del código de la siguiente manera: estado de ejecución no tiene por qué preocuparse, el código de la intrusión es la pequeña empresa. Del mismo modo el código de abajo, es un método requiere solamente la adición @GlobalTransactional anotaciones a.
 
AT modelo de negocio no es invasivo, es una confirmación de dos fases de un nuevo y mejorado, sus ideas de diseño mostrados:
 
La primera etapa:
 
La actividad principal radica en sql se analiza, se convirtió al undolog , en dos fases recursos tienden a bloquear a la segunda etapa de la necesidad de continuar cometer el real o operación de reversión, y luego con la revista rollback puede ser liberado en la primera fase de los recursos de bloqueo, bloqueo de la gama se reduce, mejorando la eficiencia, incluso si se produce una anomalía de reversión segunda etapa, sólo para encontrar undolog datos correspondientes y se resuelve trans SQL para lograr los propósitos de reversión. fuente de datos de SEAT a través del servicio de proxy SQL realiza resuelve undolog para actualizar el almacenamiento de datos de servicio, mientras que, en el sentido de no invasiva en el negocio.
 
La segunda etapa:

Si la resolución es una reducción mundial, RM recibo enviado al coordinador de la solicitud de reversión, por XID y Rama ID correspondiente registro de registro de reversión se encuentra, la actualización SQL generado por el rodillo inverso hacia atrás el registro y llevar a cabo con el fin de completar la parte posterior rama rollo.
 

 

3.1 MT modo de 

 lógica de servicio necesita ser descompuesto a Preparar / Commit / Rollback 3 parte, se forma un MT rama de la transacción global añadido.

MT modo, por un lado AT modo de complemento. Además, el valor más importante es que por MT puede ser incorporado en un número de gestión de recursos no transaccional en un modo de transacción global.
 

3.2 Modo mixto

Debido a AT y MT patrón de ramificación del patrón de comportamiento es fundamentalmente el mismo, por lo que puede totalmente compatible, es decir, una transacción global, no puede haber simultáneamente en y MT ramas. Por lo que se puede lograr una cobertura completa de escenarios de negocio: A modo puede apoyar, mediante el modo AT, AT modo que temporalmente no puede ser apoyado por MT modo en su lugar. Además, natural, MT no transaccional modelo de gestión de recursos también puede soportar recursos de base de datos transaccionales y relacionales juntos en la gestión con una transacción distribuida.
 
 

 

Publicado 41 artículos originales · ganado elogios 47 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/u014526891/article/details/103742138
Recomendado
Clasificación