Κατανεμημένες εφαρμογές και ηλεκτρονικό εμπόριο -> Συναλλαγές

Κεφάλαιο 13

Συναλλαγές

1 Εισαγωγή
    1.1 Συναλλαγές
    1.2 Σειραική ισοδυναμία
2 Κατανεμημένες Δοσοληψίες
    2.1 Πρωτόκολλα ατομικής δέσμευσης
    2.2 Δέσμευση δύο φάσεων για ένθετες συναλλαγέςς
    2.3 Έλεγχος συγχρονικότητας
3 Επόπτες συναλλαγών
4 Ένα απλό παράδειγμα επόπτη συναλλαγών
    4.1 Εισαγωγή
    4.2 Βeans οντότητας και συνόδου
    4.3 Κλάσεις Bean
    4.4 Αναπτύσσοντας κώδικα bean
5 Περαιτέρω Διάβασμα
Αναφορές

Περιεχόμενα κεφαλαίου

Μια συναλλαγή είναι μια σειρά λειτουργιών που έχουν ως αποτέλεσμα την προσπέλαση και συχνά την μεταβολή των δεδομένων και  της κατάστασης ενός κατανεμημένου συστήματος. Η κεντρική ιδέα είναι πως όλες οι λειτουργίες μιας συναλλαγής είτε πετυχαίνουν είτε αποτυγχάνουν. Σε αυτό το κεφάλαιο θα εξετάσουμε τις λεπτομέρειες μιας συναλλαγής και τις ιδιότητες που πρέπει να έχει μια συναλλαγή. Θα δούμε με ποιο τρόπο λογισμικό όπως διαχειριστές συναλλαγών και επόπτες συναλλαγών ελέγχουν συναλλαγές και διασφαλίζουν ότι ένα σύστημα δεν μένει σε ασυνεπή κατάσταση έπειτα από μια σειρά συγχρονικών συναλλαγών. Το κεφάλαιο κλείνει εξετάζοντας ένα παράδειγμα μιας τεχνολογίας που χρησιμοποιείται για την υλοποίηση ελέγχου συναλλαγών: το Enterprise JavaBeans.

Στόχοι κεφαλαίου

  1. Να αναλύσει τις κεντρικές ιδέες της συναλλαγής.
  2. Να περιγράψει τις βασικές ιδιότητες μιας συναλλαγής.
  3. Να εξηγήσει τον τρόπο ελέγχου των συναλλαγών σε ένα σύγχρονο κατανεμημένο σύστημα.
  4. Να περιγράψει μερικούς αλγορίθμους που χρησιμοποιούνται για τον έλεγχο συναλλαγών

Έννοιες

Διακομιστής εφαρμογών (Application server), Ατομική συναλλαγή (Atomic transaction), Ατομικότητα (Atomicity), Συνέπεια (Consistency), Κατανεμημένο αδιέξοδο (Distributed deadlock), Ανθεκτικότητα (Durability), Αλγόριθμος αναζήτησης κορυφών (Edge chasing algorithm), Enterprise JavaBeans, beans Οντότητας (Entity bean), Απομόνωση (Isolation), Πρόβλημα χαμένης ενημέρωσης (Lost update problem), Προτόκολο ατομικής δέσμευσης μιας φάσης (One-phase atomic commit protocol), Διερευνητής (Probe), Σειραική ισοδυναμία (Serial equivalence), Session bean, Συναλλαγή (Transaction), Επόπτης συναλλαγών (Transaction Processing monitor).