Repository logo

Improving Cloud-Based Systems: Testing and Optimizing System Scalability

dc.contributor.authorLi, Jia
dc.contributor.supervisorNejati, Shiva
dc.contributor.supervisorSabetzadeh, Mehrdad
dc.date.accessioned2025-08-18T19:03:11Z
dc.date.available2025-08-18T19:03:11Z
dc.date.issued2025-08-18
dc.description.abstractIn recent years, cloud-based systems have gained significant popularity for delivering resilient services across diverse domains, including the Internet of Things, data centers, and e-commerce, where they must handle dynamic workloads and ensure seamless service delivery. However, maintaining scalability and meeting performance objectives under unpredictable conditions remains a persistent challenge. This thesis addresses this challenge by focusing on verifying and optimizing the scalability of cloud-based systems through stress testing methodologies and self-adaptive techniques. First, a simulation framework is introduced to conduct stress testing by simulating large numbers of devices communicating with cloud applications at high frequencies, while reducing computational overhead through symbolic representations. This approach analyzes system behavior under extreme workloads and at the upper limits of its capacity. When facing high workloads, the network connecting devices to the cloud applications can become a bottleneck and frequently congested. In the second part of this thesis, to mitigate network congestion, a generative self-adaptation framework leveraging genetic programming is proposed to evolve data forwarding logic in real time, minimizing Service Level Objective (SLO) violations and adaptation costs. Third, to ensure that cloud applications can scale to varying request loads, an auto-scaling framework is developed to dynamically adjust microservice instances in a coordinated manner, ensuring SLO compliance while optimizing resource usage. By enhancing the scalability of cloud-based systems through these three methods, our research ensures optimal performance, reliable service delivery, and effective resource utilization under varying and unpredictable workloads. The proposed solutions reduce operational costs and improve system autonomy, advancing the state of the art in designing and managing scalable cloud-based systems.
dc.identifier.urihttp://hdl.handle.net/10393/50776
dc.identifier.urihttps://doi.org/10.20381/ruor-31330
dc.language.isoen
dc.publisherUniversité d'Ottawa / University of Ottawa
dc.subjectcloud-based systems
dc.subjectautoscaling
dc.subjectsoftware-defined networks
dc.subjectstress-testing
dc.subjectcloud-native
dc.subjectself-adaptation
dc.subjectgenetic programming
dc.subjectcontainerization
dc.subjectinternet of things
dc.titleImproving Cloud-Based Systems: Testing and Optimizing System Scalability
dc.typeThesisen
thesis.degree.disciplineGénie / Engineering
thesis.degree.levelDoctoral
thesis.degree.namePhD
uottawa.departmentScience informatique et génie électrique / Electrical Engineering and Computer Science

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail ImageThumbnail Image
Name:
Li_Jia_2025_thesis.pdf
Size:
4.48 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail ImageThumbnail Image
Name:
license.txt
Size:
6.65 KB
Format:
Item-specific license agreed upon to submission
Description: