A case study on the stability of performance tests for serverless applications

Simon Eismann,Diego Elias Costa,Lizhi Liao,Cor-Paul Bezemer,Weiyi Shang,André van Hoorn,Samuel Kounev
DOI: https://doi.org/10.1016/j.jss.2022.111294
IF: 3.5
2022-07-01
Journal of Systems and Software
Abstract:Context:While in serverless computing, application resource management and operational concerns are generally delegated to the cloud provider, ensuring that serverless applications meet their performance requirements is still a responsibility of the developers. Performance testing is a commonly used performance assessment practice; however, it traditionally requires visibility of the resource environment.Objective:In this study, we investigate whether performance tests of serverless applications are stable, that is, if their results are reproducible, and what implications the serverless paradigm has for performance tests.Method:We conduct a case study where we collect two datasets of performance test results: (a) repetitions of performance tests for varying memory size and load intensities and (b) three repetitions of the same performance test every day for ten months.Results:We find that performance tests of serverless applications are comparatively stable if conducted on the same day. However, we also observe short-term performance variations and frequent long-term performance changes.Conclusion:Performance tests for serverless applications can be stable; however, the serverless model impacts the planning, execution, and analysis of performance tests.
computer science, theory & methods, software engineering
What problem does this paper attempt to address?