- INSTRUMENTO Fondo Clemente Estable
- BENEFICIARIO Matías Mario Richart Gutiérrez : Facultad de Ingeniería
- DEPARTAMENTO Montevideo
- SUBSIDIO UYU 1300000
- FECHA DE INICIO 01.04.2025
- DURACIÓN 24 meses
- AÑO CONVOCATORIA 2024
- CÓDIGO FCE_3_2024_1_180928
- FASE SEGUIMIENTO
- ESTADO Seguimiento
La computación en la nube y la computación de borde han revolucionado la forma en que se manejan las tareas informáticas, ofreciendo flexibilidad y eficiencia de costes. A la vez, la escala y complejidad de esas tareas ha motivado el uso de la arquitectura de microservicios que permite desarrollar sistemas complejos de forma modular, reutilizable y escalable. Los microservicios permiten también una asignación más fina de los recursos disponibles pero añaden complejidad a la gestión del sistema. Para contribuir al uso eficiente de los recursos, es deseable que las aplicaciones sean elásticas. Es decir, que tengan la capacidad de adaptar los recursos asignados a un sistema de forma dinámica, autónoma y óptima a la carga de trabajo variable con el objetivo de minimizar la cantidad de recursos necesarios mientras se cumplen los requisitos de calidad de servicio. Sin embargo, atacar el problema de la elasticidad en aplicaciones basadas en microservicios implica una serie de retos que no se presentan cuando se trabaja con aplicaciones monolíticas; en lugar de asignar recursos a un servicio singular, el controlador de la elasticidad debe evaluar ahora las dependencias entre cualquier par de microservicios para garantizar la calidad del servicio. Esta propuesta aborda el problema de la elasticidad de aplicaciones basadas en microservicios y desplegadas en el continuo de la nube, entre los centros de datos y el borde de la red. Para resolver este problema, en este proyecto nos proponemos diseñar un controlador de elasticidad que incluya un predictor del rendimiento de una aplicación de microservicios de forma de poder tomar decisiones en tiempo real. Para el desarrollo de este predictor proponemos un enfoque novedoso que hace uso de Redes Neuronales de Grafos (Graph Neural Networks) en combinación con Redes de Colas por Niveles (Layered Queueing Networks).