Evaluación de Rendimiento de Frameworks en Aplicaciones Serverless en AWS: Estudio de caso con .Net y Node.js

Fecha
2024-03-19
Título de la revista
ISSN de la revista
Título del volumen
Editor
Universidad de Guayaquil. Facultad de Ciencias Matemáticas y Físicas. Carrera de Software.
Resumen
Ante la necesidad de identificar las fortalezas y debilidades de cada framework en términos de rendimiento, además de permitir que los desarrolladores tomen decisiones informadas al seleccionar el framework más adecuado para sus aplicaciones serverless en AWS, se llevó a cabo este trabajo de integración curricular. El objetivo fue evaluar el rendimiento de frameworks en aplicaciones serverless utilizando AWS bajo un estudio de caso y pruebas específicas. Para ello, se realizó una revisión de fuentes bibliográficas relacionadas para determinar métricas y herramientas comúnmente utilizadas en investigaciones similares. Además, se llevaron a cabo varios experimentos como parte del método. En primer lugar, se determinaron los parámetros óptimos a configurar en JMeter mediante pruebas de estrés en el estado “Warm Start”. Dada la naturaleza específica de las pruebas en “Cold Start”, también se realizaron pruebas de estrés para obtener la configuración óptima en este estado. Posteriormente, se ejecutaron pruebas de carga en las funciones Lambda, abordando tanto el estado “Warm Start” como “Cold Start”. Los resultados, analizados a través de gráficos comparativos y métricas, fueron validados por expertos mediante la técnica de chi cuadrado, confirmando la solidez y validez. En conclusión, la evaluación permitió identificar que en el estado “Warm Start”, Node.js se destacó como el más eficiente en tiempo de ejecución y consumo de memoria, con variaciones positivas del 80.38% en tiempo de ejecución y hasta 1.81% en consumo de memoria en comparación con .NET. En contraste, en el estado “Cold Start”, .NET presentó una ventaja significativa en tiempo de inicialización, con una disminución de hasta el 12.18% en comparación con Node.js.
Given the need to identify the strengths and weaknesses of each framework in terms of performance, as well as to allow developers to make informed decisions when selecting the most appropriate framework for their serverless applications on AWS, this curriculum integration work was carried out. The objective was to evaluate the performance of frameworks in serverless applications using AWS under a case study and specific tests. For this purpose, a review of related literature sources was conducted to determine metrics and tools commonly used in similar research. In addition, several experiments were conducted as part of the method. First, the optimal parameters to be configured in JMeter were determined by stress testing in the “Warm Start” state. Given the specific nature of the tests in “Cold Start”, stress tests were also performed to obtain the optimal configuration in this state. Subsequently, load tests were run on the Lambda functions, addressing both the “Warm Start” and “Cold Start” states. The results, analyzed through comparative graphs and metrics, were validated by experts using the chi-square technique, confirming robustness and validity. In conclusion, the evaluation identified that in the “Warm Start” state, Node.js stood out as the most efficient in execution time and memory consumption, with positive variations of 80.38% in execution time and up to 1.81% in memory consumption compared to .NET. In contrast, in the “Cold Start” state, .NET presented a significant advantage in initialization time, with a decrease of up to 12.18% compared to Node.js.
Descripción
PDF
Palabras clave
AWS LAMBDA, SERVERLESS, FRAMEWORKS, EVALUACIÓN DE RENDIMIENTO, NET, Node.js, PERFORMANCE ASSESSMENT
Citación