Struttura del corso

Giorno 1: Fondamenti dell'Architettura Event-Driven in Go

  • Introduzione all'EDA
    • Cosa è l'Architettura Event-Driven?
    • Confronto tra Architetture Monolitiche, Microservices e Event-Driven
    • Come il modello di concorrenza e i leggeri goroutines in Go lo rendono ideale per l'EDA
  • Concetti Fondamentali & Vantaggi
    • Sepolamento, scalabilità e resilienza nei sistemi aziendali
    • Definizione di Eventi, Produttori, Consumatori e Broker degli Eventi
    • Esempi reali e studi di caso in cui Go alimenta sistemi event-driven ad alta prestazione
  • Teorema CAP & Compromessi nell'EDA
    • Panoramica della Coerenza, Disponibilità e Tolleranza alle Partizioni
    • Impatto dell'EDA su queste proprietà
    • Strategie per bilanciare la coerenza e la disponibilità nei sistemi basati sull'Go

Giorno 2: Eventi, Messaggi e Pattern Communication in Go

  • Comprendere i Tipi di Evento
    • Eventi del Dominio vs. Eventi di Integrazione
    • Eventi Sincroni vs. Asincroni negli applicativi Go
  • I Pattern dei Messaggi nella Pratica
    • Publish-Subscribe (Pub/Sub) in Go 
    • Come progettare e strutturare i payload degli eventi utilizzando JSON, Protocol Buffers o Avro in Go
  • Messa in Pratica del Gestione degli Eventi in Go
    • Panoramica delle librerie e dei framework popolari per il messaggistica in Go 
    • Esempi di codice: distribuzione e elaborazione degli eventi utilizzando pattern idiomatici in Go
    • Sessione pratico: Costruire un semplice servizio basato su eventi in Go

Giorno 3: Sistemi di Messaggistica e Broker degli Eventi con Go

  • Selezione e Integrazione dei Broker degli Eventi
    • Panoramica dei broker popolari: Apache Kafka, RabbitMQ e NATS
    • Confronto delle applicazioni e le migliori pratiche per i sistemi basati sull'Go
  • Configurazione dell'Infrastruttura di Messaggistica
    • Setup Docker Compose per Kafka, RabbitMQ, o NATS
    • Configurazione dei topic, delle scambi, delle code e dei canali
    • Panoramica sulle librerie client in Go
  • Sessione Pratica
    • Costruire un microservizio di esempio in Go che produce e consuma eventi
    • Integrare il servizio con il broker degli eventi scelto
    • Riparazione ed esecuzione dei flussi di evento

Giorno 4: Distribuzione, Monitoraggio e Argomenti Avanzati in Go EDA

  • Distribuzione delle Applicazioni Event-Driven di Go su Kubernetes
    • Concettualizzazione delle applicazioni Go per la produzione
    • Distribuzione di Kafka (o altri broker) sui cluster Kubernetes
    • Introduzione a KEDA (Kubernetes Event-Driven Autoscaling) per lo scaling dei consumatori degli eventi
  • Gestione degli Errori e Monitoraggio
    • Maneggiare le fallimenti degli eventi con strategie 
    • Messa in pratica dell'osservabilità nei servizi Go
  • Argomenti Avanzati & Domande e Risposte
    • Espora l’Architettura Event-Driven Serverless con Go
    • Choreografia vs. Orchestrazione degli Eventi: casi d'uso e considerazioni progettuali
    • Sfide comuni, lezioni apprese e migliori pratiche
    • Sessione di domande e risposte interattive e troubleshoot

 

Requisiti

  • Competenza in Go (Golang), inclusi l'uso di goroutines e canali
  • Comprendimento basilare dei modelli di architettura software come monoliti e microservizi
  • Familiarità con Docker e Docker Compose
  • Conoscenze di base su REST APIs e concetti di rete
  • Esperienza con strumenti a riga di comando e Git
  • Opzionale ma utile: esposizione precedente a Kubernetes e sistemi di messaggistica come Kafka, RabbitMQ, o NATS

Pubblico Obiettivo

  • Sviluppatori Go che costruiscono applicazioni scalabili e basate sugli eventi
  • Ingegneri software in transizione da architetture monolitiche o basate su REST a sistemi asincroni
  • DevOps ed ingegneri cloud che lavorano con microservizi containerizzati o distribuiti
  • Architetti tecnici e designer di sistemi che esplorano modelli EDA utilizzando Go
 28 ore

Numero di Partecipanti


Prezzo per Partecipante

Recensioni (7)

Corsi in Arrivo

Categorie relative