View a markdown version of this page

Parallele Anfragen wiederholen, um einen Monolithen zu durchbrechen - Parallele Anfragen wiederholen, um einen Monolithen zu durchbrechen

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Parallele Anfragen wiederholen, um einen Monolithen zu durchbrechen

Veröffentlichungsdatum: 24. Juni 2022 () Geschichte des Diagramms

Diese Architektur zeigt, wie Sie Ihren Monolithen mit Zuversicht durchbrechen können, indem Sie eine https://en.wikipedia.org/wiki/Parallel_running Parallellaufstrategie in Kombination mit dem Würgerfeigenmuster einrichten. Sie geben Methoden an, die durch einen Microservice ersetzt werden, speichern Kopien von Benutzeranfragen und Monolith-Antworten in einer Zeitreihendatenbank und spielen dann Anfragen auf Ihrem neuen Microservice erneut ab, um die Antworten zu vergleichen.

Wiedergeben paralleler Anfragen, um einen Monolithen zu durchbrechen

Architekturdiagramm, das eine Strategie zur parallelen Wiedergabe von Anfragen unter Verwendung von Amazon API Gateway AWS Lambda, Amazon Kinesis Data Streams AWS Step Functions, Amazon Simple Queue Service und Amazon Simple Notification Service zeigt.

Die folgenden Schritte beschreiben die Architektur:

  1. Wenden Sie das Würger-Fig-Muster mit AWS Migration Hub Refactor Spaces an, um eine Amazon API Gateway-API vor Ihrem alten Cloud-Monolithen auf Amazon Elastic Compute Cloud und Amazon RDS zu platzieren. Re-route Die zu modernisierenden Endpunkte zu einem Rekordersystem, das alle Anfragen und Antworten aufzeichnet.

  2. Verwenden Sie eine AWS Lambda Proxy-Recorder-Funktion, um Anfragen an den alten Monolith weiterzuleiten, und übertragen Sie eine Kopie aller Payloads für Anfragen und Antworten in Amazon Kinesis Data Streams.

  3. Verwenden Sie Amazon Kinesis Data Firehose, um den Monolith-Payload-Stream in einen Amazon Simple Storage Service-Bucket zu übertragen. https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html

  4. Verwenden Sie eine Sortierfunktion, um die Payloads in Amazon Timestream in zeitbasierter Reihenfolge zu speichern.

  5. Erstellen Sie regelmäßig Sicherungskopien der Datenbank des Monolithen mithilfe von AWS Backup, um die Startzeit des Wiederholungsablaufs festzulegen.

  6. Verwenden Sie einen AWS Step Functions Workflow, um Anfragen erneut abzuspielen. Setzen Sie zunächst die temporären Datenbanken des Microservices aus einem Monolith-Datenbank-Backup zurück und spielen Sie dann Anfragen ab Datum und Uhrzeit des Backups erneut ab.

  7. Rufen Sie alle Anfragen im Wiedergabezeitfenster sortiert nach Datum und Uhrzeit ab und verschieben Sie sie dann mithilfe von Amazon Simple Queue Service in eine First-in-First-Out-Warteschlange (FIFO). https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html

  8. Rufen Sie für jede Anfrage in der Warteschlange dieselbe Anfrage in der Microservice-API auf und zeichnen Sie die Antworten in einem Amazon S3-Bucket auf.

  9. Vergleichen Sie die Antworten derselben Anfrage, die an den Monolith und den Microservice gesendet wurde. Lösen Sie mithilfe von Amazon Simple Notification Service einen Alarm bei Unterschieden aus und speichern Sie die Endergebnisse in der Anforderungsdatenbank.

Weitere Informationen

Weitere Informationen finden Sie in den folgenden Ressourcen:

Geschichte des Diagramms

Abonnieren Sie den RSS-Feed, um über Aktualisierungen dieses Referenzarchitekturdiagramms informiert zu werden.

ÄnderungBeschreibungDatum

Erste Veröffentlichung

Das Referenzarchitekturdiagramm wurde zuerst veröffentlicht.

24. Juni 2022

Anmerkung

Um RSS-Updates zu abonnieren, muss ein RSS-Plugin für den von Ihnen verwendeten Browser aktiviert sein.