Riprogettazione come microservizi nei contenitori Linux - AWS Guida prescrittiva

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à.

Riprogettazione come microservizi nei contenitori Linux

Un'architettura di microservizi è un approccio allo sviluppo di una singola applicazione come suite di piccoli servizi. Ogni servizio viene eseguito secondo un proprio processo e comunica con altri servizi tramite meccanismi leggeri. Questo approccio suddivide un'applicazione monolitica in servizi più piccoli, in cui ogni servizio ha un unico scopo e viene distribuito come contenitore.

Casi d'uso

Questa strategia di migrazione è utile se:

  • Vuoi suddividere il tuo sistema monolitico in microservizi.

  • Hai le risorse e il tempo disponibili per il refactoring.

  • È possibile risolvere tutte le dipendenze.NET Framework.

  • Hai un'applicazione che richiede molto tempo.

Vantaggi

Questo approccio di migrazione offre i seguenti vantaggi, se confrontato con le applicazioni.NET locali:

  • Innovazione più rapida perché è più facile aggiungere nuove funzionalità in un'architettura di microservizi

  • Disponibilità e affidabilità elevate

  • Maggiore agilità e scalabilità su richiesta

  • Implementazione indipendente e moderne pipeline di integrazione continua e distribuzione continua (CI/CD)

  • Forti confini tra i moduli e diversità tecnica

Svantaggi

  • Impegno e costi del refactoring

  • Potenziale complessità operativa

AWS servizi

È possibile utilizzare i seguenti AWS servizi per sviluppare un sistema basato su microservizi:

Strumenti

AWS Professional Services offre strumenti e servizi personalizzati per aiutarvi a rifattorizzare le vostre applicazioni monolitiche in microservizi.

Decisioni di implementazione

È possibile scegliere tra cinque opzioni di implementazione:

  • Se desideri il controllo completo sulla configurazione del tuo ambiente di elaborazione, comprese le impostazioni di memoria e archiviazione, e il controllo sulle patch del sistema operativo, distribuisci l'applicazione come contenitore Linux su un'istanza. EC2

  • Se desideri che il contenitore sia gestito da Kubernetes ed eseguito come contenitore serverless, distribuisci la tua applicazione come contenitore Linux su Amazon EKS con Fargate.

  • Se desideri che il contenitore sia gestito da Amazon ECS ed eseguito come contenitore serverless: distribuisci la tua applicazione come contenitore Linux su Amazon ECS con Fargate.

  • Se desideri che il contenitore sia gestito da Kubernetes, ma desideri gestire tu stesso le risorse di calcolo del contenitore, distribuisci la tua applicazione come contenitore Linux su Amazon EKS.

  • Se desideri che il contenitore sia gestito da Amazon ECS, ma desideri gestire tu stesso le risorse di calcolo del contenitore, distribuisci la tua applicazione come contenitore Linux su Amazon ECS.

Refactoring .NET applications as microservices in Linux containers on AWS