View a markdown version of this page

Re-architecting come microservizi in contenitori Linux - AWS Linee guida prescrittive

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

Re-architecting 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 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 implementazione continua () CI/CD

  • Forti confini tra i moduli e diversità tecnica

Svantaggi

  • Impegno e costi del refactoring

  • Potenziale complessità operativa

AWS services

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

Tools (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 calcolo, 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