Palash Chauhan
← Projects

Comparing Cloud Models

· Graduate Course Project, UC San Diego Cloud Systems

A comparative study of virtual machines, containers, and serverless across CPU- and IO-bound workloads.

Comparing Cloud Models

We ran an in-depth analysis of virtual machines, containers, and serverless using two applications, one CPU-bound and one IO-bound. A few conclusions stood out. Serverless is the most convenient for deploying and maintaining an application, closely followed by containers; deployment is much slower for virtual machines. For different workloads, containers give better performance and scalability than virtual machines and serverless.

From a cost standpoint, serverless and containers are cheaper than virtual machines for smaller workloads, but containers are the best option for larger ones. Containers and virtual machines also suit always-on services, where they avoid the overhead of loading state on each serverless invocation. The study helped clarify the tradeoffs of deploying applications in the cloud and how to choose between the models.