View a markdown version of this page

Reproducción de solicitudes paralelas para romper un monolito - Reproducción de solicitudes paralelas para romper un monolito

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Reproducción de solicitudes paralelas para romper un monolito

Fecha de publicación: 24 de junio de 2022 () Historial del diagrama

Esta arquitectura muestra cómo romper un monolito con confianza mediante el establecimiento de una estrategia de ejecución paralela combinada con el patrón del higo estrangulador. Utiliza métodos de proxy para sustituirlos por un microservicio, almacena copias de las solicitudes de los usuarios y las respuestas monolíticas en una base de datos cronológica y, a continuación, reproduce las solicitudes en su nuevo microservicio para comparar las respuestas.

Reproducir solicitudes paralelas para romper un monolito

Diagrama de arquitectura que muestra una estrategia de reproducción de solicitudes en paralelo con Amazon API Gateway AWS Lambda, Amazon Kinesis Data Streams AWS Step Functions, Amazon Simple Queue Service y Amazon Simple Notification Service.

Los siguientes pasos describen la arquitectura:

  1. Aplique el patrón de estrangulación con AWS Migration Hub Refactor Spaces para colocar una API de Amazon API Gateway frente a su antiguo monolito de nube en Amazon Elastic Compute Cloud y Amazon RDS. Re-route los terminales para modernizarlos y convertirlos en un sistema de grabación que registre todas las solicitudes y respuestas.

  2. Utilice una AWS Lambda función de grabador proxy para enviar las solicitudes por proxy al monolito anterior e insertar una copia de todas las cargas útiles de solicitudes y respuestas en Amazon Kinesis Data Streams.

  3. Utilice Amazon Kinesis Data Firehose para enviar la transmisión de carga útil monolítica a un bucket de Amazon Simple Storage Service. https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html

  4. Utilice una función de clasificación para almacenar las cargas útiles en Amazon Timestream en un orden cronológico.

  5. Realice copias de seguridad periódicas de la base de datos del monolito con AWS Backup para establecer como referencia la hora de inicio del flujo de reproducción.

  6. Utilice un AWS Step Functions flujo de trabajo para reproducir las solicitudes. Primero restablezca las bases de datos temporales del microservicio a partir de una copia de seguridad monolítica y, a continuación, reproduzca las solicitudes a partir de la fecha y la hora de la copia de seguridad.

  7. Obtenga todas las solicitudes de la ventana de tiempo de reproducción ordenadas por fecha y hora y, a continuación, envíelas a la lista FIFO (primero en entrar, primero en salir) con Amazon Simple Queue Service. https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html

  8. Para cada solicitud de la cola, invoque la misma solicitud en la API del microservicio y registre las respuestas en un bucket de Amazon S3.

  9. Compare las respuestas de la misma solicitud enviadas al monolito y al microservicio. Detecta cualquier diferencia con Amazon Simple Notification Service y almacena los resultados finales en la base de datos de solicitudes.

Documentación adicional

Para obtener información adicional, consulte los siguientes recursos:

Historial del diagrama

Para recibir notificaciones sobre las actualizaciones de este diagrama de arquitectura de referencia, suscríbase a la fuente RSS.

CambioDescripciónFecha

Publicación inicial

El diagrama de arquitectura de referencia se publicó por primera vez.

24 de junio de 2022

nota

Para suscribirse a las actualizaciones de RSS, debe tener un complemento de RSS habilitado para el navegador que esté utilizando.