Cómo evitar el mal uso de las transacciones distribuidas
Cómo evitar el uso indebido de las transacciones distribuidas, la respuesta es la siguiente
Las transacciones distribuidas esencialmente introducen un árbitro externo para encontrar formas de monitorear el éxito o el fracaso simultáneo de múltiples transacciones locales , aquí hay algunos puntos de conocimiento para compartir: ?
R: Si hay dos o más enlaces de bases de datos DbConnection en el bloque de código, es necesario iniciar el servicio de transacciones distribuidas MSDTC de Microsoft. Utilice la línea de comando para iniciar o detener el servicio:
B: Si solo hay una conexión de base de datos DbConnection en el bloque de código, entonces solo se procesan transacciones locales incluso si el servicio de transacciones distribuidas MSDTC. no se inicia, no informará un error. ?
C: Para el bloque de código incluido en TransactionScope, la esencia es monitorear el número de enlaces de bases de datos DbConnection en el bloque de código. Si hay varios objetos diferentes, se introduce MSDTC como árbitro y el. transacción real ejecutada Todavía se trata de varios asuntos locales. ?
D: MSDTC no siempre es lo suficientemente estable. Cuando probé dos transacciones simples juntas, mantuve presionado F5 y seguí actualizando, y el servicio MSSQL también se suspendió, incluso si usé transacciones locales. No habrá ningún problema entre bibliotecas.
Por lo tanto, si no es necesario, intente no introducir transacciones distribuidas y debe evitar la tentación de utilizar TransactionScope para contener bloques de transacciones.