Επικοινωνήστε μαζί μας

Εξέλιξη Κομματιού

Ημέρα 1: Θεμέλια της Αρχιτεκτονικής Καθοδηγούμενης από Γεγονότα στη Go

  • Εισαγωγή στην EDA
    • Τι είναι η Αρχιτεκτονική Καθοδηγούμενη από Γεγονότα;
    • Σύγκριση Μονολιθικών, Μικροϋπηρεσιών και Καθοδηγούμενων από Γεγονότα Συστημάτων
    • Πώς το μοντέλο ταυτοχρονισμού της Go και οι ελαφριές goroutines την καθιστούν ιδανική για EDA
  • Βασικές Έννοιες & Οφέλη
    • Αποσύνδεση, κλιμακωσιμότητα και ανθεκτικότητα σε επιχειρησιακά συστήματα
    • Ορισμός Γεγονότων, Παραγωγών, Καταναλωτών και Μεσιτών Γεγονότων (Event Brokers)
    • Πραγματικά παραδείγματα και μελέτες περίπτωσης όπου η Go τροφοδοτεί συστήματα γεγονότων υψηλής απόδοσης
  • Θεώρημα CAP & Ανταλλάγματα στην EDA
    • Επισκόπηση Συνέπειας (Consistency), Διαθεσιμότητας (Availability) και Ανοχής Κατατμήσεων (Partition Tolerance)
    • Επιπτώσεις της EDA σε αυτές τις ιδιότητες
    • Στρατηγικές εξισορρόπησης συνέπειας και διαθεσιμότητας σε συστήματα βασισμένα στη Go

Ημέρα 2: Γεγονότα, Μηνύματα και Μοτίβα Επικοινωνίας στη Go

  • Κατανόηση Τύπων Γεγονότων
    • Γεγονότα Τομέα (Domain Events) έναντι Γεγονότων Ενσωμάτωσης (Integration Events)
    • Σύγχρονα έναντι Ασύγχρονων γεγονότων σε εφαρμογές Go
  • Μοτίβα Ανταλλαγής Μηνυμάτων στην Πράξη
    • Δημοσίευση-Εγγραφή (Pub/Sub) στη Go
    • Πώς να σχεδιάζετε και να δομείτε ωφέλιμα φορτία γεγονότων χρησιμοποιώντας JSON, Protocol Buffers ή Avro στη Go
  • Υλοποίηση Διαχείρισης Γεγονότων στη Go
    • Επισκόπηση δημοφιλών βιβλιοθηκών και πλαισίων Go για ανταλλαγή μηνυμάτων
    • Παραδείγματα κώδικα: αποστολή και επεξεργασία γεγονότων χρησιμοποιώντας ιδιωματικά μοτίβα Go
    • Πρακτική συνεδρία: Κατασκευή μιας απλής υπηρεσίας καθοδηγούμενης από γεγονότα στη Go

Ημέρα 3: Συστήματα Ανταλλαγής Μηνυμάτων & Μεσίτες Γεγονότων με Go

  • Επιλογή και Ενσωμάτωση Μεσιτών Γεγονότων
    • Επισκόπηση δημοφιλών μεσιτών: Apache Kafka, RabbitMQ και NATS
    • Σύγκριση περιπτώσεων χρήσης και βέλτιστων πρακτικών για συστήματα βασισμένα στη Go
  • Ρύθμιση Υποδομής Ανταλλαγής Μηνυμάτων
    • Ρύθμιση Docker Compose για Kafka, RabbitMQ ή NATS
    • Διαμόρφωση θεμάτων (topics), ανταλλαγών (exchanges), ουρών (queues) και καναλιών (channels)
    • Επισκόπηση βιβλιοθηκών πελάτη (client) της Go
  • Πρακτικό Εργαστήριο
    • Κατασκευή μιας δειγματικής μικροϋπηρεσίας Go που παράγει και καταναλώνει γεγονότα
    • Ενσωμάτωση της υπηρεσίας με τον επιλεγμένο μεσίτη γεγονότων
    • Αποσφαλμάτωση και δοκιμή ροών γεγονότων

Ημέρα 4: Ανάπτυξη, Παρακολούθηση και Προχωρημένα Θέματα στην EDA με Go

  • Ανάπτυξη Καθοδηγούμενων από Γεγονότα Εφαρμογών Go σε Kubernetes
    • Δημιουργία containers για εφαρμογές Go για παραγωγή
    • Ανάπτυξη του Kafka (ή άλλων μεσιτών) σε συστάδες Kubernetes
    • Εισαγωγή στο KEDA (Kubernetes Event-Driven Autoscaling) για κλιμάκωση καταναλωτών γεγονότων
  • Διαχείριση Σφαλμάτων και Παρακολούθηση
    • Χειρισμός αποτυχιών γεγονότων με στρατηγικές
    • Υλοποίηση παρατηρησιμότητας σε υπηρεσίες Go
  • Προχωρημένα Θέματα & Ερωτήσεις & Απαντήσεις
    • Εξερεύνηση Serverless Αρχιτεκτονικών Καθοδηγούμενων από Γεγονότα με Go
    • Χορογραφία Γεγονότων (Event Choreography) έναντι Ενορχήστρωσης: Περιπτώσεις χρήσης και σχεδιαστικές εκτιμήσεις
    • Συνήθεις παγίδες, διδάγματα και βέλτιστες πρακτικές
    • Ανοιχτή συνεδρία ερωτήσεων και απαντήσεων και διαδραστική αντιμετώπιση προβλημάτων

Απαιτήσεις

  • Επάρκεια στη Go (Golang), συμπεριλαμβανομένης της χρήσης goroutines και καναλιών
  • Βασική κατανόηση μοντέλων αρχιτεκτονικής λογισμικού όπως μονόλιθοι και μικροϋπηρεσίες
  • Εξοικείωση με Docker και Docker Compose
  • Βασικές γνώσεις REST APIs και εννοιών δικτύωσης
  • Εμπειρία με εργαλεία γραμμής εντολών και Git
  • Προαιρετικό αλλά χρήσιμο: προηγούμενη έκθεση σε Kubernetes και συστήματα ανταλλαγής μηνυμάτων όπως Kafka, RabbitMQ ή NATS

Ακροατήριο

  • Προγραμματιστές Go που κατασκευάζουν κλιμακώσιμες, καθοδηγούμενες από γεγονότα εφαρμογές
  • Μηχανικοί λογισμικού που μεταβαίνουν από μονολιθικές αρχιτεκτονικές ή αρχιτεκτονικές βασισμένες σε REST σε ασύγχρονα συστήματα
  • Μηχανικοί DevOps και cloud που εργάζονται με containerized ή κατανεμημένες μικροϋπηρεσίες
  • Τεχνικοί αρχιτέκτονες και σχεδιαστές συστημάτων που εξερευνούν μοτίβα EDA χρησιμοποιώντας Go
 28 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετέχοντα

Σχόλια (7)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες