Κατανεμημένα Συστήματα - Open Courses (INF104)
Γεώργιος Ξυλωμένος
Στο μάθημα καλύπτονται οι βασικές έννοιες των κατανεμημένων συστημάτων (αρχές, συστατικά στοιχεία, προσεγγίσεις σχεδίασης, προβλήματα υλοποίησης), ώστε οι φοιτητές να αποκτήσουν αντίληψη των δυνατοτήτων που προσφέρουν και των προβλημάτων που αντιμετωπίζουν σήμερα τα κατανεμημένα συστήματα. Αφού γίνει μια εισαγωγή στα κατανεμημένα συστήματα (μοντέλα οργάνωσης), καλύπτονται βασικά ζητήματα κατανεμημένης επεξεργασίας (εκλογή αρχηγού, κατανεμημένες συναλλαγές) καθώς και τα βασικά θέματα υλοποίησής τους (δικτύωση, πολυνημάτωση, απομακρυσμένη κλήση αντικειμένων, μηχανισμοί ασφάλειας). Στη συνέχεια εξετάζονται οι βασικές έννοιες των συστημάτων ομοτίμων (δομημένα συστήματα, δρομολόγηση) και οι εφαρμογές τους (αναζήτηση περιεχομένου, πολυεκπομπή), παρουσιάζονται ορισμένες κατανεμημένες υπηρεσίες (κατανεμημένη ονομασία, κατανεμημένη αποθήκευση) και τέλος εξετάζονται μηχανισμοί επικοινωνίας υψηλότερου επιπέδου (μηνυματοστρεφές ενδιάμεσο λογισμικό, υπηρεσίες Ιστού).
Το πρακτικό μέρος του μαθήματος επικεντρώνεται στις δυνατότητες που δίνει η Java για τον προγραμματισμό κατανεμημένων συστημάτων και στην υλοποίηση εφαρμογών κατανεμημένων εφαρμογών. Η προγραμματιστική εργασία του μαθήματος αφορά την κατασκευή ενός δομημένου συστήματος ομοτίμων για αναζήτηση αρχείων με χρήση απομακρυσμένων αντικειμένων.
Λιγότερα
Στο μάθημα καλύπτονται οι βασικές έννοιες των κατανεμημένων συστημάτων (αρχές, συστατικά στοιχεία, προσεγγίσεις σχεδίασης, προβλήματα υλοποίησης), ώστε οι φοιτητές να αποκτήσουν αντίληψη των δυνατοτήτων που προσφέρουν και των προβλημάτων που αντιμετωπίζουν σήμερα τα κατανεμημένα συστήματα. Αφού γίνει μια εισαγωγή στα κατανεμημένα συστήματα (μοντέλα οργάνωσης), καλύπτονται βασικά ζητήματα κατανεμημένης επεξεργασίας (εκλογή αρχηγού, κατανεμημένες συναλλαγές) καθώς και τα βασικά θέματα υλοποίησής τους (δικτύωση, πολυνημάτωση, απομακρυσμένη κλήση αντικειμένων, μηχανισμοί ασφάλειας). Στη συνέχεια εξετάζονται οι βασικές έννοιες των συστημάτων ομοτίμων (δομημένα συστήματα, δρομολόγηση) και οι εφαρμογές τους (αναζήτηση περιεχομένου, πολυεκπομπή), παρουσιάζονται ορισμένες κατανεμημένες υπηρεσίες (κατανεμημένη ονομασία, κατανεμημένη αποθήκευση) και τέλος εξετάζονται μηχανισμοί επικοινωνίας υψηλότερου επιπέδου (μηνυματοστρεφές ενδιάμεσο λογισμικό, υπηρεσίες Ιστού).
Το πρακτικό μέρος του μαθήματ
Στο μάθημα καλύπτονται οι βασικές έννοιες των κατανεμημένων συστημάτων (αρχές, συστατικά στοιχεία, προσεγγίσεις σχεδίασης, προβλήματα υλοποίησης), ώστε οι φοιτητές να αποκτήσουν αντίληψη των δυνατοτήτων που προσφέρουν και των προβλημάτων που αντιμετωπίζουν σήμερα τα κατανεμημένα συστήματα. Αφού γίνει μια εισαγωγή στα κατανεμημένα συστήματα (μοντέλα οργάνωσης), καλύπτονται βασικά ζητήματα κατανεμημένης επεξεργασίας (εκλογή αρχηγού, κατανεμημένες συναλλαγές) καθώς και τα βασικά θέματα υλοποίησής τους (δικτύωση, πολυνημάτωση, απομακρυσμένη κλήση αντικειμένων, μηχανισμοί ασφάλειας). Στη συνέχεια εξετάζονται οι βασικές έννοιες των συστημάτων ομοτίμων (δομημένα συστήματα, δρομολόγηση) και οι εφαρμογές τους (αναζήτηση περιεχομένου, πολυεκπομπή), παρουσιάζονται ορισμένες κατανεμημένες υπηρεσίες (κατανεμημένη ονομασία, κατανεμημένη αποθήκευση) και τέλος εξετάζονται μηχανισμοί επικοινωνίας υψηλότερου επιπέδου (μηνυματοστρεφές ενδιάμεσο λογισμικό, υπηρεσίες Ιστού).
Το πρακτικό μέρος του μαθήματ
Στην παρούσα ενότητα περιλαμβάνονται εισαγωγικές έννοιες του μαθήματος όπως η κατανόηση των διαφόρων τύπων συστημάτων πολλών επεξεργαστών και του λογισμικού συστήματος που χρησιμοποιούν, η εξοικείωση με τις αρχές σχεδίασης και τις παρεχόμενες υπηρεσίες των κατανεμημένων συστημάτων, και τέλος, η κατανόηση των βασικών μοντέλων οργάνωσης κατανεμημένων συστημάτων (μοντέλο πελάτη-εξυπηρετητή και μοντέλο ομοτίμων).
Λέξεις κλειδιά: Διαφάνεια, κλιμάκωση, πελάτης-εξυπηρετητής, συστήματα ομοτίμων.
Στην ενότητα αυτή καλύπτονται μια σειρά ζητημάτων κατανεμημένης επεξεργασίας. Αρχικά, παρουσιάζεται το πρόβλημα της εκλογής αρχηγού και μια σειρά αλγορίθμων εκλογής για διαφορετικές τοπολογίες. Στη συνέχεια καλύπτονται οι ατομικές συναλλαγές, τα προβλήματα υλοποίησής τους, και μια σειρά από μεθόδους για τον έλεγχο ταυτοχρονισμού στις συναλλαγές, ολοκληρώνοντας με μια αναφορά στα κατανεμημένα πρωτόκολλα δέσμευσης.
Λέξεις κλειδιά: Εκλογή αρχηγού, ατομικές συναλλαγές, έλεγχος ταυτοχρονισμού, κλείδωμα, αισιόδοξος έλεγχος, διάταξη χρονοσφραγίδων, κατανεμημένη δέσμευση.
Η ενότητα ξεκινά με επανάληψη των βασικών πρωτοκόλλων επικοινωνίας και της έννοιας των υποδοχών, υποδοχές στην Java, και θέματα εξοικείωσης με την λειτουργικότητα και την υλοποίηση των απομακρυσμένων κλήσεων. Στη συνέχεια καλύπτει την έννοια των νημάτων και των διεργασιών, καθώς και τους μηχανισμούς διαχείρισης και συγχρονισμού νημάτων της Java. Μετά περιγράφονται τα μοντέλα απομακρυσμένων αντικειμένων και το μοντέλο απομακρυσμένων αντικειμένων και κλήσεων Java RMI. Τέλος, καλύπτεται η αρχιτεκτονική ασφάλειας της Java και οι μηχανισμοί που παρέχει για έλεγχο πρόσβασης, κρυπτογραφία, συνόψεις μηνυμάτων, ψηφιακές υπογραφές και ψηφιακά πιστοποιητικά.
Λέξεις κλειδιά: Υποδοχές, σειριακοποίηση, RPC, νήματα, ταυτοχρονισμός, αντικείμενα, Java RMI, διεπαφές, πάροχοι, λίστες ελέγχου προσπέλασης, συνόψεις μηνυμάτων, κρυπτογραφία, κλειδιά, υπογραφές, πιστοποιητικά.
Η παρούσα ενότητα περιέχει υλικό για την έννοια του πίνακα κατακερματισμού και της κατανεμημένης μορφής του (DHT), με έμφαση στα συστήματα Chord και Pastry. Τα επί μέρους θέματα που παρουσιάζονται, αφορούν τη πολυεκπομπή μέσω DHT (σύστημα Scribe).
Λέξεις κλειδιά: Κατανεμημένοι πίνακες κατακερματισμού, DHT, Chord, Pastry, πολυεκπομπή, αποθήκευση, Scribe.
Η παρούσα ενότητα αρχικά δίνει μια εισαγωγή σε θέματα ονομασίας (σχέση ονομάτων, διευθύνσεων και αναγνωριστικών) και στην ανάλυση ονομάτων (χώροι ονομάτων, συστήματα ονομασίας), εξετάζει μια σειρά μελετών περίπτωσης συστημάτων ονομασίας (DNS και GNS) και ευρετηρίων (X.500, Active Directory, NDS) και κλείνει με αναφορά στον εντοπισμό κινητών οντοτήτων με δείκτες και αρχική θέση. Στη συνέχεια καλύπτει τα βασικά ζητήματα των κατανεμημένων συστημάτων αποθήκευσης (αρχεία, ευρετήρια, δομή εξυπηρετητών, προσωρινή αποθήκευση, διεπαφή και συνέπεια) καθώς και μια σειρά μελετών περίπτωσης κλασικών συστημάτων αρχείων (NFS και AFS) αλλά και συστημάτων που βασίζονται στο μοντέλο ομοτίμων (PAST και CFS).
Λέξεις κλειδιά: Ονόματα, διευθύνσεις, αναγνωριστικά, χώροι ονομάτων, ανάλυση ονομάτων, DNS, X.500, Active Directory, NDS, δείκτες τοποθεσίας, αρχική τοποθεσία, αρχεία, ευρετήρια, προσωρινή αποθήκευση, συνέπεια, NFS, AFS, PAST, CFS.
Η ενότητα αυτή καλύπτει μηχανισμούς για επικοινωνία σε υψηλότερο επίπεδο από ότι μέσω υποδοχών ή RMI. Αρχικά καλύπτεται η έννοια και οι εφαρμογές του μηνυματοστρεφούς ενδιάμεσου λογισμικού, και παρουσιάζονται τα πρότυπα διεπαφής υπηρεσίας μηνυμάτων της Java και το προηγμένο πρωτόκολλο αναμονής μηνυμάτων για μηνυματοστρεφές ενδιάμεσο λογισμικό. Στη συνέχεια ασχολούμαστε με τη φύση και τη χρησιμότητα των υπηρεσιών Ιστού, τις προσεγγίσεις σχεδιασμού και υλοποίησης υπηρεσιών Ιστού, καθώς και τις προσεγγίσεις υλοποίησης βασισμένες στο SOAP, στο στυλ REST, και τη σύγκριση των προσεγγίσεων αυτών.
Λέξεις κλειδιά: Μηνυματοστρεφές ενδιάμεσο λογισμικό, υπηρεσία μηνυμάτων Java, προηγμένο πρωτόκολλο αναμονής μηνυμάτων, MOM, JMS, AMQP, υπηρεσίες Ιστού, γλώσσα περιγραφής υπηρεσιών Ιστού, WSDL, SOAP, REST.
Ανοικτό Ακαδ. Μάθημα
Αρ. Επισκέψεων : 5094
Αρ. Προβολών : 46979
Ημερολόγιο
Ανακοινώσεις
- - Δεν υπάρχουν ανακοινώσεις -