Κατανεµηµένος Προγραµµατισµός & Προγραµµατισµός στο ιαδίκτυο

Σχετικά έγγραφα
Κατανεµηµένα Συστήµατα

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

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

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

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

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

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

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

Τεχνολογικά Επιτεύγµατα. Πλεονεκτήµατα. Ορισµός Κατανεµηµένου Συστήµατος. Μειονεκτήµατα. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο

CORBA. Αρχιτεκτονική και 3-tier 3. εφαρµογές. Β. Φλώρος. Μαρτάκος. Τµήµα Πληροφορικής και Τηλεπικοινωνιών Εθνικό και Καποδιστιακό Πανεπιστήµιο Αθηνών

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

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

Εισαγωγή στην Πληροφορική

Γλώσσες προγραµµατισµού. Ανάπτυξη Συστηµάτων Λογισµικού

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

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

ΤΕΧΝΟΛΟΓΙΑ ΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Κατανεµηµένασυστήµατα αρχείων

Μελέτη Μεθοδολογιών ικτυακής Επικοινωνίας Αρθρωµάτων Λογισµικού


Εισαγωγή Επανάληψη. ΤΕΙ Στερεάς Ελλάδας. ΣT Εξάμηνο, Κατεύθυνση Μηχανικών Δικτύων Τ.Ε. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Διαδικτυακός Προγραμματισμός

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

Πληροφορίες. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Ζητήµατα Επικοινωνίας Πελάτη-Εξυπηρετητή. Εξυπηρετητής

ΚΕΦΑΛΑΙΟ 3 ΑΡΧΙΤΕΚΤΟΝΙΚΕΣ ΔΙΑΤΑΞΕΙΣ ΛΟΓΙΣΜΙΚΟΥ. Έννοιες-κλειδιά. Σύνοψη

Τεχνολογία TCP/IP ΙΑ ΙΚΤΥΩΣΗ- INTERNET. Τεχνολογίες Τηλεκπαίδευσης & Εφαρµογές - Ιούλιος

Συγκριτικά Πλεονεκτήµατα Γραµµατείας 2003 έναντι Γραµµατείας 2.5

Χαρακτηρισµός Κατανεµηµένων Συστηµάτων

2η Προγραµµατιστική Εργασία

Επικοινωνία Client/Server Απομακρυσμένη Κλήση Διαδικασιών

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

7.11 Πρωτόκολλα εφαρµογής

ηµιουργία και ιδιότητες των υπηρεσιών

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

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

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή

* Enterprise Resource Planning ** Customer Relationship Management

7.2 Τεχνολογία TCP/IP

7.11 Πρωτόκολλα Εφαρµογής Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Μοτίβα Σχεδίασης (Design Patterns)

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

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων

Αριστοµένης Μακρής Εργαστήρια Η/Υ

ΜΑΘΑΙΝΟΝΤΑΣ ΤΑ GIS ΣΤΗ ΠΡΑΞΗ ΤΟ ARCGIS 9.3. Α. Τσουχλαράκη, Γ. Αχιλλέως ΚΕΦΑΛΑΙΟ 10 ΔΗΜΙΟΥΡΓΙΑ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΓΕΩΒΑΣΕΩΝ

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

ΠΡΟΧΩΡΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Χαρίδημος Κονδυλάκης Εισαγωγή

Σχεδίαση Middleware Εγχειρίδιο Μελέτης

Σύστηµα Java RMI. Κατανεµηµένα Συστήµατα 17-1

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

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

Αρχιτεκτονική πελάτη-εξυπηρέτη Οι διεργασίες που εκτελούνται στο δίκτυο είναι είτε πελάτες (clients) είτε εξυπηρέτες (servers). Εξυπηρέτης: παθητικός,

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

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

ΕΙΣΑΓΩΓΗ ΣΤΙΣ Β ΣΕ Ε Σ Ι ΟΜΕΝ

Λογισµικό (Software SW) Λειτουργικά Συστήµατα και ίκτυα

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

ΘΕΜΑΤΑ ΙΠΛΩΜΑΤΙΚΩΝ ΕΡΓΑΣΙΩΝ 2006 / 2007

Remote Method Invocation (RMI)

Εισαγωγή. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Κατανεµηµένα συστήµατα αρχείων. Μέρη κατανεµηµένου συστήµατος αρχείων

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

ΠΕΡΙΕΧΟΜΕΝΑ ΕΙΣΑΓΩΓΗ 1. CORBA (Common Object Request Broker Architecture - Αρχιτεκτονική ιαµεσολάβησης για Αιτήµατα Κοινών Αντικειµένων)

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Μεθοδολογίες ικτυακής Επικοινωνίας Αρθρωµάτων Λογισµικού

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

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

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών Δίκτυα υπολογιστών. (και το Διαδίκτυο)

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΟΙΚΗΣΗΣ. Ανάπτυξη Πληροφοριακών Συστηµάτων Επισκόπηση Π.Σ. & τεχνικές για Ανάλυση και Ανάπτυξη. πληροφοριακών συστηµάτων

ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

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

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

Σκοπιµότητα των firewalls

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

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας. Μοντέλο TCP/IP. Ενότητα E. Συστήµατα Επικοινωνίας

Ασφάλεια Υπολογιστικών Συστηµάτων. Ορισµοί

Λογισµικό ΣΓΠ. Συστήµατα Γεωγραφικών Πληροφοριών ΙΙ. Χαροκόπειο Πανεπιστήµιο, Τµήµα Γεωγραφίας, ΣΓΠ ΙΙ, Χρίστος Χαλκιάς

Βασικές Έννοιες Web Εφαρμογών

Πληροφορίες. E-03: Λειτουργικά Συστήµατα ΙΙ 6. Εαρινό Εξάµηνο Εισαγωγή. Στόχοι Κατανεµηµένων Συστηµάτων. ιαφάνεια

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

Ανάλυση Συστηµάτων και Τεχνολογία Λογισµικού

Εισαγωγή. Τμήμα Μηχανικών Σχεδίασης Προϊόντων και Συστημάτων, ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ. Παναγιώτης Κουτσαμπάσης

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

ΤεχνολογίεςΕπικοινωνιών και Πληροφορικής (ΤΠΕ) Στην περιφερειακήανάπτυξη. Ηλίας Κοντάκος, ΚτΠ Α.Ε.

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

ΜΑΘΗΜΑ 6. Σχήµατα ιαλειτουργικότητας Μεταδεδοµένων. Το RDF Το Warwick Framework. Ιόνιο Πανεπιστήµιο - Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας

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

Προσοµοίωση λειτουργίας επιπέδων OSI

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής

ΜΕΤΑΒΑΤΙΚΕΣ ΠΡΟΫΠΟΘΕΣΕΙΣ ΑΠΟΚΤΗΣΗΣ ΠΤΥΧΙΟΥ

Business Software & Networks. Λύσεις Προώθησης Πωλήσεων µε τη πλατφόρµα mobile server. salesman. ing software platform.

X.25. Επίπεδο πακέτου Επίπεδο ζεύξης Φυσικό επίπεδο. ΕΥ, Κεφ. 10 (3/3) ρ Παύλος Θεοδώρου 1

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

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Θεόδωρος Γ. Λάντζος Διάλεξη Νο1

Ενότητα 2. Πηγές Λογισμικού. Πληροφοριακά Συστήματα Διοίκησης ΙI Νίκος Καρακαπιλίδης 2-1

Ταχύτητα, Απλότητα & Αξιοπιστία

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

Ασφάλεια Υπολογιστικών Συστηµάτων

Transcript:

Πανεπιστήµιο Αιγαίου Τµήµα Μηχανικών Πληροφοριακών & Επικοινωνιακών Συστηµάτων Πρόγραµµα Προπτυχιακών Σπουδών Κατανεµηµένος Προγραµµατισµός & Προγραµµατισµός στο ιαδίκτυο Κατανεµηµένος Προγραµµατισµός (Γενικά Αρχές) Κωνσταντίνος Ράπτης Πραγµατικά Υπολογιστικά Συστήµατα Τυπικά κατανεµηµένα και ολοκληρωµένα πολλαπλοί υπολογιστές εργάζονται µαζί βελτιώνοντας, µεταξύ άλλων, την κλιµάκωση και την διαθεσιµότητα. χρησιµοποιούν τεχνολογίες ενδιαµέσων (middleware) ως συνδετικούς κρίκους.

Τι είναι ένας ενδιάµεσος; Αποτελεί των συνδετικό κρίκο µεταξύ λογισµικού και επιπλέον περιλαµβάνει συνεργαζόµενες υπηρεσίες για την κατασκευή κατανεµηµένων συστηµάτων. Αναλαµβάνει τις κλήσεις σε αποµακρυσµένες υπηρεσίες εµφανίζει τον κατανεµηµένο προγραµµατισµό ως τοπικό καλύπτει τις δικτυακές πολυπλοκότητες και γενικότερα τις πολυπλοκότητες του κατανεµηµένου προγραµµατισµού Ενδιάµεσος: Βασικά τµήµατα Εφαρµογές Αποµακρυσµένες επικλήσεις µεθόδων Αποµακρυσµένες κλήσεις διαδικασιών Πρωτόκολλο αίτησης/απόκρισης Αναπαράσταση δεδοµένων Ενδιάµεσος Λειτουργικό σύστηµα / ίκτυο

Ενδιάµεσος: Συνεργαζόµενες υπηρεσίες Βασικά πρόσθετα στον ενδιάµεσο Εκπληρώνουν κοινές ανάγκες των εφαρµογών σε ένα κατανεµηµένο σύστηµα Ασφάλειας ιαδράσεων Κατάλογου Ονοµασίας Ενδιάµεσος Ενδιάµεσος: Ουσιαστική συνεισφορά Βοηθάει στην αντιµετώπιση προβληµάτων, όπως: προσπέλαση σε παλαιά συστήµατα, ακεραιότητα δεδοµένων, κλιµάκωση, διαθεσιµότητα, ολοκλήρωση µεταξύ ετερογενών τµηµάτων.

Ενδιάµεσος: Πλεονεκτήµατα Πλεονεκτήµατα κρύβει το ετερογενές περιβάλλον > πρωτόκολλα > υλικό > λειτουργικά συστήµατα > γλώσσες προγραµµατισµού επιτρέπει τη διαφάνεια τοποθεσίας Ενδιάµεσος : Πλεονεκτήµατα (συν.) παρέχει υπηρεσίες > ασφάλειας > ονοµατολογίας > καταλόγου >...

Κατανεµηµένος Προγραµµατισµός Εµπεριέχει: τοπικό προγραµµατισµό και δεδοµένα διαφανή ολοκλήρωση και κατανοµή κλήσεις σε αποµακρυσµένα προγράµµατα προσπέλαση αποµακρυσµένων δεδοµένων κατανεµηµένη φόρτωση σε πολλά συστήµατα αξιοπιστία µέσω αυτονοµίας Κατανεµηµένος Προγραµµατισµός: ιαφάνεια φαινοµενικά ως τοπικός προγραµµατισµός κλήσεις διαδικασιών αντικείµενα εξαρτήµατα * Όµως, ο κατανεµηµένος προγραµµατισµός δεν είναι τοπικός *

Κατανεµηµένος Προγραµµατισµός: Θέµατα ιαφάνειας Ύπαρξη δικτύου λανθάνουσα κατάσταση κολλήµατα εφαρµογών, συµφόρηση δικτύου, αποτυχίες σπασµένοι δεσµοί, χαµένα µηνύµατα,. οι εφαρµογές πρέπει να έχουν την έννοια του δικτύου Αποµακρυσµένες ιαδικασίες διαδικασίες, όχι µέθοδοι Τα πρότυπα είναι ανεξάρτητα γλώσσας προγραµµατισµού οι πελάτες δεν γνωρίζουν και δεν ενδιαφέρονται για την γλώσσα προγραµµατισµού της εφαρµογής του εξυπηρετητή προσδιορίζεται η διεπαφή της διαδικασίας µε τρόπο ανεξάρτητο ως προς τη γλώσσα προγραµµατισµού

Μοντέλο Αντικειµένου Αντικείµενο δεδοµένα µέθοδοι Σηµαντικό στοιχείο: ενθυλάκωση Αναφορές αντικειµένων µοναδικές ταυτότητες αντικειµένων δεν πρέπει να επαναχρησιµοποιούνται δεν πρέπει να συγχέονται µε τους δείκτες Μοντέλο Αντικειµένου (συν.) Μοντέλο αλληλεπίδρασης: επίκληση µεθόδων αναφορά αντικειµένου + όνοµα µεθόδου ιεπαφές υπογραφή συνόλου µεθόδων > τύποι ορισµάτων > επιστρεφόµενες τιµές > εξαιρέσεις

Μοντέλο Αντικειµένου (συν.) Εξαιρέσεις σηµατοδοτούν σφάλµατα διαχωρίζουν τη διαχείριση σφαλµάτων ο έλεγχος περνάει στον κώδικα διαχείρισης σφάλµατος στόχος: επαναφορά από σφάλµατα προκειµένου να αποφευχθεί η αποτυχία Συλλογή σκουπιδιών διαγράφονται αντικείµενα τα οποία δεν χρησιµοποιούνται Αποµακρυσµένα Αντικείµενα οι κλήσεις αποµακρυσµένων διαδικασιών δεν ήταν αντικειµενοστραφής ως συνέπεια έχουµε τους Object Request Brokers αποµακρυσµένα αντικείµενα µε µεθόδους δηµιουργία/τοποθέτηση αποµακρυσµένων αντικειµένων κλήση των µεθόδων τους

Αποµακρυσµένα Αντικείµενα (συν.) πλέον καλούνται οι µέθοδοι αντικειµένων τα αντικείµενα κρατάνε τα δεδοµένα πολλοί πελάτες δύναται να συνδεθούν σε ένα αντικείµενο ζητήµατα διαφάνειας η διάρκεια ζωής ενός αντικειµένου δηµιουργία, διαγραφή, συλλογή σκουπιδιών ταυτοχρονισµός Αποµακρυσµένα αντικείµενα (συν.) Συχνά υιοθετείται η αρχιτεκτονική πελάτη/εξυπηρετητή πιθανές σειρές αλληλεπιδράσεων ενισχύεται η ενθυλάκωση ύναται να δηµιουργηθούν αντίγραφα ύναται να µεταναστεύσουν ύναται να προσπελασθούν ταυτοχρόνως

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

Εξαρτήµατα Λογισµικού (συν.) Τα εξαρτήµατα δεν είναι αντικείµενα δεν υπάρχει κληρονοµικότητα δεν υπάρχει εγγενής κατάσταση Ως πλεονεκτήµατα επαναχρησιµοποιούµενος κώδικας µε ορισµένη συµπεριφορά σταθερά και αξιόπιστα ιεπαφές Ορίζουν συµπεριφορά/λειτουργία τα εξαρτήµατα µπορούν να υποστηρίξουν πολλαπλές διεπαφές ίδιες διεπαφές δύναται να παρέχονται από πολλαπλά εξαρτήµατα πολυµορφισµός Οι πελάτες προσπελάζουν µόνο µεθόδους και ιδιότητες όχι τα αντικείµενα και ούτε το εσωτερικό τους

Γλώσσες Ορισµού ιεπαφών Interface Definition Languages - IDL Ο ορισµός διεπαφών ενσωµατώνεται σε µία γλώσσα προγραµµατισµού επιτρέπει τη χρήση µίας απλής γλώσσας επιτρέπει την απεικόνιση παραµέτρων εισόδου/εξόδου ως κανονικές παράµετροι Πρόβληµα: ετερογένεια Λύση: οι γλώσσες ορισµού διεπαφών ανεξάρτητες από τις γλώσσες υλοποίησης Γλώσσες Ορισµού ιεπαφών // Person.idl Struct Person { string name; string place; long year; }; interface PersonList { readonly attribute string listname; void addperson(in Person p); void getperson(in string name, out Person p); }; CORBA IDL

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

Κατανεµηµένες Εφαρµογές Μοντέλο peer-to-peer : εξυπηρετητής ηλεκτρονικού ταχυδροµείο µε εξυπηρετητή ηλεκτρονικού ταχυδροµείου (mail server to mail server) τηλεφωνικές συναλλαγές επιχειρηµατικές (business to business) Κατανεµηµένες Εφαρµογές (συν.) Εφαρµογές πολλαπλών επιπέδων (multi-tier applications) επίπεδο πελάτη: διεπαφές χρήστη επίπεδο εφαρµογής: διεργασίες και κανόνες επίπεδο δεδοµένων: προσπέλαση δεδοµένων και κανόνες ακεραιότητας δεδοµένων

Εφαρµογές πολλαπλών επιπέδων Επίπεδο πελάτη (client layer) στατικές σελίδες Web Web-based µέσω προγραµµάτων CGI ενεργές σελίδες Web στον πελάτη ενεργές σελίδες web στον εξυπηρετητή παραδοσιακές εφαρµογές πελάτη πελάτες υπηρεσιών web Εφαρµογές πολλαπλών επιπέδων (συν.) Επίπεδο εφαρµογής (application layer) πιθανών πολλαπλά επίπεδα κατανοµή και αντιγραφή ανάλογα βασικός στόχος η επαναχρησιµοποίηση της λογικής (business logic)

Εφαρµογές πολλαπλών επιπέδων (συν.) Επίπεδο δεδοµένων (data layer) προάγεται η ακεραιότητα των δεδοµένων αποµόνωση της λογικής από τα δεδοµένα δύναται να διαιρεθούν και να αντιγραφούν Πηγές - Βιβλιογραφία George Coulouris, Jean Dollimore and Tim Kindberg, Distributed Systems: Concepts and Design, 3rd Edition, Addison-Wesley, 2001.

Προτεινόµενα άρθρα Andrew Birrell, Greg Nelson, Susan S. Owicki and Edward Wobber, Network Objects, Software Practice and Experience 25 (S4) : 87-130 (1995). Theo Dirk Meijler and Oscar Nierstrasz, Beyond Objects: Components, In Cooperative Information Systems: Current Trends and Directions, M. P. Papazoglou, G. Schlageter (Ed.), Academic Press, 49-78 (1997). R. Schantz and D. Schmidt, Middleware for Distributed Systems: Evolving the Common Structure for Network-centric Applications, Encyclopedia of Software Engineering, Wiley & Sons, 2001.