Cloud Computing Options and OSI Model

Cloud computing options stack aside with OSI layers

Do you remember Open System Interconnection (OSI) model? Is that true we ascend high and higher with empowerment from cloud computing?

Infrastructure as a service (IaaS), platform as a service (PaaS), and software as a service (SaaS) are three main cloud computing options. Each comes with a tradeoff of control vs. convenience. It is well explained in this RedHat article with a picture below:

Source: RedHat comparing IaaS vs. PaaS vs. SaaS

In my personal view, even there is not a 100% one to one match with cloud computing and OSI, they do overlap for the most part. Therefore, cloud options are inserted in the correct approximate place in my graph. Organizations should consider software as a service (SaaS) as the first choice for the obvious reasons: it removes the concerns of entire stack management and also development, testing, and all around effort.

Cloud first, then SaaS first.

Cost benefit of serverless cloud computing

Cost saving is one of the top reasons people choose cloud computing. In this example of a simple API system, over a few generations of its evolving architecture, we excel at serverless.

Monthly Compute Cost Comparison

This illustration shows a typical journey from hosting an application in a data center, then moving it to the cloud with elastic compute, then modernizing it to containerization, and eventually rewriting or converting it to serverless. A technology stack migration like this.

On-PremisesVM, F5, Java, RDMS (database)$$$
Lift and ShiftEC2, ELB, Java, EC2 (database)$$$
Cloud nativeEC2, ELB, Java, RDS, Auto Scaling$$
ContainerECS/Fargate, ELB/API Gateway, Java, RDS$
ServerlessLambda, API Gateway, Python, Aurora Serverless$
Evolving stack and compute cost

Serverless is not a panacea to all your compute challenges. Please validate your use case and make your best fit selection. If you are dealing with a new application, consider going from the bottom up. That means serverless first!