Cloud Function Performance: a component modeling approach
DOI:
https://doi.org/10.19153/cleiej.24.2.6Keywords:
Software Performance Engineering, Model-driven Software Engineering, Function-as-a-Service, Cloud Computing, Cloud FunctionsAbstract
Cloud Functions are a trend in cloud computing in which developers are allowed to install code in a Function-as-a-Service (FaaS) platform able to manage provisioning, execution, monitoring and automatic scaling. The underlying infrastructure in FaaS platforms is hidden from the developers and designers and, since the inuence of the infrastructure is unknown, this makes it di_cult to apply software performance engineering approaches on cloud functions, which could lead to wrong or inaccurate performance estimations. In this study, we explore the use of component-based modeling and simulation in order to generate performance estimations of an exemplar cloud function which was exercised using a variety of workloads. A cloud function was both implemented and instrumented to record performance datain a log _le, associated with its invocations; using the log _le as an input, we extracted a performance model in a Palladio Component Model format suitable for running simulations to validate whether the generated model could explain the runtime behavior of the function. Using this approach and further tunings in the model, we were able to validate that the simulations could explain more than 95% of the function's behavior and that component-based modeling and simulation can be considered a serious option when trying to explain the behavior of a cloud function.
References
R. Heinrich, A. van Hoorn, H. Knoche, F. Li, L. E. Lwakatare, C. Pahl, S. Schulte, and J. Wettinger,
Performance engineering for microservices: Research challenges and directions," in Proceedings
of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, ser.
ICPE '17 Companion. New York, NY, USA: ACM, 2017, pp. 223{226. [Online]. Available:
https://doi.org/10.1145/3053600.3053653
M. Woodside, G. Franks, and D. C. Petriu, The future of software performance engineering,"
in Future of Software Engineering (FOSE '07), 2007, pp. 171{187. [Online]. Available:
https://doi.org/10.1109/FOSE.2007.32
T. de Gooijer, Performance modeling of ASP.Net web service applications : an industrial
case study," 2011. [Online]. Available: https://www.diva-portal.org/smash/record.jsf?pid=diva2%
A432058&dswid=-1479
H. Koziolek, Performance evaluation of component-based software systems: A survey," Perform. Eval.,
vol. 67, no. 8, pp. 634{658, Aug. 2010. [Online]. Available: http://dx.doi.org/10.1016/j.peva.2009.07.007
CLEI ELECTRONIC JOURNAL, VOLUME 19, NUMBER 1, PAPER 0, APRIL 2016
S. Becker, H. Koziolek, and R. Reussner, The Palladio component model for model-driven
performance prediction," J. Syst. Softw., vol. 82, no. 1, pp. 3{22, Jan. 2009. [Online]. Available:
https://doi.org/10.1016/j.jss.2008.03.066
O.-Q. Noorshams, Modeling and prediction of i/o performance in virtualized environments," Ph.D.
dissertation, 2015. [Online]. Available: http://dx.doi.org/10.5445/KSP/1000046300
J. Walter, S. Eismann, J. Grohmann, D. Okanovic, and S. Kounev, Tools for declarative performance
engineering," in Companion of the 2018 ACM/SPEC International Conference on Performance
Engineering, ser. ICPE '18. New York, NY, USA: ACM, 2018, pp. 53{56. [Online]. Available:
http://doi.acm.org/10.1145/3185768.3185777
(2008) Serverless computing - Amazon Web Services. [Online]. Available: https://aws.amazon.com/
serverless
C. M. Aderaldo, N. C. Mendonca, C. Pahl, and P. Jamshidi, Benchmark requirements for
microservices architecture research," in 2017 IEEE/ACM 1st International Workshop on Establishing
the Community-Wide Infrastructure for Architecture-Based Software Engineering (ECASE), May 2017,
pp. 8{13. [Online]. Available: https://dl.acm.org/doi/10.5555/3101282.3101285
A. Brunnert, A. van Hoorn, F. Willnecker, A. Danciu, W. Hasselbring, C. Heger, N. R. Herbst,
P. Jamshidi, R. Jung, J. von Kistowski, A. Koziolek, J. Kro, S. Spinner, C. Vogele, J. Walter,
and A. Wert, Performance-oriented DevOps: A research agenda," CoRR, vol. abs/1508.04752, 2015.
[Online]. Available: http://arxiv.org/abs/1508.04752
P. D. Francesco, I. Malavolta, and P. Lago, Research on architecting microservices: Trends, focus, and
potential for industrial adoption," in 2017 IEEE International Conference on Software Architecture
(ICSA), April 2017, pp. 21{30. [Online]. Available: https://doi.org/10.1109/ICSA.2017.24
E. van Eyk, A. Iosup, C. L. Abad, J. Grohmann, and S. Eismann, A SPEC RG Cloud Group's vision
on the performance challenges of faas cloud architectures," in Companion of the 2018 ACM/SPEC
International Conference on Performance Engineering, ser. ICPE '18. New York, NY, USA: ACM,
, pp. 21{24. [Online]. Available: https://dl.acm.org/doi/10.1145/3185768.3186308
W. Lloyd, S. Ramesh, S. Chinthalapati, L. Ly, and S. Pallickara, Serverless computing:
An investigation of factors in
uencing microservice performance," in 2018 IEEE International
Conference on Cloud Engineering (IC2E), April 2018, pp. 159{169. [Online]. Available:
https://ieeexplore.ieee.org/document/8360324
Amazon Web Services, Serverless Image Handler { AWS answers." [Online]. Available:
https://aws.amazon.com/solutions/implementations/serverless-image-handler/
N. Zarzycki, Social media image sizes: A quick reference guide for each network," Jul 2019. [Online].
Available: https://blog.hootsuite.com/social-media-image-sizes-guide/
J. Spencer, 2020 Social Media Image Sizes Cheat Sheet," Dec 2019. [Online]. Available:
https://makeawebsitehub.com/social-media-image-sizes-cheat-sheet/
M. Shilkov, Cold starts in AWS Lambda," Jun 2019. [Online]. Available: https://mikhail.io/
serverless/coldstarts/aws/
||, When does cold start happen on AWS Lambda?" Jun 2019. [Online]. Available:
https://mikhail.io/serverless/coldstarts/aws/intervals/
M. Flores-Gonzalez, Modelado y simulacion de funciones en la nube en plataformas Function-as-a-
Service (Modeling and simulating Cloud functions in Function-as-a-Service platforms
Downloads
Published
Issue
Section
License
Copyright (c) 2021 Prof., Martín Flores-González
This work is licensed under a Creative Commons Attribution 4.0 International License.
CLEIej is supported by its home institution, CLEI, and by the contribution of the Latin American and international researchers community, and it does not apply any author charges whatsoever for submitting and publishing. Since its creation in 1998, all contents are made publicly accesibly. The current license being applied is a (CC)-BY license (effective October 2015; between 2011 and 2015 a (CC)-BY-NC license was used).