There was four major problems exists before the Modern Cloud Computing was introduced in the world of Information Technology. Problems are in area of Fault tolerance, High Availability, Scalability and Elasticity.
Businesses were trying to work on these areas but there was lot of cost involved in this. Modern Cloud Computing was the solution for this. Today, these four are pillars of it.
Note: Cloud Computing term was introduced back in 1960s with ARPANET project. We are not referring to that. We are referring to Modern Cloud Computing where a Cloud providers manages data, software, services and infrastructure.
- Fault Tolerance
- High Availability
Let’s discuss them one by one.
We generally store our data on our personal devices like Mobile, Computers and Laptops. Suppose, if your personal device destroyed or malfunctioned then your data will be lost. Sometimes, it is impossible to recover your data. If you lost any important data then that can lead to financial loss, document loss, even a business loss etc.
What if, you have stored your data or copy of your data on the Personal Cloud services like Google Drive or Dropbox? There are minor chances of your data getting lost. These companies are specialized in handling Servers, huge amount of Data and also provide you great Security.
In this case, even if your personal device destroyed, you can still get back your data from Cloud into your new device or in other device. For example, if your Computer is destroyed, then you can download all or required data into your laptop/mobile. This is known as Fault Tolerance.
Data is NOT ‘Highly Available’ if it is not available when you want it most. Suppose, you have stored ppt presentation file in your office laptop. When you reached office, you came to know that you forget your laptop at home. Now, it is certainly will take lot of time to carry your laptop to office. So the data (ppt presentation file) is not highly available to you.
Suppose, your ppt presentation file is stored on the cloud platform provided by your company then it will be available to you at your office. You can access it from any other device in office by following company’s protocol. You don’t need your laptop anymore. This is called High Availability. Wherever you go, your data is always with you. It is accessible from most of the devices around you.
It is difficult for businesses to forecast and see future demand for users in their applications. Let’s take an example.
Suppose, you have newly launched web application and it has 500 users. You are using one on-premise server to handle those requests. Let’s assume that the server’s capacity is only up to handling 1000 users.
After some time business grows and users are reaching nearer to 1000, then you have to add another on-premise server to handle traffic as it will go above 1000 soon. It is not easy for you to add another server to stack because it involves technical and cost parameters. Till you decide on these parameters, users will get affected.
As server’s load gets increase, existing users will also suffers. It is not good for any business.
When you add additional servers and they are load balanced, there is a possibility that they shouldn’t be using there full capacity. In this case, server resources remain unused. This is not cost effective.
If you have web application hosted on cloud then you can automatically add additional servers on demand. It is instant, automatic and cost effective. As traffic gets increase, new virtual server will be added to the stack automatically so the users will not get affected.
This is called as Scalability. Servers are scalable as per business needs on cloud.
Cloud also makes sure that the server is using it’s maximum capacity before adding new server to stack. Even after adding new server, cloud makes sure that load balanced VMs are using their maximum capacity.
We discuss same example taken in the scalability point above.
If you are using on-premise servers (Physical Servers) and you have 4 servers handling traffic at the movement. Few months later you could see that traffic came down drastically (lets say below 2000 users). Now, your additional 2 servers are useless. You investment is wasted if traffic doesn’t improve. It will affect your business.
Suppose, the same application is hosted on cloud and it has 4 virtual servers serving the application. If traffic drops, then servers will get automatically removed from the stack. It will also bring down the cost. This is called as Elasticity.
These are 4 main pillars of any Cloud Computing platform like AWS or Azure or Google Cloud or any. Without these modern cloud analogy fails. We hope you understand these main concepts on which cloud platforms are built.