Contattataci

Struttura del corso

Introduzione ai sistemi distribuiti

  • Cos’è un sistema distribuito?
  • Sfide comuni: latenza, coerenza, disponibilità
  • Panoramica sui componenti del sistema e sui modelli di comunicazione

Principi della scalabilità

  • Scalabilità verticale vs. orizzontale
  • Bilanciamento del carico ed elasticità dei sistemi
  • Scalare archiviazione, calcolo e operazioni di I/O

Pattern architetturali

  • Architetture client-server e a più livelli
  • Architetture orientate ai servizi e basate su microservizi
  • Architettura basata sugli eventi e code di messaggi<\/li>

Il teorema CAP e i modelli di coerenza

  • Spiegazione del teorema CAP
  • Coerenza forte vs. coerenza eventuale
  • Scegliere tra coerenza e disponibilità

Distribuzione dei dati e strategie di archiviazione

  • Partizionamento e sharding dei dati
  • Strategie di replicazione e operazioni di lettura/scrittura basate su quorum
  • Database distribuiti e archivi key-value

Comunicazione e coordinamento nei sistemi distribuiti

  • REST, gRPC, broker di messaggi (ad esempio Kafka, RabbitMQ)
  • Elezione del leader e meccanismi di consenso distribuito
  • Utilizzo di Zookeeper o etcd per il coordinamento tra nodi

Tolleranza ai guasti e affidabilità dei sistemi

  • Progettazione volta a gestire i guasti e garantire una degradazione controllata delle prestazioni
  • Mechanismi di ritry, timeout e interruttori a circuito
  • Monitoraggio, osservabilità e ingegneria del caos

Pratiche moderne e native per l’ambiente cloud

  • Contenitori, orchestrazione e Kubernetes
  • Senza stato e immutabilità dei componenti software
  • Best practice per la sicurezza nei sistemi distribuiti

Sintesi finale e prossimi passi

Requisiti

  • Conoscenza di base dei concetti legati alle reti e alla progettazione di sistemi
  • Esperienza con le pratiche generali dello sviluppo software
  • La familiarità con il cloud computing e la progettazione di API risulta utile

Pubblico di riferimento

  • Architetti del software e responsabili tecnici
  • Ingegneri backend e professionisti DevOps
  • Progettisti di sistemi impegnati nella realizzazione di applicazioni cloud scalabili
 21 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (3)

Corsi in Arrivo

Categorie relative