In questo tutorial, distribuirai un'applicazione node.js monolitica su un container Docker, quindi disaccoppierai l'applicazione in microservizi senza tempi di inattività. L'applicazione node.js ospita una semplice scheda messaggi che contiene i thread e i messaggi scambiati tra gli utenti.

Le architetture monolitiche tradizionali sono difficili da dimensionare. Quando il codice di base di un'applicazione cresce, diventa complesso aggiornarlo e mantenerlo. L'introduzione di nuove caratteristiche, lingue, framework e tecnologie diventa molto difficile, limitando così l'innovazione e le nuove idee.

All'interno di un'architettura di microservizi, ogni componente dell'applicazione viene eseguito come un servizio e comunica con altri servizi mediante un'API ben definita. I microservizi sono realizzati sulla base delle funzioni aziendali e ogni servizio esegue una sola funzione. I microservizi possono essere scritti usando framework e linguaggi di programmazione diversi. Inoltre, possono essere distribuiti in modo indipendente come un singolo servizio o un gruppo di servizi.

Durante questo tutorial, ti mostreremo come eseguire una semplice applicazione monolitica in un container Docker, distribuire la stessa applicazione come microservizi e trasferire il traffico sui microservizi senza tempi di inattività. Al termine, potrai usare questo tutorial e il codice contenuto in esso come modello per creare e distribuire i tuoi microservizi containerizzati su AWS.

architettura applicativa
Architettura monolitica

Architettura monolitica

L'intera applicazione node.js è eseguita in un container come un singolo servizio e ogni container ha le stesse caratteristiche di tutti gli altri container. Se una caratteristica dell'applicazione sperimenta un picco nella richiesta, è necessario dimensionare l'intera architettura.

Architettura di microservizi

Architettura di microservizi

Ogni caratteristica dell'applicazione node.js è eseguita come un servizio separato all'interno del suo container. I servizi possono essere dimensionati e aggiornati indipendentemente dagli altri.

Esperienza AWS: intermedia

Tempo richiesto per il completamento: 2 ore

Costo per il completamento: ogni servizio usato in questa architettura è idoneo per il Piano gratuito AWS. Se non rientri nei limiti di utilizzo del Piano gratuito, il completamento del tutorial ti costerà meno di $ 0,25*.

Tecnologie usate: per completare questo tutorial, userai:

*Questa stima presuppone il rispetto delle configurazioni consigliate durante il tutorial e la terminazione di tutte le risorse entro 24 ore.

**Gli account che sono stati creati entro le ultime 24 ore potrebbero non avere ancora accesso a tutte le risorse richieste per il completamento di questo progetto.