What is Cloud Computing?

Published 03.02.2021

Author Hrittik Roy

Categories Engineering

Tags

“Cloud Computing” describes a set of terms that you hear everywhere nowadays. It might be in your morning newspaper, or the cool kid you know talks about it with few jargon terms like scalability, elasticity, etc. and now you want to know about these terms. I might ultimately be wrong here, and you might be someone who has an idea of what ‘cloud’ is or may even have an understanding and experience of creating applications on top of it. You are here for some missing piece of the knowledge pie or referencing this article to recall something you know but can’t remember at this instant or to explore this field as a beginner (Awesome of you to want to learn a new thing on your own).

Anyhow, you’re in the right hands, and let’s forget everything you know about the cloud. With this article, we will go on to explore every question you might have by breaking them into few essential questions.

Let’s get started!

What is Cloud?

Cloud computing (aka cloud) delivers computing services such as servers, storage, databases, networking, software, analytics, and intelligence over the internet and on a pay-as-you-go basis, saving you the cost associated with building, owning, and maintaining infrastructure.

Some companies go as far as delivering computing resources and billing them on a per-second billing. In short, you rent computing services from cloud providers.

Why is it called cloud computing?

Most of the Infrastructure, as discussed, is rented over the internet. The location of the servers, hardware, and many other things appear irrelevant to the customers. Customers are focused on using the service and developing on top of it while not worrying about using an on-premise infrastructure. ZDNet conveys it as:

It’s with this (using the service and not caring about anything else) in mind that the metaphor of the cloud was borrowed from old telecoms network schematics, in which the public telephone network (and later the internet) was often represented as a cloud to denote that the just didn’t matter — it was just a cloud of stuff.

This, however, is an oversimplification, and in various instances, location plays a critical role, especially when the cloud providers are dealing with the government.). Governments, like many other organizations, are focused on keeping the data in ‘private’ or in specific locations and servers that are not shared by other users. We call this type of cloud a private cloud where cloud computing resources used exclusively by a single business or organization.

Normal users care about using the service and getting stuff done. They don’t care about whether the server is shared or not and so it’s called public cloud, i.e., accessible and shareable by everyone.

A mix-match of two is hybrid.

Public, private, and hybrid cloud seems awesome, but, in some instances, you only care about using the service (e.g., google workspaceslack) and might want to develop on top of it without getting bothered about how and where things work behind the scenes.

Different users have different requirements, and they share different responsibilities with the cloud provider. Illustration from Azure

What are different type of cloud models?

Cloud computing provides different models for different use cases.  For example, if you want to rent an entire server and manage everything on your own or want to develop without caring about the infrastructure management, you’re covered.

We categorize them into three major categories, and each is built on top of another.

Infrastructure as a service (IaaS)

This style of cloud service is the nearest to a physical server or on-premise management. The infrastructure or hardware is held up-to-date by a service operator, but the operating system’s maintenance and network setup is the cloud tenant’s responsibility.

In short, imagine you rented a computer, and now it’s up to you to update its OS version or configure VPNs, ethernet, or install any application on your own for your use-case. Example: Renting a computer over the internet or renting a virtual machine (VM). Yes, you can rent them over the internet and basically do anything you do on your computer. EC2 or Azure VM are some terms you need to search if you want to try renting and want a lead.

Platform as a service (PaaS)

Built on top of IaaS, it helps you to manage a hosting environment without worrying about the infrastructure. You can think of this as your web hosting service, which lets you host a website without headaches.

Software as a service (SaaS)

Built on top of PaaS, the cloud provider or providers manage every aspect of the application. Think of this as Salesforce, where you can develop more applications and publish on the go. If that still leaves space for confusion, think of a scenario where you need facial recognition, maybe while taking attendance. With SaaS, you don’t have to worry about anything apart from implementing the facial recognition service to your app.

Different computing models. Illustration from Azure

The different models are easy to understand but a headache when you need to choose the best one for a use case. We have put together a detailed blog that focuses on helping you to make that right decision quickly.

Why chose Cloud?

As you have understood, the amount of flexibility and advantage from choosing and configuring a cloud service is unparalleled. Apart from these already discussed we have various more features covering every need.

Apart from these already discussed we have various more features covering every need. Most of these features revolve around the fact that the cloud providers have a near-limitless pool of raw compute, storage, and networking capacity in various locations, which is rented profitably and cheap due to the economy of scale.

Geo-distribution

One of the significant drawbacks of the on-premises system was that they were at one location. If you have global users, the latency would be enormous, and customers would prefer to use local services. Now, think of expanding to different zones and consider compliance, security, networking, and data center management. So many factors can give you a headache, and the headache can go severe when you consider the system you invest in and own will be in some distant land.

Moreover, the investment will quickly add up as you need humans to take care of the system and security. It’s possible to ROR (rate of return) can be complete 0 if the expected traffic never comes through. Happy dismantling 🙂

With cloud computing, you can create, configure or delete a sever as per demand in an available location (generally closer to your traffic source) quickly, so your user always gets the best performance and you the best value for your money.

Reliability

Cloud services are online with apparent no downtime, and with modern infrastructures, even if a whole data center goes down at one location, you can sleep peacefully as a replacement center is already serving your users. This shift happens automatically if configured

Disaster recovery

You can deploy your applications with the assurance that you know that your data is secure in the event of a catastrophe by using cloud-based backup services, data replication, and geo-distribution. Just a few clicks on the portal, and you have all your data conserved.

Scalability

You can configure your setup to autoscale whoever you want. Scale vertically to increase the computing power by adding RAM and CPUs to the virtual machine.

Depending on the situation, you can scale horizontally by adding more instances to your configuration. You can think of as you get an employee joining your company with few clicks, you can give him his VM.

Elasticity

With an endless pool of resources, your system could auto-scale as much as your needs are. Now you don’t have to worry about buying new servers or the tedious task of calculating how many servers you need for your eCommerce site before the holiday season.

Agility

When the application requirements change or on first-time deployments, cloud-based tools can be easily deployed and set up. It’s fast and to sum up one of the core principles driving other advantages.

The Future

Companies are restrategizing their IT infrastructure to move to the cloud. One of the most significant costs associated with it is upgrading the codebase to be fully functional in the cloud. Never in the history of startups, it was so cheap to build applications with zero hardware overheads, and all newer startups emphasize a ‘cloud-native’ approach to build software made for the cloud and leave owning infrastructure behind.

Job profiles want people who can move the infrastructure to the cloud, create one on the cloud, and with an increase in cloud adoption, opportunities are set to grow. It’s an awesome time to go and explore cloud technologies.

Happy Learning!

Join 100+ cloud native enthusiasts

and stay in the loop on modern software development.

Sign up to receive exclusive content around cloud native software development right into your inbox.

We don’t spam! Read our privacy policy for more info.

More stories from our blog

What’s new in Kubernetes v1.21.2?

What’s new in Kubernetes v1.21.2?

It's June, and Kubernetes has released a new update with version 1.21.2. We will have a look in brief at the changes that came along with this update. We will also have a look at the bugs that Kubernetes removed ahead with the few things added. Let's roll. Changes...

Chaos Engineering: Not so Chaotic

Chaos Engineering: Not so Chaotic

It feels very complex when we talk a lot about cloud computing and developer operations. Furthermore, certain things look complicated, but they are not so if we easily understand those concepts. Today, we will discuss such a thing that sounds complex but is simple and...

On Charming Engineering Culture: My Notes

On Charming Engineering Culture: My Notes

Engineering teams are at the core of any modern organisation. They break/make an organisation, and empowering them is critical to any modern companies’ success. A motivated engineer brings more value than a ‘whatever’ engineer. Its high time managers and leaders focus...

Observability: Your Eyes in Cloud

Observability: Your Eyes in Cloud

Observability is all around the cloud. You might come across the term while exploring the vast stretches of documentations or blog posts, maybe videos or streams too. Well, from far you might have seen that this is a very broad term, and it’s expected. The topic is...

Cloud Firewalls Simplified: Beginners  Edition

Cloud Firewalls Simplified: Beginners Edition

Cloud technology is everywhere. From your photos to big corporations carrying out their day to day operations. But have you ever thought about the security needed to protect this vast pile of data? Security from external attacks by threat detection and elimination is...

Object and Block Storage: How They Differ?

Object and Block Storage: How They Differ?

The difference between block and file storage makes heads spin due to the complexity of definitions and technical jargon across the internet. Even a technical person sometimes forgets the business value and makes decision fatigue their best friend when trying to...

Helm: Why DevOps Engineers Love it?

Helm: Why DevOps Engineers Love it?

Kubernetes doesn’t have reproducibility built-in. At least, that’s what we hear most people complain as a cloud native consultation firm serving both startups and enterprises. I have been using Kubernetes for a while now, and it stands up to the mark of being a gold...

Interested in what we do? Looking for help? Wanna talk about software strategy?