Decoding Cloud Paas
Decoding Cloud Paas
Decoding Cloud Paas
The popular rhythmic cloud axiom “Infrastructure as a service (IaaS), Platform as a service
(PaaS), Software as a service (SaaS)”, might put us in an illusion that IaaS came first in the
evolution cycle of cloud services. But, this theory is not factual. Although IaaS became a popular
way of cloud adoption as it gave enterprises an option of quicker movement to the cloud, the
very first public cloud service offered was Simple Queuing Service (SQS), a messaging service
by Amazon Web Services, in 2004. Soon after, PaaS became the choice of most developers as it
takes away the hassles of managing the IT infrastructure of business applications.
According to Oxford dictionary, a platform is defined as, “A raised floor or stage used by public
speakers or performers so that they can be seen by their audience.”
To understand this in the context of cloud, replace ‘raised floor’ with ‘computing ground’,
‘public speaker’ with ‘developers’, ‘can be seen’ with ‘produce’ and ‘Audience’ with ‘useful
applications’.
Let us consider a simple analogy to understand PaaS better with crops farming. A farmer first
studies the soil and then thinks of the right crop it can produce, to support his aspirations. He
then chooses the right season in which the activities of the soil are intensified and is ready to
embrace the seed – be it plowing, leveling or manuring. After seeding the soil, he irrigates the
fields to help get the best yield.
Now, consider a situation where the farmer just decides on the crop and delegates another person
to take care of arranging the rest of the process. You see a crop production platform in action.
Replace the farmer with developer and code in place of seed. And, if the soil was considered as
infrastructure, infrastructure management would be plowing, watering, manuring, weeding, etc.
The PaaS provider in this scenario would be the delegated one who does it all but at scale. With
this simple analogy, let us understand the concept better.
PaaS allows the developers to innovate at a speed that is inspiring. As soon as the developers get
the details of environment such as region, deployment plan and language, the environment is
ready and coding is set in action. Developers are also given the liberty to choose their preferred
development tools built into PaaS solution depending on their methods of preference.
Cost is always a crucial factor in decision making while selecting from multiple options. PaaS
offers pay-as-you-go model where the payment is done in terms of the actual usage. In addition,
you have the freedom of aligning to the right type of hosting plans based on the load you expect
on the application. Another feature of PaaS is promoting the code across the chain of
environments – test, staging, pre-production, and production. This brings in consistency of
experience in multiple stages. PaaS platforms are quite resilient as more than one node serve the
actual load to maintain high availability. Code and configuration can be replicated across
facilities and regions to add the capability of recovery in disaster situations.
Even though the above listed points throw some concerns, they may not be the road blockers in
PaaS adoption. Careful planning and bottom-up decision making should be able to make
enterprises come close to implementing PaaS.
We, at Mindtree, came across one such situation wherein the client envisaged moving his
applications – modern and legacy to Azure PaaS. Our process started with a careful assessment
led by PoC, and soon, we were face-to -face with reality. Size of the sitecore platform and
serving marketing websites of this client did not receive matching workloads on Azure PaaS. If
you are wondering why workloads are arising in PaaS discussion, well, there are workloads
provisioned to serve the code in PaaS too. And here in PaaS, a choice of larger workload that is
rolled out under IaaS model cannot be matched. Finally, to resolve this issue, we moved legacy
application to PaaS but still ran sitecore on IaaS.
What are the common applications that
allude to PaaS?
Though PaaS is not a one-stop solution to all the challenges, it helps in solving some of them
when the use case is carefully identified and built. Some prevailing use cases are mentioned
below: