Cloud Computing Overview

Cloud Computing Overview

Before going in deep with the Cloud Computing concept, Let's go through the fundamentals of Traditional Computing. After understanding the traditional one, we'll realize how wonderful Cloud Computing is. Without it, we may have headaches every single day with our infrastructure.

How does a website work?

Firstly, we should know how a website works. A website is like a book that contains many pages. Each page has its content, such as text, images, videos, etc. It is stored on a computer called a server, which is connected to the internet. The server has a unique address called an IP address.

However, IP addresses are hard to remember, so we use domain names instead. For example, www.bing.com is a domain name that points to an IP address of a server that hosts Bing's website.

When you want to visit a website, you type its domain name in your browser's address bar. The browser then contacts a server, gets composed data and displays it for you.

Nowadays, not only websites but also many kinds of applications are served via the Internet. But the must-have things are still servers that handle and exchange data for all clients.

Traditional Computing

We always need at least a server, don't we? Traditionally, we have to build a physical server at home, office or in some places called data centers. We have to manage it manually by ourselves. There are problems with this approach:

  • Pay the rent for the place where the server is located.

  • Pay for power supply, cooling, maintenance,...

  • Adding or replacing hardware takes time.

  • Scaling is difficult and limited.

  • Hire a 24/7 team to monitor the infrastructure.

  • How to deal with disasters? (earthquake, power shutdown, fire...)

Are you sure you can handle all of these things well? Do you feel happy to pay a huge amount of money to host a website that has hundreds of visits every day? Luckily, we live in the age of Cloud Computing when an application is live after a few minutes within a click. And the price for a month may be equal to a cup of coffee. Isn't it wonderful?

What is Cloud Computing?

Here is the list of things that make Cloud Computing:

  • It's the on-demand delivery of computing power, database storage, applications, and other IT resources.

  • It follows the pay-as-you-go pricing strategy.

  • It allows to provision of the right type and size of computing resources people need.

  • It allows access to many resources, almost instantly.

  • It provides a simple way to access servers, storage, databases and a set of application services.

  • A cloud computing provider owns and maintains the network-connected hardware required for these application services, while we provision and use what we need via a web application.

Even though you don't host any websites/applications (just an ordinary user), you might use a bunch of products that are the results of Cloud Computing at least. Are you using Google (Mail, Drive or Photos), Skype or Messenger? There are cloud services.

6 Advantages of Cloud Computing

  1. On-demand self-service: Users can request and obtain cloud services whenever they need them, without requiring human intervention from the service provider.

  2. Broad network access: Users can access cloud services from anywhere and from any device that is connected to the internet.

  3. Resource pooling: The service provider uses a shared pool of resources to serve multiple users. The resources are dynamically allocated and released according to the demand of each user. The users do not know the exact location or configuration of the resources they are using.

  4. Rapid elasticity: The service provider can quickly scale up or down the resources according to the fluctuation of user demand. The users can also adjust the amount of resources they use according to their needs. The resources appear to be unlimited and available at any time.

  5. Measured service: The service provider monitors and measures the usage of the resources by each user. The users pay only for the amount of resources they consume. The service provider also provides reports and billing information to the users.

  6. Faster time to market: Developing in the cloud enables users to get their applications to market quickly. Cloud computing supports innovations by making it easy to test new ideas and design new applications without hardware limitations or slow procurement processes.

Compare Things

FeatureTraditional ComputingCloud Computing
Location of hardware and softwareOn-premisesOff-premises
CostUpfront costs can be highPay-as-you-go pricing model
ScalabilityDifficult to scaleScalable to meet demand
AccessibilityAccess to data and applications is limited to the organization's networkAccess to data and applications from anywhere with an internet connection
SecurityCan offer a higher level of securitySecurity features are provided by the cloud providers
ComplianceMay not be a good choice for businesses that need to comply with strict regulationsCan be a good choice for businesses that need to comply with strict regulations

The Deployment Models of the Cloud

Private CloudPublic CloudHybrid Cloud
Cloud services used by a single organization, are not exposed to the public.Cloud resources are owned and operated by a third-party cloud service provider delivered over the Internet.Keep some servers on-premises and extend some capabilities to the Cloud
Complete controlSix Advantages of Cloud ComputingControl over sensitive assets in your private infrastructure
Security for sensitive applicationsFlexibility and cost-effectiveness of the public cloud
Meet specific business needs

Types of Cloud Computing

  • Infrastructure as a Service (IaaS): It allows users to access and manage various computing resources over the internet. These resources include servers, storage, networking, and virtualization. Users can rent these resources from a cloud provider and pay only for what they use, without having to buy or maintain their hardware or software.

  • Platform as a Service (PaaS): It allows you to develop, run, and manage your applications without having to buy or maintain the hardware and software that are needed for a traditional development platform. PaaS provides you with a complete cloud platform that includes servers, storage, networking, operating systems, databases, development tools, and more. You can access these resources over the internet and pay only for what you use.

  • Software as a Service (SaaS): It allows you to use software applications over the internet, without having to install or maintain them on your own devices. SaaS applications are also known as web-based software, on-demand software, or hosted software. SaaS provides you with a complete software solution that you subscribe to from a cloud service provider. The provider manages the infrastructure, the software, and the data for you. You can access the SaaS applications from any device that has an internet connection and a web browser.

Conclusion

Cloud Computing is a way of delivering computing services over the internet, such as servers, storage, databases, networking, and software. It has many advantages for businesses and individuals, such as cost-efficiency, scalability, reliability, and security. It changes the game of software worldwide.

If you are a developer, a sysadmin, a DevOps engineer or working as any other IT title, mastering Cloud Computing is the key to success. Currently, there are there big Cloud Computing providers. They are Amazon Web Service, Microsoft Azure and Google Cloud with tons of certifications for you to get.