Usage
  • 199 views
  • 306 downloads

Improving the Performance and Availability of Microservice-Based Cloud Applications

  • Author / Creator
    Goli, Alireza
  • With the advent of cloud computing, many organizations are moving their software systems to cloud environments. This migration from on-premises to cloud infrastructure has led to the emergence of cloud applications. One of the essential concepts around cloud applications and cloud services is Quality of Service (QoS). Cloud providers are responsible for maintaining the QoS of the cloud services according to the Service Level Agreement (SLA). In this thesis, we focus on performance as one of QoS's dimensions and explore three different ways to improve the performance of cloud applications.
    In the first part of this thesis, we use the serverless paradigm to improve the performance of a cloud application with a monolithic architecture running on a single virtual machine. The results suggest that the serverless paradigm improves the performance of the application under study by 93x.
    In the second part of this thesis, we introduce an autoscaling approach for microservice applications that leverages machine learning to model the performance behaviour of each service in the application and the performance impact of services on each other. The results show that the proposed autoscaling method improves the performance of microservice applications compared to Kubernetes HPA, the de facto standard for autoscaling in the industry.
    In the third part of this thesis, we leverage software multi-versioning as a cost-effective way to improve the performance and availability of cloud applications, particularly in situations where our
    computational resources are limited. The results show that multi-versioning can be used as an effective method for maintaining the performance of cloud applications at the desired level.

  • Subjects / Keywords
  • Graduation date
    Fall 2021
  • Type of Item
    Thesis
  • Degree
    Master of Science
  • DOI
    https://doi.org/10.7939/r3-0172-gk93
  • License
    This thesis is made available by the University of Alberta Libraries with permission of the copyright owner solely for non-commercial purposes. This thesis, or any portion thereof, may not otherwise be copied or reproduced without the written consent of the copyright owner, except to the extent permitted by Canadian copyright law.