skip to main content
10.1145/3361821.3361823acmotherconferencesArticle/Chapter ViewAbstractPublication PagescciotConference Proceedingsconference-collections
research-article

Cost Aware Resource Sizing and Scaling of Microservices

Published:20 September 2019Publication History

ABSTRACT

Microservices are small, independent, loosely coupled components which provide flexibility, agility, and scalability to an application. While these are aimed for scalability, achieving it needs judicious trade-offs between size, number and cost of provisioning. In this architecture, sizing in both homogeneous and heterogeneous resources plays a key role to balance application performance and resource requirement, as workload demand varies. This paper provides insights where the importance of considering workload characterization to decide a homogeneous or heterogeneous scaling strategy for a microservice is discussed. The work exploits the correlation of workload characterization, predicted workload demand and selection of right-sized microservice to minimize resource costs. Size of microservice is referred with respect to the amount of resources allocated to the microservice. This work also evaluates trade-offs between considering the entire predicted workload demand for resource cost optimization against algorithmic computational complexity and designs a heuristic to reduce such complexity. Evaluation of results demonstrate two important outcomes. Firstly, workload characterization helps to choose between homogeneous or heterogeneous sizing for different microservices. And secondly, by considering workload demand prediction beyond the current scheduling interval, allows to make scaling decision in the current cycle keeping in view whether the demand is going to increase or decrease. The paper also details on how to use the insights of application characterization and workload trend for choosing an appropriate scaling strategy.

References

  1. Microservice Architecture Patterns and Best Practices, http://microservice.io/, Accessed 2018-29-04Google ScholarGoogle Scholar
  2. CNCF Serverless WG, https://github.com/cncf/wg-serverless, Accessed 2019-29-04Google ScholarGoogle Scholar
  3. Gan et al., An Open-Source Benchmark Suite for Microservices and Their Hardware-Software Implications for Cloud & Edge Systems. In Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'19). ACM, NewYork, NY, USA, 3--18.Google ScholarGoogle Scholar
  4. A. M. Joy, "Performance comparison between Linux containers and virtual machines," 2015 International Conference on Advances in Computer Engineering and Applications, Ghaziabad, 2015, pp. 342--346.Google ScholarGoogle Scholar
  5. Building a simple chatbot form Scratch in Python, https://medium.com/analyticsvidhya/building-a-simple-chatbot-in- python-using-nltk-7c8c8215ac6e, Accessed 2019-29-04Google ScholarGoogle Scholar
  6. Qu, et al. Auto-Scaling Web Applications in Clouds: A Taxonomy and Survey. ACM Comput. Surv. 51, 4, Article 73 (July 2018), 33 pagesGoogle ScholarGoogle Scholar
  7. W. Hasselbring, et al. "Microservice Architectures for Scalability, Agility and Reliability in E-Commerce," 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), Gothenburg.Google ScholarGoogle Scholar
  8. Wang, et al. "Workload characterization for an e-commerce web site." Proceedings of the 2003 conference of the Centre for Advanced Studies on Collaborative research. IBM Press, 2003.Google ScholarGoogle Scholar
  9. Bodik, et al. Statistical machine learning makes automatic control practical for internet datacenters. In Proceedings of the 2009 Conference on Hot Topics in Cloud Computing. 12--16.Google ScholarGoogle Scholar
  10. Srirama, et al. Optimal resource provisioning for scaling enterprise applications on the cloud. In 2014 IEEE 6th International Conference on Cloud Computing Technology and Science (CloudCom'14). 262--271.Google ScholarGoogle Scholar
  11. M. Amaral, et al., "Performance Evaluation of Microservices Architectures Using Containers," 2015 IEEE 14th International Symposium on Network Computing and Applications, Cambridge, MA.Google ScholarGoogle Scholar
  12. High-performance batch image resizer & rotator, https://github.com/jarun/imgp, Accessed 2019-27-05Google ScholarGoogle Scholar
  13. Sharma, et al. Provisioning multitier cloud applications using statistical bounds on sojourn time. In Proceedings of the 9th International Conference on Autonomic Computing (ICAC'12). ACM, New York.Google ScholarGoogle Scholar
  14. Cheng, et al. "High Resource Utilization Auto-Scaling Algorithms for Heterogeneous Container Configurations," 2017 IEEE 23rd International Conference on Parallel and Distributed Systems (ICPADS), Shenzhen.Google ScholarGoogle Scholar
  15. Ghanbari, et al. Optimal autoscaling in a IaaS cloud. In Proceedings of the 9th International Conference on Autonomic Computing (ICAC'12). ACM, New York, 173--178.Google ScholarGoogle Scholar
  16. Yang, et al. A cost-aware auto-scaling approach using the workload prediction in service clouds. Information Systems Frontiers 16, 1 (2014).Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Lopez, et al. Towards Quantifiable Boundaries for Elastic Horizontal Scaling of Microservices. In Companion Proceedings of the10th International Conference on Utility and Cloud Computing (UCC '17 Companion). ACM, New York, NY, USA, 35--40.Google ScholarGoogle Scholar
  18. H. Fernandez, G. Pierre, and T. Kielmann. 2014. Autoscaling web applications in heterogeneous cloud infrastructures. In Proceedings of 2014 IEEE International Conference on Cloud Engineering (IC2E'14).Google ScholarGoogle Scholar
  19. Upendra, et al. A cost-aware elasticity provisioning system for the cloud. In Proceedings of 2011 31st International Conference on Distributed Computing Systems (ICDCS'11).Google ScholarGoogle Scholar
  20. Nguyen, et al. Agile: Elastic distributed resource scaling for infrastructure-as-aservice. In Proceedings of the USENIX International Conference on Automated Computing (ICAC'13).Google ScholarGoogle Scholar
  21. Roy, et al. Efficient autoscaling in the cloud using predictive models for workload forecasting. In Proceedings of 2011 IEEE International Conference on Cloud Computing (CLOUD'11). IEEE, 500--507.Google ScholarGoogle Scholar
  22. Gandhi, et al. AutoScale: Dynamic, robust capacity management for multitier data centers. ACM Transactions on Computer Systems 30, 4 (Nov. 2012), 14:1--14:26.Google ScholarGoogle Scholar
  23. Arani, et al. An autonomic resource provisioning approach for service-based cloud applications: A hybrid approach. Future Generation Computer Systems 78, Part1(2018), 191--210Google ScholarGoogle Scholar
  24. Wang, et al. "Workload characterization for an e-commerce web site." Proceedings of the 2003 conference of the Centre for Advanced Studies on Collaborative research. IBM Press, 2003.Google ScholarGoogle Scholar
  25. Poggi, et al. "Non-intrusive estimation of QoS degradation impact on e-commerce user satisfaction." 2011 IEEE 10th International Symposium on Network Computing and Applications. IEEE, 2011.Google ScholarGoogle Scholar
  26. Prachitmutita, et al. "Auto-scaling microservices on IaaS under SLA with costeffective framework," 2018 Tenth International Conference on Advanced Computational Intelligence (ICACI), Xiamen.Google ScholarGoogle Scholar

Index Terms

  1. Cost Aware Resource Sizing and Scaling of Microservices

    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 Other conferences
      CCIOT '19: Proceedings of the 2019 4th International Conference on Cloud Computing and Internet of Things
      September 2019
      134 pages
      ISBN:9781450372411
      DOI:10.1145/3361821

      Copyright © 2019 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: 20 September 2019

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed limited

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader