Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Programmierung » Einführung in die Programmierung mit SQL Anywhere » Dreischichtige Datenverarbeitung und verteilte Transaktionen » Dreischichtige Datenverarbeitungsarchitektur

 

Begriffe im Zusammenhang mit verteilten Transaktionen

In diesem Kapitel wird eine gewisse Vertrautheit mit verteilten Transaktionen vorausgesetzt. Hinweise finden Sie in der Dokumentation zum Transaktionsserver. In diesem Abschnitt werden allgemein übliche Begriffe beschrieben.

  • Ressourcen-Manager sind Dienste, die in eine Transaktion einbezogene Daten verwalten.

    Der SQL Anywhere-Datenbankserver kann in einer verteilten Transaktion als Ressourcen-Manager agieren, wenn über OLE DB oder ODBC darauf zugegriffen wird. Der ODBC-Treiber und der OLE DB-Provider agieren auf dem Client-Computer als Ressourcen-Manager-Proxys.

  • Anstatt direkt mit dem Ressourcen-Manager können Anwendungskomponenten mit Ressourcen-Verteilern kommunizieren, die ihrerseits Verbindungen oder Verbindungs-Pools zu den Ressourcen-Managern verwalten.

    SQL Anywhere unterstützt zwei Ressourcen-Verteiler: den ODBC-Treibermanager und OLE DB.

  • Wenn eine Transaktionskomponente eine Datenbankverbindung anfordert (über einen Ressourcen-Manager), bezieht der Anwendungsserver alle Datenbankverbindungen ein, die an der Transaktion teilnehmen. DTC und der Ressourcen-Verteiler führen den Einbeziehungsvorgang aus.

Zwei-Phasen-Commit

Verteilte Transaktionen werden mit Zwei-Phasen-Commit verwaltet. Wenn die Arbeit der Transaktion abgeschlossen ist, fragt der Transaktions-Manager (DTC) alle in die Transaktion einbezogenen Ressourcen-Manager, ob sie bereit sind, die Transaktion festzuschreiben. Diese Phase wird Vorbereiten zum Festschreiben genannt.

Wenn alle Ressourcen-Manager antworten, dass sie zum Festschreiben bereit sind, sendet DTC eine Anforderung zum Festschreiben an jeden einzelnen Ressourcen-Manager und antwortet seinem Client, dass die Transaktion abgeschlossen ist. Wenn einer oder mehrere Ressourcen-Manager nicht antworten oder antworten, dass sie die Transaktion nicht festschreiben können, wird die gesamte Arbeit der Transaktion über alle Ressourcen-Manager zurückgesetzt.