View a markdown version of this page

Riproduzione di richieste parallele per rompere un monolite - Riproduzione di richieste parallele per rompere un monolite

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

Riproduzione di richieste parallele per rompere un monolite

Data di pubblicazione: 24 giugno 2022 () Storia del diagramma

Questa architettura mostra come rompere il monolite con sicurezza impostando una strategia di corsa parallela combinata con lo strangler fig pattern. Utilizzate metodi proxy per sostituirli con un microservizio, archiviate le copie delle richieste degli utenti e delle risposte monolitiche in un database di serie temporali, quindi riproducete le richieste sul nuovo microservizio per confrontare le risposte.

Riproduzione di richieste parallele per rompere un monolite

Diagramma di architettura che mostra una strategia di riproduzione parallela delle richieste utilizzando Amazon API Gateway AWS Lambda, Amazon Kinesis Data Streams AWS Step Functions, Amazon Simple Queue Service e Amazon Simple Notification Service.

I passaggi seguenti descrivono l'architettura:

  1. Applica lo strangler fig pattern con AWS Migration Hub Refactor Spaces per posizionare un'API Amazon API Gateway davanti al tuo monolito cloud legacy su Amazon Elastic Compute Cloud e Amazon RDS. Re-route gli endpoint da modernizzare in un sistema di registrazione che registra tutte le richieste e le risposte.

  2. Utilizza una AWS Lambda funzione di registrazione proxy per inoltrare le richieste al monolite precedente e inviare una copia di tutti i payload di richieste e risposte in Amazon Kinesis Data Streams.

  3. Usa Amazon Kinesis Data Firehose per distribuire il flusso di payload monolitico in un bucket Amazon Simple Storage Service. https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html

  4. Utilizza una funzione di ordinamento per archiviare i payload in Amazon Timestream in ordine cronologico.

  5. Esegui periodicamente il backup del database del monolite utilizzando AWS Backup per calcolare l'ora di inizio del flusso di replay.

  6. Usa un AWS Step Functions flusso di lavoro per riprodurre le richieste. Reimposta innanzitutto i database temporanei del microservizio da un backup monolitico, quindi riproduci le richieste a partire dalla data e dall'ora del backup.

  7. Recupera tutte le richieste nella finestra di replay-time ordinate per data e ora, quindi inviale a una coda First-in-First-Out (FIFO) utilizzando Amazon Simple Queue Service. https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html

  8. Per ogni richiesta in coda, richiama la stessa richiesta nell'API del microservizio e registra le risposte in un bucket Amazon S3.

  9. Confronta le risposte della stessa richiesta inviata al monolite e al microservizio. Lancia un allarme per eventuali differenze utilizzando Amazon Simple Notification Service e archivia i risultati finali nel database delle richieste.

Approfondimenti

Per ulteriori informazioni, consulta le seguenti risorse:

Storia del diagramma

Per ricevere notifiche sugli aggiornamenti di questo diagramma di architettura di riferimento, iscriviti al feed RSS.

ModificaDescrizioneData

Pubblicazione iniziale

Diagramma dell'architettura di riferimento pubblicato per la prima volta.

24 giugno 2022

Nota

Per iscriverti agli aggiornamenti RSS, devi avere un plug-in RSS abilitato per il browser che stai utilizzando.