Schița de curs
Ziua 1: Fundamentele arhitecturii orientate pe evenimente în Go
- Introducere în EDA
- Ceea ce este Arhitectura Orientată la Evenimente?
- Compararea sistemelor Monolitice, Microservices și Orientate la Evenimente
- Modul în care modelul de concurență și goroutinile ușor de utilizat din Go îl fac ideal pentru EDA
- Concepte și Beneficii Principale
- Deseamănarea, scalabilitatea și reziliența în sistemele de afaceri
- Definirea evenimentelor, producătorilor, consumatorilor și brokerilor de evenimente
- Exemple și studii de caz din lume reală unde Go pornește sistemele performante orientate la evenimente
- Tehema CAP & Compromisuri în EDA
- Prezentare generală a Consistenței, Disponibilității și Toleranței la Fragmentare
- Impactul EDA asupra acestor proprietăți
- Strategii pentru echilibrarea consistenței și disponibilității în sisteme bazate pe Go
Ziua 2: Evenimente, Mesaje și Pătrunzuri de Communication în Go
- Comprehensia Tipurilor de Eveniment
- Evenimentele de Domeniu vs. Evenimentele de Integrare
- Evenimentele Sinchrone vs. Asinchrone în aplicațiile Go
- Pătrunzuri de Messajing în Practică
- Publish-Subscribe (Pub/Sub) în Go
- Modul în care să concepi și să structurezi pliurile de evenimente folosind JSON, Protocol Buffers sau Avro în Go
- Implementarea Tratarii Evenimentelor în Go
- Prezentare generală a bibliotecilor și cadrelor populare pentru mesajare
- Exemple de cod: distribuirea și procesarea evenimentelor folosind modele idiomatic din Go
- Sesiune practică: Construirea unui serviciu simplu orientat la evenimente în Go
Ziua 3: Sisteme de Mesajare și Brokeri de Evenimente cu Go
- Selectarea și Integrarea Brokerilor de Evenimente
- Prezentare generală a brokerilor populare: Apache Kafka, RabbitMQ și NATS
- Comparație a scenarielor de utilizare și cele mai bune practici pentru sisteme bazate pe Go
- Schimbarea Infrastructurii de Mesajare
- Docker Compose setup pentru Kafka, RabbitMQ, sau NATS
- Configurarea topicurilor, schimburilor, cozelor și canalelor
- Prezentare generală a bibliotecilor client din Go
- Sesiune Practică
- Construirea unui microserviciu de exemplu Go care produce și consumă evenimente
- Integrarea serviciului cu brokerul de evenimente ales
- Depanare și testare a fluxurilor de evenimente
Ziua 4: Deploying, Monitorizarea și Temări Avansate în Go EDA
- Deploying Aplicațiile Orientate la Evenimente din Go pe Kubernetes
- Containerizarea aplicațiilor din Go pentru producție
- Deployul Kafka (sau alte brokeri) pe clusterele Kubernetes
- Introducerea în KEDA (Kubernetes Event-Driven Autoscaling) pentru scalarea consumatorilor de evenimente
- Gestionarea Erorilor și Monitorizare
- Tratarea eșecurilor de eveniment cu strategii
- Implementarea observabilității în serviciile din Go
- Temări Avansate & Q&A
- Cercetarea Arhitecturilor Orientate la Evenimente fără Servicii cu Go
- Choreografia vs. Orchestration de evenimente: Scenarii și considerații de design
- Pitfaluri comune, lecții învățate și cele mai bune practici
- Sesiune deschisă Q&A și rezolvarea problemelor interactiv
Cerințe
- Proficiency în Go (Golang), inclusiv utilizarea goroutines și channels
- Înțelegerea de bază a modelelor de arhitectură software cum ar fi monolitele și microserviciile
- FAMILIARITATE cu Docker și Docker Compose
- Cunoștințe de bază despre API-uri REST și conceptele de rețea
- Experiență cu instrumentele liniei de comandă și Git
- Opțional, dar util: expunere anterioră la Kubernetes și sisteme de mesagerie precum Kafka, RabbitMQ, sau NATS
Audiență
- Dezvoltаторii Go care construiesc aplicații scalabile și bazate pe evenimente
- Inginerii software care se trec de arhitecturi monolitice sau bazate pe REST către sisteme asincrone
- DevOps și inginerii cloud care lucrează cu microserviciile containerizate sau distribuite
- Arhitecții tehnici și designerii de sistem care cercetează modelele EDA folosind Go
Mărturii (7)
scriem un pic de cod în GO și învățăm unele lucruri despre evenimente, când și cum.
Alin
Curs - Event Driven Architecture Custom
Tradus de catre o masina
A fost un curs interactiv, niciun timp pentru a dormi :)). De asemenea, a fost plăcut să luăm parte la lucrul în echipe și apoi să dezbatem conform fiecărui rezultat.
Alina
Curs - Event Driven Architecture Custom
Tradus de catre o masina
M-am bucurat cel mai mult de discuțiile și exemplele furnizate, astfel încât am putut ajunge singuri la concluziile pe care dorea să le împărtășească cu noi. Am apreciat ritmul, engleza, pacienza lui, astfel încât chiar dacă nu am veni cu cea mai bună răspuns, el nu ne spunea că este greșit, ci ne oferea exemple de ceea ce ar putea fi mai bine.
Simona
Curs - Event Driven Architecture Custom
Tradus de catre o masina
Discuțiile deschise și trecerea de la înțelegerea problemelor/situărilor (motivul `de ce`) la `EDA`.
Constantin
Curs - Event Driven Architecture Custom
Tradus de catre o masina
aproximarea prezentării lucrurilor în mod intens interactiv și bazat pe exemple
Virgil
Curs - Event Driven Architecture Custom
Tradus de catre o masina
Natura interactivă a cursului Abordarea învățării prin descoperirea personală, unde ai găsit răspunsurile singur Focusul practic cu exemple din viața reală care au făcut conceptele mai relatable
Roxana Sandu
Curs - Event Driven Architecture Custom
Tradus de catre o masina
Foarte interactiv. Antrenorul era foarte cunoscut și pacient.
Robert
Curs - Event Driven Architecture Custom
Tradus de catre o masina