Architecting delay-sensitive applications for the cloud
Abstract
Building responsive cloud applications is critical to ensuring a compelling user experience. While cloud computing promises to deliver IT services at a lower cost and increased scalability, meeting the strict requirements on response time for performance-sensitive applications in the cloud is is still a challenge. In this thesis, we tackle the challenges application designers face in architecting multi-tier, scalable and performance-sensitive applications for the cloud. In particular, we i) introduce new frameworks for systematically architecting interactive and large-scale applications across on-premise and cloud data-centers; ii) shed light on the performance variability of applications in public clouds and exploit opportunities to mitigate variability using geo-distribution; iii) introduce a novel system that aims at solving transient performance problems in the cloud by dynamically splitting application requests across services in multiple data-centers; and iv) study the problem of selecting configurations for applications in public clouds for obtaining better performance and reducing testing overhead and cost. Our measurements of a wide range of applications (e.g., photo editing application, Cassandra distributed key-value store, etc.) on real cloud infrastructures (such as Amazon EC2 and Microsoft Azure) reveal several interesting insights. In addition, our evaluations of our systems and frameworks indicate the importance and feasibility of our mechanisms.
Degree
Ph.D.
Advisors
Rao, Purdue University.
Subject Area
Computer Engineering|Electrical engineering|Computer science
Off-Campus Purdue Users:
To access this dissertation, please log in to our
proxy server.