skip to main content
10.1145/3489525.3511682acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
short-paper

Evaluating the Scalability and Elasticity of Function as a Service Platform

Published:09 April 2022Publication History

ABSTRACT

Function as a Service (FaaS) is a new software technology with promising features such as automated resource management and auto-scaling. Since these operational aspects are transparent, software engineers may not fully understand the scaling characteristics as well as limitations of this technology and this lack of information can lead to undesired performance results. To address these concerns, we perform a study to characterize FaaS' scalability with intensive workloads on three popular FaaS cloud platforms, namely Amazon AWS Lambda, IBM and Azure Cloud Function. We also study a workload smoother design pattern to examine if it enhances FaaS overall performance. The results show that different FaaS platforms adopt distinct scaling strategies and by applying a workload smoother, software engineers can achieve 99 - 100% success rates compared to 60 - 80% when FaaS' system is saturated.

References

  1. amazon.com. 2021. Best practices for organizing larger serverless applications. https://aws.amazon.com/blogs/compute/best-practices-for-organizinglarger-serverless-applications/. Last accessed: 01/25/2022.Google ScholarGoogle Scholar
  2. amazon.com. 2021. Building Applications with Serverless Architectures. https://aws.amazon.com/lambda/serverless-architectures-learn-more/. Last accessed: 09/08/2021.Google ScholarGoogle Scholar
  3. amazon.com. 2021. Lambda Function Scaling. https://docs.aws.amazon.com/ lambda/latest/dg/invocation-scaling.html. Last accessed: 09/13/2021.Google ScholarGoogle Scholar
  4. amazon.com. 2021. Understanding Container Reuse in AWS Lambda. https://aws.amazon.com/blogs/compute/container-reuse-in-lambda/. Last accessed: 09/08/2021.Google ScholarGoogle Scholar
  5. apache.org. 2021. Apache JMeter. https://jmeter.apache.org/. Last accessed: 01/25/2022.Google ScholarGoogle Scholar
  6. Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. 2010. Benchmarking Cloud Serving Systems with YCSB. In Proceedings of the 1st ACM Symposium on Cloud Computing (Indianapolis, Indiana, USA) (SoCC '10). Association for Computing Machinery, New York, NY, USA, 143--154. https://doi.org/10.1145/1807128.1807152Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Simon Eismann, Joel Scheuner, Erwin van Eyk, Maximilian Schwinger, Johannes Grohmann, Nikolas Herbst, Cristina L. Abad, and Alexandru Iosup. 2021. A Review of Serverless Use Cases and their Characteristics.Google ScholarGoogle Scholar
  8. Nikolas Roman Herbst, Samuel Kounev, and Ralf Reussner. 2013. Elasticity in Cloud Computing: What It Is, and What It Is Not. In 10th International Conference on Autonomic Computing (ICAC 13). USENIX Association, San Jose, CA, 23-- 27. https://www.usenix.org/conference/icac13/technical-sessions/presentation/herbstGoogle ScholarGoogle Scholar
  9. ibm.com. 2021. FaaS Principles and Best Practices. https://www.ibm.com/cloud/learn/faas. Last accessed: 01/25/2022.Google ScholarGoogle Scholar
  10. Zhen Ming Jiang and Ahmed E. Hassan. 2015. A Survey on Load Testing of Large-Scale Software Systems. IEEE Transactions on Software Engineering 41, 11 (2015), 1091--1118. https://doi.org/10.1109/TSE.2015.2445340Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Jörn Kuhlenkamp, Sebastian Werner, Maria C. Borges, Dominik Ernst, and Daniel Wenzel. 2020. Benchmarking Elasticity of FaaS Platforms as a Foundation for Objective-Driven Design of Serverless Applications. In Proceedings of the 35th Annual ACM Symposium on Applied Computing (Brno, Czech Republic). Association for Computing Machinery, New York, NY, USA, 1576--1585. https://doi.org/10.1145/3341105.3373948Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Sebastian Lehrig, Hendrik Eikerling, and Steffen Becker. 2015. Scalability, elasticity, and efficiency in cloud computing: A systematic literature review of definitions and metrics. In 2015 11th International ACM SIGSOFT Conference on Quality of Software Architectures (QoSA). 83--92. https://doi.org/10.1145/2737182.2737185Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Wes Lloyd, Shruti Ramesh, Swetha Chinthalapati, Lan Ly, and Shrideep Pallickara. 2018. Serverless Computing: An Investigation of Factors Influencing Microservice Performance. In 2018 IEEE International Conference on Cloud Engineering (IC2E). 159--169.Google ScholarGoogle Scholar
  14. Horácio Martins, Filipe Araujo, and Paulo Rupino Cunha. 2020. Benchmarking Serverless Computing Platforms. Journal of Grid Computing 18 (12 2020), 691--709. https://doi.org/10.1007/s10723-020-09523--1Google ScholarGoogle Scholar
  15. microsoft.com. 2021. Azure Functions HTTP output bindings. https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindingshttp- webhook-output#hostjson-settings. Last accessed: 09/09/2021.Google ScholarGoogle Scholar
  16. microsoft.com. 2021. Best practices for performance and reliability of Azure Functions. https://docs.microsoft.com/en-us/azure/azure-functions/functionsbest- practices. Last accessed: 01/25/2022.Google ScholarGoogle Scholar
  17. microsoft.com. 2021. Cloud Design Patterns. https://docs.microsoft.com/enus/azure/architecture/patterns/. Last accessed: 09/30/2021.Google ScholarGoogle Scholar
  18. oracle.com. 2021. Java ThreadPoolExecutor. https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ThreadPoolExecutor.html. Last accessed: 09/26/2021.Google ScholarGoogle Scholar
  19. Andrei Palade, Aqeel Kazmi, and Siobhán Clarke. 2019. An Evaluation of Open Source Serverless Computing Frameworks Support at the Edge. In 2019 IEEE World Congress on Services (SERVICES), Vol. 2642--939X. 206--211. https://doi.org/10.1109/SERVICES.2019.00057Google ScholarGoogle ScholarCross RefCross Ref
  20. Joel Scheuner and Philipp Leitner. 2020. Function-as-a-Service performance evaluation: A multivocal literature review. Journal of Systems and Software 170 (2020), 110708. https://doi.org/10.1016/j.jss.2020.110708Google ScholarGoogle ScholarCross RefCross Ref
  21. Nikhila Somu, Nilanjan Daw, Umesh Bellur, and Purushottam Kulkarni. 2020. PanOpticon: A Comprehensive Benchmarking Tool for Serverless Applications. In 2020 International Conference on COMmunication Systems NETworkS (COMSNETS). 144--151. https://doi.org/10.1109/COMSNETS48256.2020.9027346Google ScholarGoogle Scholar
  22. spring.io. 2021. Spring Boot. https://spring.io/projects/spring-boot. Last accessed: 09/26/2021.Google ScholarGoogle Scholar
  23. Uma Tadakamalla and Daniel Menascé. 2019. Characterization of IoT Workloads. Springer International Publishing, 1--15. https://doi.org/10.1007/978--3- 030--23374--7_1Google ScholarGoogle Scholar
  24. Davide Taibi, Nabil El Ioini, Claus Pahl, and Jan Niederkofler. 2020. Patterns for Serverless Functions (Function-as-a-Service): A Multivocal Literature Review. In Proceedings of the 10th International Conference on Cloud Computing and Services Science - CLOSER,. https://doi.org/10.5220/0009578501810192Google ScholarGoogle ScholarCross RefCross Ref
  25. visualvm.github.io. 2021. VisualVM Tool. https://visualvm.github.io/. Last accessed: 01/25/2022.Google ScholarGoogle Scholar
  26. zenodo.org. 2021. Factorial Cloud Functions. https://doi.org/10.5281/zenodo.5865550. Last accessed: 12/23/2021.Google ScholarGoogle Scholar

Index Terms

  1. Evaluating the Scalability and Elasticity of Function as a Service Platform

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      ICPE '22: Proceedings of the 2022 ACM/SPEC on International Conference on Performance Engineering
      April 2022
      242 pages
      ISBN:9781450391436
      DOI:10.1145/3489525

      Copyright © 2022 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 9 April 2022

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • short-paper

      Acceptance Rates

      ICPE '22 Paper Acceptance Rate14of58submissions,24%Overall Acceptance Rate252of851submissions,30%

      Upcoming Conference

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader