Experimentos de arquitectura - TheCodeTeamUni/documentacion-proyecto GitHub Wiki
a) Avance en la ejecución de los experimentos
Primero vamos a recapitular el experimento que tenemos planteado:
Este experimento tiene como foco validar la siguiente parte de la arquitectura propuesta:
Este punto en especificó, se encarga de recibir las solicitudes de creación de los candidatos en la plataforma de ABC Jobs, ponerlos en una cola y posteriormente crearlos, añadiendo su registro en la base de datos.
En el siguiente video, se explica el avance de la ejecución del experimento: Video avance de experimentos
b) Avance del análisis de resultados y justificación de las decisiones de diseño frente a los ASR
Como se explicó en el video anterior, durante esta semana nos hemos centrado principalmente en el aprovisionamiento, codificación y despliegue de los componentes necesarios para llevar a cabo nuestro experimento. Hasta el momento, no disponemos de resultados concretos debido a esta fase inicial de preparación. Sin embargo, deseamos destacar algunos puntos que consideramos relevantes a medida que refinamos la arquitectura propuesta y avanzamos en el experimento:
-
Reflexión sobre el uso de colas de tareas: Durante esta fase inicial, hemos identificado una cuestión importante relacionada con la utilización de colas de tareas en el proceso de registro de usuarios. Hemos observado que el uso de colas puede ser más apropiado para procesos asincrónicos, ya que están diseñadas para tareas que no requieren una respuesta inmediata. En el caso del registro de usuarios, donde la respuesta inmediata es fundamental para la satisfacción del usuario, podría generar ciertas incomodidades. Por esta razón, hemos decidido evaluar detenidamente la conveniencia de utilizar colas de tareas en este contexto. Esperamos obtener resultados concluyentes de nuestro experimento la próxima semana, lo que nos permitirá tomar una decisión fundamentada sobre su implementación.
-
Proceso de lectura de mensajes: El proceso de lectura de mensajes ha requerido un tiempo considerable para encontrar la solución adecuada debido a la necesidad de contar con un mecanismo desencadenante que inicie la lectura y procesamiento de los mensajes. En esta búsqueda, hemos optado por aprovechar el servicio de "AWS Lambda", el cual es un servicio informático sin servidor basado en eventos. Si bien esta elección representa un avance significativo en nuestra arquitectura, reconocemos que aún estamos en proceso de familiarización con esta tecnología. La próxima etapa implica una investigación más profunda y detallada para asegurarnos de utilizar AWS Lambda de manera óptima y efectiva.
-
Experimento de degradación del sistema: Además, hemos planificado una fase adicional en el experimento, en la cual evaluaremos el rendimiento del sistema sin el uso de colas de mensajería. Durante esta prueba, permitiremos que el componente 'Integrador de Servicios' se comunique directamente con el componente 'Usuarios'. Este enfoque nos permitirá validar y tomar decisiones informadas sobre la importancia de las colas de mensajería en nuestra arquitectura. Al poner a prueba la degradación del sistema, podremos identificar los puntos críticos y determinar si la eliminación de colas afecta de manera significativa a los Acuerdos de Nivel de Servicio (ASR) más importantes. Esta evaluación nos proporcionará una base sólida para optimizar nuestra arquitectura y garantizar un funcionamiento eficiente y fiable.