4 Stimmen

Was sind die Nachteile der Implementierung von Transaktionen außerhalb der Datenbank?

Wir wissen, dass es einige Szenarien gibt, die erfordern, dass wir Transaktionen im Code implementieren, wie SqlTransaction/TransactionScope im .Net-Framework. Die Fragen sind:

  1. Welche zusätzlichen Kosten entstehen (außer Geschwindigkeit)?
  2. Wird es schlimmer, wenn wir mehr Schichten zwischen der Transaktion und der Datenbank hinzufügen? Wenn ja, welche zusätzlichen Kosten entstehen und was verursacht diese zusätzlichen Kosten?

1voto

A-K Punkte 16460

Wir möchten die Transaktionen kurz halten, sie so spät wie möglich beginnen und so früh wie möglich beenden. Andernfalls schadet die Parallelität, und wir haben mehr Sperrwartungen und Deadlocks.

0voto

Raghu A Punkte 411

Lange Transaktionslaufzeiten können auch dazu führen, dass das Transaktionsprotokoll aufgefüllt wird.

Das Hinzufügen weiterer Schichten zwischen Transaktion und der Datenbank selbst führt nicht zu zusätzlicher Belastung der Transaktion, erhöht jedoch die Wahrscheinlichkeit, dass etwas schief geht und die Transaktion nicht abgeschlossen wird, wodurch eine lange Transaktionslaufzeit entsteht.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X