WS-AtomicTransaction – Ανάπτυξη εφαρμογών για φορητές συσκευές, υπηρεσίες web, αρχιτεκτονική SOA – Τεχνολογία
Μεταπηδήστε στο περιεχόμενο

WS-AtomicTransaction – Ανάπτυξη εφαρμογών για κινητά, υπηρεσίες web, αρχιτεκτονική SOA

Διαφημίσεις

Το WS-AtomicTransaction (WS-AT) είναι ένα διαλειτουργικό πρωτόκολλο συναλλαγών. Επιτρέπει τη ροή των κατανεμημένων συναλλαγών μέσω της χρήσης μηνυμάτων υπηρεσιών Ιστού και συντονίζει διαλειτουργικά σε ετερογενείς υποδομές συναλλαγών. Το WS-AT χρησιμοποιεί το πρωτόκολλο εκτέλεσης δύο φάσεων για να δημιουργήσει ένα ατομικό αποτέλεσμα μεταξύ κατανεμημένων εφαρμογών, διαχειριστών συναλλαγών και διαχειριστών πόρων.

Η παρεχόμενη υλοποίηση του WS-AT στο Windows Communication Foundation (WCF) περιλαμβάνει μια υπηρεσία πρωτοκόλλου ενσωματωμένη στη διαχείριση συναλλαγών του Microsoft Distributed Transaction Coordinator (MSDTC). Οι εφαρμογές WCF μπορούν να περάσουν συναλλαγές σε άλλες εφαρμογές μέσω του WS-AT, συμπεριλαμβανομένων διαλειτουργικών υπηρεσιών web που έχουν κατασκευαστεί με χρήση τεχνολογίας τρίτων.

Όταν μια συναλλαγή ρέει μεταξύ μιας εφαρμογής πελάτη και μιας εφαρμογής διακομιστή, το πρωτόκολλο συναλλαγής που χρησιμοποιείται καθορίζεται από τη δέσμευση που εκθέτει ο διακομιστής στο επιλεγμένο τερματικό πελάτη. Ορισμένες δεσμεύσεις που παρέχονται για το WCF από προεπιλογή καθορίζουν το πρωτόκολλο OleTransactions ως τη μορφή διάδοσης συναλλαγών, ενώ άλλες προεπιλογή για την προδιαγραφή WS-AT. Μπορείτε επίσης να τροποποιήσετε μέσω προγραμματισμού την επιλογή του πρωτοκόλλου συναλλαγής μέσα σε μια δεδομένη δέσμευση.

Η επιλογή του πρωτοκόλλου επηρεάζει:

  • Η μορφή των κεφαλίδων μηνυμάτων που χρησιμοποιείται για τη ροή της συναλλαγής από τον πελάτη στον διακομιστή.
  • Το πρωτόκολλο δικτύου που χρησιμοποιείται για την εκτέλεση του πρωτοκόλλου εκτέλεσης δύο φάσεων μεταξύ του διαχειριστή συναλλαγών πελάτη και της συναλλαγής διακομιστή προκειμένου να επιλυθεί το αποτέλεσμα της συναλλαγής.

Εάν τόσο ο διακομιστής όσο και ο πελάτης έχουν γραφτεί χρησιμοποιώντας WCF, δεν χρειάζεται να χρησιμοποιήσετε το WS-AT. Αντίθετα, μπορείτε να χρησιμοποιήσετε την προεπιλεγμένη διαμόρφωση NetTcpBinding με ενεργοποιημένο το χαρακτηριστικό TransactionFlow, το οποίο θα χρησιμοποιεί το πρωτόκολλο OleTransactions.

Αυτή η προδιαγραφή ορίζει τα ακόλουθα πρωτόκολλα για ατομικές συναλλαγές.

συμπέρασμα: Το πρωτόκολλο τερματισμού ξεκινά τη διαδικασία επιβεβαίωσης. Με βάση τους εγγεγραμμένους συμμετέχοντες σε κάθε πρωτόκολλο, ο Συντονιστής ξεκινά με 2PC Volatile και εξελίσσεται σε 2PC Durable. Το τελικό αποτέλεσμα σηματοδοτείται στον εκκινητή.

Δέσμευση δύο φάσεων (2PC): Το πρωτόκολλο 2PC συντονίζει τους εγγεγραμμένους συμμετέχοντες για να καταλήξουν σε μια απόφαση επιβεβαίωσης ή ακύρωσης και διασφαλίζει ότι όλοι οι συμμετέχοντες ενημερώνονται για το τελικό αποτέλεσμα. Το πρωτόκολλο 2PC έχει 2 παραλλαγές:

  • Volatile 2PC: ο Οι συμμετέχοντες που διαχειρίζονται ασταθείς πόρους, όπως μια κρυφή μνήμη, πρέπει να εγγραφούν σε αυτό το πρωτόκολλο.
  • Ανθεκτικό 2 τμχ: Οι συμμετέχοντες που διαχειρίζονται ανθεκτικούς πόρους, όπως μια βάση δεδομένων, πρέπει να εγγραφούν σε αυτό το πρωτόκολλο.

Ένας συμμετέχων μπορεί να εγγραφεί σε περισσότερα από ένα από αυτά τα πρωτόκολλα στέλνοντας πολλαπλά μηνύματα εγγραφής.