

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Implementazione di microservizi su AWS
<a name="microservices-on-aws"></a>

Data di pubblicazione: **31 luglio 2023** () [Cronologia dei documenti](document-revisions.md)

 I microservizi offrono un approccio semplificato allo sviluppo del software che accelera l'implementazione, incoraggia l'innovazione, migliora la manutenibilità e aumenta la scalabilità. Questo metodo si basa su servizi di piccole dimensioni e scarsamente accoppiati che comunicano attraverso team ben definiti e gestiti da team autonomi. APIs L'adozione dei microservizi offre vantaggi, come una migliore scalabilità, resilienza, flessibilità e cicli di sviluppo più rapidi. 

 Questo white paper esplora tre modelli di microservizi popolari: basati su API, basati su eventi e streaming di dati. Forniamo una panoramica di ogni approccio, descriviamo le caratteristiche principali dei microservizi, affrontiamo le sfide del loro sviluppo e illustriamo come Amazon Web Services (AWS) può aiutare i team applicativi a superare questi ostacoli. 

 Considerando la natura complessa di argomenti come l'archiviazione dei dati, la comunicazione asincrona e l'individuazione dei servizi, ti consigliamo di valutare le esigenze e i casi d'uso specifici della tua applicazione oltre alle indicazioni fornite per prendere decisioni sull'architettura. 

## Introduzione
<a name="introduction"></a>

 Le architetture di [microservizi](https://aws.amazon.com/microservices/) combinano concetti collaudati e di successo provenienti da vari campi, come: 
+  Sviluppo agile del software 
+  Architetture orientate ai servizi 
+  Progettazione incentrata sulle API 
+  Continuo) Integration/Continuous Delivery (CI/CD 

 Spesso, i microservizi incorporano modelli di progettazione dell'app [Twelve-Factor](https://12factor.net/). 

 Sebbene i microservizi offrano molti vantaggi, è fondamentale valutare i requisiti unici del caso d'uso e i costi associati. L'architettura monolitica o gli approcci alternativi possono essere più appropriati in alcuni casi. La decisione tra microservizi o monoliti dovrebbe essere effettuata su case-by-case base mirata, considerando fattori quali la scala, la complessità e i casi d'uso specifici. 

 Per prima cosa esploriamo un'architettura di microservizi altamente scalabile e tollerante ai guasti (interfaccia utente, implementazione di microservizi, archivio dati) e dimostriamo come costruirla utilizzando tecnologie container. AWS Suggeriamo quindi AWS servizi per implementare una tipica architettura di microservizi serverless, che riduca la complessità operativa. 

 Serverless è caratterizzato dai seguenti principi: 
+  Nessuna infrastruttura da fornire o gestire 
+  Scalabilità automatica per unità di consumo 
+  Modello di fatturazione «Pay for value» 
+  Disponibilità e tolleranza ai guasti integrate 
+  Event Driven Architecture (EDA) 

 Infine, esaminiamo l'intero sistema e discutiamo gli aspetti trasversali di un'architettura di microservizi, come il monitoraggio distribuito, la registrazione, il tracciamento, il controllo, la coerenza dei dati e la comunicazione asincrona. 

 Questo documento si concentra sui carichi di lavoro in esecuzione, esclusi gli scenari ibridi e le strategie di migrazione. Cloud AWS Per informazioni sulle strategie di migrazione, consulta il white paper sulla [metodologia di migrazione dei container](https://d1.awsstatic.com/whitepapers/container-migration-methodology.pdf). 

## Sei Well-Architected?
<a name="are-you-well-architected"></a>

 Il [AWS Well-Architected](https://aws.amazon.com/architecture/well-architected/) Framework ti aiuta a comprendere i pro e i contro delle decisioni che prendi quando crei sistemi nel cloud. I sei pilastri del Framework consentono di apprendere le migliori pratiche architettoniche per progettare e gestire sistemi affidabili, sicuri, efficienti, convenienti e sostenibili. Utilizzando [AWS Well-Architected Tool](https://aws.amazon.com/well-architected-tool/), disponibile gratuitamente in [Console di gestione AWS](https://console.aws.amazon.com/wellarchitected), puoi esaminare i tuoi carichi di lavoro rispetto a queste best practice rispondendo a una serie di domande per ogni pilastro. 

 In [Serverless Application Lens](https://docs.aws.amazon.com/wellarchitected/latest/serverless-applications-lens/welcome.html), ci concentriamo sulle migliori pratiche per l'architettura delle applicazioni serverless. AWS

 [Per ulteriori indicazioni e best practice da parte di esperti per la tua architettura cloud (implementazioni dell'architettura di riferimento, diagrammi e white paper), consulta l'Architecture Center.AWS](https://aws.amazon.com/architecture/) 

## Modernizzazione ai microservizi
<a name="modernizing-to-microservices"></a>

 I microservizi sono essenzialmente piccole unità indipendenti che costituiscono un'applicazione. [La transizione dalle strutture monolitiche tradizionali ai microservizi può seguire varie strategie.](https://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-decomposing-monoliths/decomposing-patterns.html) 

 Questa transizione influisce anche sul modo in cui opera l'organizzazione: 
+  Incoraggia lo sviluppo agile, in cui i team lavorano in cicli rapidi. 
+  I team sono in genere piccoli, a volte descritti come *due squadre di pizzerie*, abbastanza piccole da poter sfamare l'intero team con due pizze. 
+  I team si assumono la piena responsabilità dei propri servizi, dalla creazione all'implementazione e alla manutenzione. 