Riprogettazione come microservizi in 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 in contenitori Linux

Un'architettura di microservizi è un approccio allo sviluppo di una singola applicazione come suite di piccoli servizi. Ogni servizio viene eseguito nel 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 di lunga durata.

Vantaggi

Questo approccio alla migrazione offre i seguenti vantaggi, rispetto alle 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

  • Distribuzione indipendente e distribuzione continua e distribuzione continua (CI/CD)

  • Forti confini dei moduli e diversità tecnica

Svantaggi

  • Sforzo e costo della rifattorizzazione

  • Potenziale complessità operativa

Servizi AWS

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

Strumenti

AWSProfessional Services offre strumenti e servizi personalizzati per aiutarti a trasformare le tue applicazioni monolitiche in microservizi.

Decisioni di distribuzione

Puoi scegliere tra cinque opzioni di distribuzione:

  • 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 container 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 container 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 container sia gestito da Kubernetes, ma desideri gestire tu stesso le risorse di elaborazione del contenitore, distribuisci la tua applicazione come contenitore Linux su Amazon EKS.

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

Refactoring .NET applications as microservices in Linux containers on AWS