WS-AtomicTransaction – Dezvoltare de aplicații mobile, servicii web, arhitectură SOA - Tehnologie
Sari la conținut

WS-AtomicTransaction – Dezvoltare de aplicații mobile, servicii web, arhitectură SOA

Reclame

WS-AtomicTransaction (WS-AT) este un protocol de tranzacție interoperabil. Permite fluxul de tranzacții distribuite prin utilizarea mesajelor serviciului Web și coordonează interoperabil între infrastructuri de tranzacții eterogene. WS-AT utilizează protocolul de execuție în două faze pentru a crea un rezultat atomic între aplicațiile distribuite, managerii de tranzacții și managerii de resurse.

Implementarea furnizată a WS-AT în Windows Communication Foundation (WCF) include un serviciu de protocol încorporat în managerul de tranzacții Microsoft Distributed Transaction Coordinator (MSDTC). Aplicațiile WCF pot transmite tranzacții către alte aplicații prin WS-AT, inclusiv servicii web interoperabile construite folosind tehnologie terță parte.

Când o tranzacție circulă între o aplicație client și o aplicație server, protocolul de tranzacție utilizat este determinat de legarea pe care serverul o expune pe terminalul client selectat. Unele legături furnizate pentru WCF în mod implicit specifică protocolul OleTransactions ca format de propagare a tranzacției, în timp ce altele la specificația WS-AT implicit. De asemenea, puteți modifica în mod programatic alegerea protocolului de tranzacție într-o anumită legare.

Alegerea protocolului influențează:

  • Formatul antetelor mesajelor utilizate pentru a transmite tranzacția de la client la server.
  • Protocolul de rețea folosit pentru a rula protocolul de execuție în două faze între managerul de tranzacții client și tranzacția server pentru a rezolva rezultatul tranzacției.

Dacă atât serverul, cât și clientul sunt scrise folosind WCF, nu trebuie să utilizați WS-AT. În schimb, puteți utiliza configurația NetTcpBinding implicită cu atributul TransactionFlow activat, care va folosi protocolul OleTransactions.

Această specificație definește următoarele protocoale pentru tranzacțiile atomice.

concluzie: Protocolul de terminare începe procesul de confirmare. Pe baza participanților înscriși la fiecare protocol, coordonatorul începe cu 2PC Volatile și progresează până la 2PC Durable. Rezultatul final este semnalat inițiatorului.

Angajament în două faze (2PC): Protocolul 2PC coordonează participanții înregistrați pentru a ajunge la o decizie de confirmare sau anulare și asigură că toți participanții sunt informați cu privire la rezultatul final. Protocolul 2PC are 2 variante:

  • 2 bucăți volatile: The Participanții care gestionează resurse volatile, cum ar fi un cache, trebuie să se înregistreze cu acest protocol.
  • Durabil 2 buc: Participanții care gestionează resurse durabile, cum ar fi o bază de date, trebuie să se înregistreze cu acest protocol.

Un participant se poate înregistra pentru mai mult de unul dintre aceste protocoale prin trimiterea mai multor mesaje de înregistrare.