27.12.2012 Aufrufe

Vnode Schnittstelle - Frank Kardel

Vnode Schnittstelle - Frank Kardel

Vnode Schnittstelle - Frank Kardel

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

BackStage<br />

Eine TID<br />

28<br />

– ist ein Name für einen Dienst,<br />

Dienste sind lang laufende Transaktionen<br />

– wird verwendet, um Operationen eines Dienstes anzufordern<br />

status, abort,...,<br />

– bestimmt die Lebensdauer eines Dienstes.<br />

Eine TID beschreibt eine Transaktion, die entweder selbst Transaktionsschritte durchführt<br />

oder eine Dienstleistung anbietet.<br />

Die erste Art der Transaktion kann man mit üblichen Transaktionen vergleichen, indem<br />

die normalen Operationen die eigentliche Aufgabe der Transaktion sind. Zusätzlich<br />

wird die abort() Operation angeboten.<br />

Die zweite Verwendung der Transaktion entspricht dem althergebrachten “Server”,<br />

der Anforderungen entgegennimmt und abarbeitet. Bei der Abarbeitung kann es zur<br />

Erzeugung neuer Transaktionen kommen.<br />

Der Sinn, auch einen Server als Transaktion längerer Lebensdauer aufzufassen, liegt in<br />

der Vereinheitlichung des Interaktionsmodells (Wechsel der Rolle von Client und Server).<br />

Demnach stellen Transaktionen sich ähnlich wie Objekte eines objektbasierten Systems<br />

dar [Weg90]. Sie umfassen allerdings nicht gleich den objektorientierten Anspruch<br />

(Vererbung).<br />

Mit der TID-Abstraktion werden drei Aspekte gleichzeitig verfolgt:<br />

– Transaktionssemantik,<br />

auch über Knotengrenzen,<br />

– Objektbasierung,<br />

Strukturierung und Kapselung (zumindest logisch)<br />

– Fernaufrufmechanismus.<br />

Direkte Ausführung oder neue Transaktion.<br />

Wenn man Transaktion und Objekt koppelt, ergeben sich neue Sichtweisen für die<br />

Ausführung.<br />

Es werden nur kurze Kommunikationsphasen zur Auftragserteilung und Ergebnisübergabe<br />

benötigt. In der Zwischenzeit dürfen die Kommunikation oder die beteiligten<br />

Rechner zusammenbrechen.<br />

Bei Wiederanlauf werden begonnene Transaktionen weiter fortgesetzt. Dieses erlaubt<br />

ein Fortschreiten der gesamten Anwendung auch dann, wenn die beteiligten Partner<br />

zeitweilig ausfallen. Diese lokal fortsetzbaren, langfristigen Aufträge haben auch einen<br />

Vorteil. Nur der lokale Zustand muß rekonstruiert werden (siehe auch [Nel81]). Interaktionen<br />

mit anderen Knoten beschränken sich auf Auftragserteilung (invoke), Statusabfrage<br />

(await) und Ergebnistransport (commit & abort).

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!