Πληροφορίες μαθήματος
Κωδικός
ΗΥ-548
Όνομα
Αρχιτεκτονικές Λογισμικού για το Υπολογιστικό Νέφος
Πρόγραμμα
Μεταπτυχιακό
Περιοχή
Παράλληλα και Κατανεμημένα Συστήματα
Περιγραφή
Περιγραφή Αντικειμένου
Το Διαδίκτυο παρέχει υπηρεσίες σε δισεκατομμύρια χρήστες ανά τον κόσμο. Ιστοσελίδες ενημέρωσης, δίκτυα κοινωνικής δικτύωσης, ηλεκτρονικά καταστήματα, κρατικές υπηρεσίες κτλ. πρέπει να είναι διαθέσιμα ανά πάσα στιγμή, ανεξάρτητα από τον φόρτο που δέχονται. Για αυτόν τον λόγο, οι σύγχρονες εφαρμογές κλίμακας Διαδικτύου αναπτύσσονται στο Cloud (Υπολογιστικό Νέφος). Οι εσωτερικές τους αρχιτεκτονικές έχουν εξελιχθεί σε πολύπλοκους ιστούς από "microservices" (μικρο-υπηρεσίες), που σε φυσικό επίπεδο είναι διασκορπισμένες ανά τον κόσμο, χρησιμοποιώντας εικονικούς πόρους και στοιχεία λογισμικού που προσφέρονται από τους παρόχους Cloud. Σε αυτό το μάθημα εξερευνούμε την οργάνωση υπηρεσιών Διαδικτύου μεγάλης κλίμακας και εστιάζουμε στις τεχνικές και τα εργαλεία που χρησιμοποιούνται για την κατασκευή και εκτέλεση εφαρμογών σε πλατφόρμες Cloud, συμπεριλαμβανομένων των containers και των συναρτήσεων "serverless". Μέσα από μια σειρά διαλέξεων με πρακτικό χαρακτήρα και σχετικών ασκήσεων οι φοιτητές καθοδηγούνται στην προχωρημένη χρήση και κατανόηση των εσωτερικών διαδικασιών του Kubernetes, που αποτελεί σήμερα το κοινά αποδεκτό πρότυπο για την αφηρημένη σύνθεση υπηρεσιών ανεξαρτήτως παρόχου. Επιπρόσθετα, επεκτεινόμαστε στο πως το Kubernetes εφαρμόζεται στην πράξη από τους μεγάλους παρόχους Cloud, όπως η Amazon και η Google, και πως οι εκτελούμενες αρχιτεκτονικές microservices που βασίζονται σε containers μπορούν να χρησιμοποιούν σχετικές υποστηρικτικές υπηρεσίες και APIs για να πετυχαίνουν αδιάλειπτη λειτουργία σε παγκόσμια κλίμακα.
Μαθησιακοί Στόχοι
Σκοπός του μαθήματος είναι να παρέχει ουσιαστική κατανόηση για το πως δομείται, συντάσσεται και εκτελείται μια σύνθετη εφαρμογή κλίμακας Διαδικτύου στο Cloud, το οποίο περιλαμβάνει:
- Τη γνωριμία με τις ιδιαίτερες προδιαγραφές τόσο των εφαρμογών μεγάλης κλίμακας, όσο και του περιβάλλοντος του Cloud.
- Τεχνικές και εργαλεία για τη συγγραφή των εφαρμογών, τη διαχείριση των προαπαιτούμενων βιβλιοθηκών και την ενσωμάτωσή τους σε containers.
- Τον σχεδιασμό και την υλοποίηση αρχιτεκτονικών micro-services και την αξιοποίηση των προσφερόμενων υπηρεσιών Cloud, όπως οι συναρτήσεις serverless.
- Την προχωρημένη χρήση μιας σύγχρονης πλατφόρμας ενορχήστρωσης εφαρμογών για το Cloud, όπως το Kubernetes, μέσα από την κατανόηση της εσωτερικής του λειτουργίας.
ECTS
6
Προαπαιτούμενα
ΗΥ-335, ΗΥ-345
Ιστοσελίδα μαθήματος
Email μαθήματος
hy548 AT csd DOT uoc DOT grΕμφάνιση email