Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12



Σχετικά έγγραφα
Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Ενότητα 5 (κεφάλαιο 18) Τεχνολογία Λογισμικού για Κατανεμημένα Συστήματα

Περιεχόμενα. Κεφάλαιο 2 Κοινωνικοτεχνικά συστήματα 49

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture)

Αρχιτεκτονική Λογισμικού

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 1: Εισαγωγή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

* Enterprise Resource Planning ** Customer Relationship Management

Ενότητα 3 (κεφάλαιο 16) Επαναχρησιμοποίηση Λογισμικού

Περιεχόμενα. Κεφάλαιο 2 Κοινωνικοτεχνικά συστήματα 49

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Εισαγωγή στη Σχεδίαση Λογισμικού

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Ενότητα 6 (κεφάλαιο 19) Υπηρεσιοκεντρική Αρχιτεκτονική

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 9: Web Services. Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

Aρχές Σπονδυλωτού Προγραµµατισµού σε Kατανεµηµένα Συστήµατα. Kεφάλαιο Έξη - Συνδετικά Kριτήρια Aντικειµένων και Συστατικών

Αντικειμενοστρεφής Προγραμματισμός

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Το Πλαίσιο Διαλειτουργικότητας & Υπηρεσιών. Ενημέρωση σχετικά με τις γενικές αρχές και τη. Ενημέρωση σχετικά με τα τεχνολογικά πρότυπα βάσει

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Αρχιτεκτονική Υπολογιστών

Σύστημα Ηλεκτρονικού Πρωτοκόλλου

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Περίληψη ιπλωµατικής Εργασίας

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Αρχιτεκτονική Υπολογιστών

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

Αποµακρυσµένη κλήση διαδικασιών

Σύστηµα CORBA. Κατανεµηµένα Συστήµατα 18-1

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται:

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ

Κατανεμημένα Συστήματα με Java. Ενότητα # 18: Υπηρεσίες Ιστού Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Λειτουργικά Συστήματα Η/Υ

Αρχιτεκτονικές Συστημάτων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Η-επιχειρείν και συνεργασία σε παγκόσμιο επίπεδο

Κεφάλαιο 7. ΕΠΑΛ Σύμης Εφαρμογές πληροφορικής Ερωτήσεις επανάληψης

Η Διαλειτουργικότητα στην Υπηρεσία του Πολίτη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Σχεδιασµός Λογισµικού

Υποδομή ΤΠ: Υλικό και λογισμικό

Διευκρινίσεις για τον Ανοιχτό τακτικό διαγωνισμό με αρ. πρωτ. 675/

Θέματα διπλωματικών εργασιών σε. Συστοιχίες παράλληλης εξυηρέτησης εφαρμογών Διαδικτύου

Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου.

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα

Σύστημα Αναθέσεων. Σχεδιασμός Υποσυστημάτων

Διπλωματική Εργασία. Μέλλιος Θωμάς, Πετρίδης Κοσμάς. Επιβλέπων Καθηγητής: Πρωτόγερος Νικόλαος

Νέες Επικοινωνιακές Τεχνολογίες

ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΤΕΡΕΑΣ ΕΛΛΑΔΑΣ- ΤΜΗΜΑ ΠΕΡΙΦΕΡΕΙΑΚΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΑΝΑΠΤΥΞΗΣ, ΜΑΘΗΜΑ: ΔΙΑΧΕΙΡΙΣΗ ΑΝΘΡΩΠΙΝΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΠΟΡΩΝ- ΧΡΙΣΤΟΣ ΑΠ.

STORAGE AREA NETWORK. Σπουδαστές: Δόση Νικολέτα Καρακούση Πελαγία 30/5/2014 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ - Π.Μ.Σ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΚΕΦΑΛΑΙΟ 17: Web Services Εισαγωγή

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Επικοινωνία Client/Server

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Σύστημα Διαχείρισης Προϋπολογισμού. Bank Budget MIS

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Υπηρεσίες Ιστού (Web Services) Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ

Βάσεις δεδομένων και Microsoft Access

Τεχνολογία Πολυμέσων. Ενότητα # 19: Τηλεδιάσκεψη Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Λογισμικού

Η Oracle μετασχηματίζει την αγορά λύσεων υποδομής Cloud

Βάσεις Δεδομένων Ενότητα 1

ΕΙΔΗ ΣΥΣΤΗΜΑΤΩΝ ΠΑΡΑΓΩΓΗΣ

Ανάπτυξη Δικτυακής Εφαρμογής Διάχυσης και Ανάλυσης Γεωχωρικών Δεδομένων και Πληροφοριών

1 Cosmos Business Systems SA Cosmos Consulting SA Software Solutions

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

16PROC

ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ

Δίκτυα Υπολογιστών I

Υπολογιστική Νέφους Cloud computing

Δίκτυα Υπολογιστών I

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας

Κεφάλαιο 8 Η τεχνολογία των διαδικασιών

ΜΕΛΕΤΗ ΣΧΕΔΙΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ (CLOUD COMPUTING) ΜΕ ΕΜΦΑΣΗ ΣΤΗΝ ΚΑΤΑΣΚΕΥΗ ΔΕΝΤΡΩΝ.

Διαχείριση Πολιτισμικών Δεδομένων

«Μελέτη παραμέτρων ασφαλείας στις Υπηρεσίες Διαδικτύου με βάση την XML» Τ.Ε.Ι. ΚΑΒΑΛΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ & ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΠΛΗΡΟΦΟΡΙΩΝ

Κεφάλαιο 6 Λογισμικό Εφαρμογών. Εφαρμογές Πληροφορικής Κεφ.6 Καραμαούνας Πολύκαρπος 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Συστήματα Διοίκησης ΕΙΣΑΓΩΓΗ. Ηλεκτρονικές Συναλλαγές. Καθηγητής Δ. Ασκούνης, Δ. Πανόπουλος

Μεθοδική Ανάπτυξη Δικτυακής Υποδομής. Παρουσίαση στην ημερίδα για Σύγχρονες τάσεις στις Τηλεπικοινωνίες και Τεχνολογίες Αιχμής

ΔΙΟΙΚΗΣΗ ΒΙΟΜΗΧΑΝΙΚΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ III ΤΥΠΟΙ ΔΙΑΔΙΚΑΣΙΩΝ ΠΑΡΑΓΩΓΗΣ

Transcript:

Αρχιτεκτονικές κατανεμημένων συστημάτων

Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των συστημάτων κατανεμημένων αντικειμένων Περιγραφή των διαχειριστών αιτήσεων διάθεσης αντικειμένων και των αρχών στις οποίες βασίζονται τα πρότυπα CORBA Παρουσίαση της ομότιμης και της υπηρεσιοκεντρικής αρχιτεκτονικής ως νέων μοντέλων κατανεμημένης επεξεργασίας.

Περιεχόμενα Αρχιτεκτονικές πολυεπεξεργασίας Αρχιτεκτονικές πελάτη-διακομιστή Αρχιτεκτονικές κατανεμημένων αντικειμένων Διεπιχειρησιακή κατανεμημένη επεξεργασία

Κατανεμημένα συστήματα Σήμερα, σχεδόν όλα τα μεγάλα συστήματα που βασίζονται σε υπολογιστές είναι πλέον κατανεμημένα. Η επεξεργασία των πληροφοριών κατανέμεται σε πολλούς υπολογιστές και δεν περιορίζεται σε μία μόνο μηχανή. Επομένως η τεχνολογία των κατανεμημένων συστημάτων έχει μεγάλη σημασία για τα υπολογιστικά συστήματα των εταιρειών.

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

Χαρακτηριστικά κατανεμημένων συστημάτων Μερισμός πόρων Κοινή χρήση πόρων υλικού και λογισμικού. Ανοιχτή λειτουργία Χρήση εξοπλισμού και λογισμικού από διάφορους κατασκευαστές. Ταυτοχρονισμός Ταυτόχρονη επεξεργασία για τη βελτίωση της απόδοσης. Επεκτασιμότητα Αυξημένη διεκπεραιωτική ικανότητα με την προσθήκη νέων πόρων. Ανοχή ελαττωμάτων Η ικανότητα συνέχειας της λειτουργίας αφού ανακύψει κάποιο σφάλμα.

Μειονεκτήματα κατανεμημένων συστημάτων Πολυπλοκότητα Τα κατανεμημένα συστήματα είναι συνήθως πιο πολύπλοκα από τα συγκεντρωτικά συστήματα. Προστασία από εξωτερικούς κινδύνους Πιο ευάλωτα σε εξωτερικές επιθέσεις. Διαχειρισιμότητα Απαιτείται μεγαλύτερη προσπάθεια για τη διαχείριση του συστήματος. Απρόβλεπτες αποκρίσεις Οι αποκρίσεις ενός κατανεμημένου συστήματος εξαρτώνται από την οργάνωσή του και από το φόρτο του δικτύου.

Αρχιτεκτονικές κατανεμημένων συστημάτων Αρχιτεκτονικές πελάτη-διακομιστή Κατανεμημένες υπηρεσίες που ζητούν οι εφαρμογές-πελάτες. Οι διακομιστές που παρέχουν τις υπηρεσίες αντιμετωπίζονται διαφορετικά από τους πελάτες που τις χρησιμοποιούν. Αρχιτεκτονικές κατανεμημένων αντικειμένων Καμία διάκριση μεταξύ διακομιστών και πελατών. Οποιοδήποτε αντικείμενο του συστήματος μπορεί να παρέχει υπηρεσίες σε άλλα αντικείμενα και να χρησιμοποιεί υπηρεσίες άλλων αντικειμένων.

Ενδιάμεσο λογισμικό (middleware) Λογισμικό που διαχειρίζεται και υποστηρίζει τα διάφορα συστατικά στοιχεία ενός κατανεμημένου συστήματος. Στην ουσία, επικάθεται στη μέση του συστήματος. Το ενδιάμεσο λογισμικό είναι συνήθως κάποια εμπορική εφαρμογή και δεν γράφεται από προγραμματιστές για συγκεκριμένο σκοπό. Παραδείγματα Διαχειριστές επεξεργασίας συναλλαγών Μετατροπείς δεδομένων Ελεγκτές επικοινωνιών

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

Πολυεπεξεργαστικό σύστημα ελέγχου οδικής κυκλοφορίας

Αρχιτεκτονικές πελάτη-διακομιστή Η εφαρμογή μοντελοποιείται ως ένα σύνολο υπηρεσιών που παρέχονται από διακομιστές και ένα σύνολο πελατών που χρησιμοποιούν αυτές τις υπηρεσίες. Οι πελάτες γνωρίζουν τους διαθέσιμους διακομιστές, αλλά οι διακομιστές δεν χρειάζεται να γνωρίζουν τους πελάτες. Πελάτες και διακομιστές είναι λογικές διεργασίες Η αντιστοίχιση επεξεργαστών και διεργασιών δεν είναι απαραίτητα "1 προς 1".

Σύστημα πελάτη-διακομιστή

Υπολογιστές σε δίκτυο πελάτη-διακομιστή

Διαστρωματωμένη αρχιτεκτονική εφαρμογής Επίπεδο παρουσίασης Ασχολείται με την παρουσίαση των αποτελεσμάτων ενός υπολογισμού στους χρήστες του συστήματος και με τη συλλογή των δεδομένων εισόδου που καταχωρίζουν. Επίπεδο επεξεργασίας εφαρμογής Ασχολείται με τη διάθεση λειτουργιών για τη συγκεκριμένη εφαρμογή, για παράδειγμα, σε ένα τραπεζικό σύστημα, το άνοιγμα ή το κλείσιμο ενός λογαριασμού, κ.λπ. Επίπεδο διαχείρισης δεδομένων Ασχολείται με τη διαχείριση των βάσεων δεδομένων του συστήματος.

Επίπεδα εφαρμογής

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

Μοντέλο ελαφρών και βαρέων πελατών

Μοντέλο ελαφρύ πελάτη Χρησιμοποιείται όταν τα κληρονομημένα συστήματα μεταφέρονται σε αρχιτεκτονική πελάτη-διακομιστή. Το κληρονομημένο σύστημα αποτελεί και το ίδιο ένα διακομιστή, ενώ η διασύνδεση με γραφικό περιβάλλον υλοποιείται σε έναν πελάτη. Μεγάλο μειονέκτημα αποτελεί ο μεγάλος επεξεργαστικός φόρτος τόσο για το διακομιστή όσο και για το δίκτυο.

Μοντέλο βαρύ πελάτη Μεταβιβάζεται μεγαλύτερος φόρτος επεξεργασίας στον πελάτη αφού οι λειτουργίες επεξεργασίας της εφαρμογής εκτελούνται τοπικά. Ταιριάζει περισσότερο σε νέα συστήματα πελάτη-διακομιστή, στα οποία οι δυνατότητες του συστήματος πελάτη είναι εκ των προτέρων γνωστές. Είναι πιο περίπλοκο από το μοντέλο ελαφρύ πελάτη, ειδικά στον τομέα της διαχείρισης. Οι νέες εκδόσεις της εφαρμογής πρέπει να εγκαθίστανται σε κάθε πελάτη.

Σύστημα ATM πελάτη-διακομιστή

Τριστρωματικές αρχιτεκτονικές Σε μια τριστρωματική αρχιτεκτονική, καθένα από τα επίπεδα αρχιτεκτονικής της εφαρμογής μπορεί να εκτελείται σε διαφορετικό επεξεργαστή. Επιτρέπει καλύτερη απόδοση από την προσέγγιση του μοντέλου ελαφρύ πελάτη και είναι πιο απλή στη διαχείριση σε σχέση με την προσέγγιση του μοντέλου βαρύ πελάτη. Πιο επεκτάσιμη αρχιτεκτονική - καθώς οι απαιτήσεις αυξάνονται, μπορούν να προστεθούν επιπλέον διακομιστές.

Τριστρωματική αρχιτεκτονική πελάτη-διακομιστή

Αρχιτεκτονική κατανομής ενός διαδικτυακού τραπεζικού συστήματος

Χρήση διαφόρων αρχιτεκτονικών πελάτη-διακομιστή Αρχιτεκτονική Διστρωματική αρχιτεκτονική Π/Δ με ελαφρείς πελάτες Διστρωματική αρχιτεκτονική Π/Δ με βαρείς πελάτες Τριστρωματική ή πολυστρωματική αρχιτεκτονική Π/Δ Εφαρμογές Κληρονομημένα συστήματα εφαρμογών, στα οποία ο διαχωρισμός της επεξεργασίας εφαρμογής και της διαχείρισης δεδομένων είναι ανέφικτος. Εφαρμογές με έμφαση στους υπολογισμούς, όπως οι μεταγλωττιστές, οι οποίες έχουν περιορισμένες (ή και μηδαμινές) απαιτήσεις διαχείρισης δεδομένων. Εφαρμογές που χειρίζονται μεγάλο όγκο δεδομένων (για περιήγηση και υποβολή ερωτημάτων), οι οποίες έχουν περιορισμένες ή μηδαμινές απαιτήσεις επεξεργασίας. Εφαρμογές στις οποίες η επεξεργασία παρέχεται μέσω έτοιμου λογισμικού (π.χ. Microsoft Excel) στον πελάτη. Εφαρμογές που απαιτούν επεξεργασία δεδομένων με μεγάλες απαιτήσεις υπολογιστικής ισχύος (π.χ. οπτικοποίηση δεδομένων). Εφαρμογές με σχετικά σταθερή λειτουργικότητα τελικού χρήστη, οι οποίες χρησιμοποιούνται σε περιβάλλοντα με καλά εδραιωμένη διαχείριση συστήματος. Εφαρμογές μεγάλης κλίμακας με εκατοντάδες ή χιλιάδες πελάτες. Εφαρμογές στις οποίες τόσο τα δεδομένα όσο και η εφαρμογή είναι ευμετάβλητα. Εφαρμογές όπου ενοποιούνται δεδομένα από πολλές πηγές.

Αρχιτεκτονική κατανεμημένων αντικειμένων Στην αρχιτεκτονική κατανεμημένων αντικειμένων δεν γίνεται διάκριση μεταξύ διακομιστών και πελατών. Κάθε οντότητα που μπορεί να κατανεμηθεί είναι ένα αντικείμενο που παρέχει υπηρεσίες σε άλλα αντικείμενα και λαμβάνει υπηρεσίες από άλλα αντικείμενα. Η επικοινωνία των αντικειμένων γίνεται μέσω ενός συστήματος ενδιάμεσου λογισμικού το οποίο ονομάζεται διαχειριστής αιτήσεων διάθεσης αντικειμένων. Ωστόσο ο σχεδιασμός αρχιτεκτονικών κατανεμημένων αντικειμένων είναι πιο σύνθετος από αυτόν των συστημάτων πελάτη-διακομιστή.

Αρχιτεκτονική κατανεμημένων αντικειμένων

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

Χρήσεις αρχιτεκτονικής κατανεμημένων αντικειμένων Ως λογικού μοντέλου που επιτρέπει τη διάρθρωση και την οργάνωση του συστήματος. Σε αυτή την περίπτωση, εξετάζουμε τον τρόπο με τον οποίο θα διατίθενται οι λειτουργίες της εφαρμογής αποκλειστικά με βάση υπηρεσίες και συνδυασμούς υπηρεσιών. Ως ευέλικτης προσέγγισης για την υλοποίηση συστημάτων πελάτη-διακομιστή. Το λογικό μοντέλο του συστήματος είναι μοντέλο πελάτη-διακομιστή, αλλά τόσο οι πελάτες όσο και οι διακομιστές είναι κατανεμημένα αντικείμενα που επικοινωνούν μέσω ενός πλαισίου επικοινωνίας.

Σύστημα εξόρυξης δεδομένων

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

CORBA Το CORBA είναι ένα διεθνές πρότυπο Διαχειριστών Αιτήσεων Διάθεσης Αντικειμένων - ενδιάμεσου λογισμικού για τη διαχείριση επικοινωνιών μεταξύ κατανεμημένων αντικειμένων. Ενδιάμεσο λογισμικό για την υποστήριξη κατανεμημένης επεξεργασίας απαιτείται σε δύο επίπεδα: Στο επίπεδο της λογικής επικοινωνίας, το ενδιάμεσο λογισμικό επιτρέπει σε αντικείμενα που βρίσκονται σε διαφορετικούς υπολογιστές να ανταλλάσσουν δεδομένα και πληροφορίες ελέγχου Σε επίπεδο συστατικών στοιχείων, το ενδιάμεσο λογισμικό παρέχει μια βάση για την ανάπτυξη συμβατών συστατικών στοιχείων. Έχουν οριστεί πρότυπα συστατικών στοιχείων CORBA.

Δομή εφαρμογής βασισμένης στο CORBA

Δομή εφαρμογής Αντικείμενα εφαρμογής. Τυποποιημένα αντικείμενα, τα οποία ορίζονται από την OMG για ένα συγκεκριμένο πεδίο εφαρμογής, για παράδειγμα τον κλάδο ασφαλειών. Θεμελιώδεις υπηρεσίες CORBA, όπως η διαχείριση καταλόγων και η προστασία από εξωτερικούς κινδύνους. Οριζόντιες (δηλαδή κοινές σε πολλές εφαρμογές) λειτουργίες, όπως λειτουργίες διασύνδεσης χρήστη.

Πρότυπα CORBA Ένα μοντέλο για αντικείμενα εφαρμογών Ένα αντικείμενο CORBA αποτελεί την ενθυλάκωση μιας κατάστασης με μια σαφώς καθορισμένη διασύνδεση ανεξάρτητη από γλώσσες προγραμματισμού, η οποία περιγράφεται σε μια γλώσσα ορισμού διασυνδέσεων (Interface Definition Language IDL). Ένα διαχειριστή αιτήσεων για τη διάθεση αντικειμένων, που διαχειρίζεται τις αιτήσεις για υπηρεσίες των αντικειμένων. Ένα σύνολο υπηρεσιών αντικειμένων, οι οποίες χρησιμεύουν σε πολλές κατανεμημένες εφαρμογές. Ένα σύνολο κοινών συστατικών στοιχείων δομημένων επάνω σε αυτές τις υπηρεσίες.

Αντικείμενα CORBA Τα αντικείμενα CORBA μοιάζουν, στη φιλοσοφία τους, με τα αντικείμενα των C++ και Java. ΠΡΕΠΕΙ να έχουν έναν ξεχωριστό ορισμό διασύνδεσης που εκφράζεται μέσω μιας κοινής γλώσσας (IDL) η οποία μοιάζει με τη C++. Υπάρχει αντιστοίχιση από αυτή τη γλώσσα IDL σε άλλες γλώσσες προγραμματισμού (C++, Java, κ.λπ.). Επομένως, αντικείμενα που είναι γραμμένα σε διαφορετικές γλώσσες μπορούν να επικοινωνούν μεταξύ τους.

Διαχειριστής αιτήσεων διάθεσης αντικειμένων (object request broker - ORB) O διαχειριστής αιτήσεων διάθεσης αντικειμένων χειρίζεται την επικοινωνία μεταξύ αντικειμένων. Έχει γνώση όλων των αντικειμένων του συστήματος και των διασυνδέσεών τους. Το αντικείμενο που πραγματοποιεί μια κλήση χρησιμοποιεί ένα διαχειριστή αιτήσεων διάθεσης αντικειμένων για να δεσμεύσει ένα στέλεχος IDL το οποίο ορίζει τη διασύνδεση του καλούμενου αντικειμένου. Η κλήση του στελέχους αυτού έχει αποτέλεσμα την κλήση του διαχειριστή αιτήσεων διάθεσης αντικειμένων, ο οποίος κατόπιν καλεί το απαιτούμενο αντικείμενο μέσω ενός σκελετού IDL που συνδέει τη διασύνδεση με την υλοποίηση της υπηρεσίας.

Επικοινωνίες αντικειμένων μέσω ενός διαχειριστή αιτήσεων διάθεσης αντικειμένων

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

Επικοινωνία μεταξύ διαχειριστών αιτήσεων διάθεσης αντικειμένων

Υπηρεσίες CORBA Υπηρεσίες ονομασίας και διακίνησης Επιτρέπουν στα αντικείμενα να εντοπίζουν και να αναφέρονται σε άλλα αντικείμενα του δικτύου. Υπηρεσίες ειδοποίησης Επιτρέπουν στα αντικείμενα να ειδοποιούν άλλα αντικείμενα ότι έλαβε χώρα κάποιο συμβάν. Υπηρεσίες συναλλαγών Υποστηρίζουν ατομικές συναλλαγές και επαναφορά σε περίπτωση αστοχίας.

Διεπιχειρησιακή κατανεμημένη επεξεργασία Για λόγους προστασίας και διαλειτουργικότητας, η χρήση κατανεμημένων συστημάτων εφαρμόζεται κυρίως σε επίπεδο επιχειρήσεων. Εφαρμόζονται τοπικά πρότυπα, τοπικές λειτουργικές διαδικασίες και διαδικασίες. Τα νεότερα μοντέλα κατανεμημένων συστημάτων είναι σχεδιασμένα έτσι ώστε να επιτρέπουν διεπιχειρησιακή κατανεμημένη επεξεργασία στις περιπτώσεις στις οποίες υπάρχουν διάφοροι κόμβοι σε διαφορετικές εγκαταστάσεις.

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

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

Αποκεντρωμένη ομότιμη αρχιτεκτονική

Ημισυγκεντρωτική ομότιμη αρχιτεκτονική

Υπηρεσιοκεντρικές αρχιτεκτονικές Περιστρέφονται γύρω από εξωτερικά παρεχόμενες υπηρεσίες (υπηρεσίες Ιστού). Η υπηρεσία Ιστού αποτελεί μια τυποποιημένη προσέγγιση διάθεσης ενός επαναχρησιμοποιήσιμου συστατικού στοιχείου μέσω του Ιστού Μια υπηρεσία φορολογικών δηλώσεων θα μπορούσε να επιτρέπει στους χρήστες να συμπληρώνουν τις φορολογικές τους δηλώσεις και να τις υποβάλλουν στην εφορία.

Η γενική έννοια της υπηρεσίας Μια ενέργεια ή λειτουργία που παρέχεται από ένα μέλος σε ένα άλλο. Αν και η διαδικασία μπορεί να σχετίζεται με κάποιο προϊόν με υλική υπόσταση, η εκτέλεσή της στερείται φυσικής υπόστασης και συνήθως δεν οδηγεί σε ιδιοκτησία οποιουδήποτε από τους παράγοντες παραγωγής. Συνεπώς η παροχή της υπηρεσίας είναι ανεξάρτητη από την εφαρμογή που χρησιμοποιεί την υπηρεσία.

Υπηρεσίες Ιστού

Υπηρεσίες και κατανεμημένα αντικείμενα Ανεξαρτησία από τον πάροχο. Δημοσιοποίηση της διαθεσιμότητας των υπηρεσιών. Ενδεχομένως, καθυστέρηση σύνδεσης υπηρεσιών κατά την εκτέλεση. Ευκαιριακή κατασκευή νέων υπηρεσιών μέσω σύνθεσης. Καταβολή αντιτίμου ανάλογα με τη χρήση των υπηρεσιών. Μικρότερες και πιο συμπαγείς εφαρμογές. Εφαρμογές που μπορούν να αντιδρούν και να προσαρμόζουν τη λειτουργία τους σύμφωνα με το περιβάλλον τους.

Πρότυπα υπηρεσιών Οι υπηρεσίες στηρίζονται σε συμφωνημένα πρότυπα βασισμένα στη γλώσσα XML ώστε να είναι διαθέσιμες σε οποιαδήποτε πλατφόρμα και να είναι γραμμένες σε οποιαδήποτε γλώσσα προγραμματισμού. Κύρια πρότυπα SOAP - Simple Object Access Protocol (Απλό πρωτόκολλο προσπέλασης αντικειμένων) WSDL - Web Services Description Language (Γλώσσα περιγραφής υπηρεσιών Ιστού) UDDI - Universal Description, Discovery and Integration (Παγκόσμια περιγραφή, εντοπισμός, και ενοποίηση)

Σενάριο υπηρεσιών Ένα πληροφοριακό σύστημα αυτοκινήτου παρέχει στον οδηγό πληροφορίες σχετικά με τον καιρό, την κίνηση στους δρόμους, τοπικά στοιχεία κ.λπ. Είναι συνδεδεμένο με το ραδιόφωνο του αυτοκινήτου έτσι ώστε οι πληροφορίες να παραδίδονται ως ραδιοφωνικό σήμα σε κάποιο συγκεκριμένο κανάλι. Το αυτοκίνητο είναι εφοδιασμένο με δέκτη GPS για τον εντοπισμό της θέσης του, η οποία χρησιμοποιείται από το σύστημα με σκοπό την προσπέλαση διαφόρων υπηρεσιών πληροφόρησης. Οι πληροφορίες μπορούν να παραδίδονται στη γλώσσα του οδηγού.

Πληροφοριακό σύστημα αυτοκινήτου

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

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