Cloud Computing
Tags: cloud, aws, azure, googlecloud
Published: 2021-05-23 17:47:31

###**Basics of Cloud Computing**<br/>
Moving to the cloud. Running in the cloud. Stored in the cloud. Accessed from the cloud.
Anyone with a smartphone have done at-least any one of the above operations. So cloud is a place where you can access apps and services, and where your data can be stored securely, i.e. it is the on-demand delivery of IT resources via Internet.<br/>
###**History of Cloud Computing**<br/>
The Internet has its roots in the 1960s, and as Internet connections got faster and more reliable, a new type of company called an Application Service Provider or ASP started to appear. By the end of the 1990s, salesforce.com introduced its own multi-tenant application which was specifically designed:
* to run “in the cloud”
* to be accessed over the Internet from a web browser
* to be used by large numbers of customers simultaneously at low cost.<br/>

###**Why Cloud Computing ?**<br/>
Cloud computing is a big shift from the traditional way businesses think about IT resources. Benefits of cloud computing are:
* Cost- Cloud computing eliminates the capital expense of buying hardware and software and setting up and running on-site datacentres.
* Speed- Most cloud computing services are provided self service and on demand, so even vast amounts of computing resources can be provisioned in few mouse clicks
* Performance- The biggest cloud computing services run on a worldwide network of secure datacentres, which are regularly upgraded to the latest generation of fast and efficient computing hardware.
* Security- Many cloud providers offer a broad set of policies, technologies and controls that strengthen your security posture overall, helping protect your data, apps and infrastructure from potential threats.
* Global scale- The benefits of cloud computing services include the ability to scale elastically.<br/>

###**Cloud Computing Architecture**<br/>
Cloud computing architecture is a combination of service-oriented architecture and event-driven architecture. Cloud computing architecture is divided into the following two parts -
**Frontend**
**Backend**<br/>
* Frontend — The front end is used by the client. It contains client-side interfaces and applications that are required to access the cloud computing platforms. The front end includes web servers (including Chrome, Firefox, internet explorer, etc.), tablets, and mobile devices.
* Backend — The back end is used by the service provider. It manages all the resources that are required to provide cloud computing services. It includes a huge amount of data storage, security mechanism, virtual machines, deploying models, servers, traffic control mechanisms, etc.<br/>

**Client-Server Architecture**
Client-Server Architecture is a distributed application structure that partitions tasks or workloads between the providers of a resource or service called servers and service requesters called clients. Many client requests and receive service from a centralized server. Here, additional hardware can be easily added to increase computing power.<br/>

###**Types of Cloud Computing**<br/>
* Public Cloud — Public clouds are owned and operated by a third-party cloud service providers, which deliver their computing resources like servers and storage over the Internet. With a public cloud, all hardware, software and other supporting infrastructure is owned and managed by the cloud provider. AWS, Azure, Google Cloud etc.
* Private Cloud — A private cloud refers to cloud computing resources used exclusively by a single company or organisation. A private cloud can be physically located on the company’s on-site datacentre. Some companies also pay third-party service providers to host their private cloud. A private cloud is one in which the services and infrastructure are maintained on a private network.
* Hybrid Cloud — Hybrid clouds are a combination of public and private clouds, bound together by technology that allows data and applications to be shared between them.
* Community Cloud — It operates as a public cloud. The difference is that this system only allows access to a specific group of users with shared interests and use cases. This type of cloud architecture can be hosted on-premises, at a peer organization, or by a third-party provider. A combination of all three is also an option.<br/>

###**Types of Cloud Services**<br/>
* Infrastructure as a service (IaaS) — The most basic category of cloud computing services. With IaaS, you rent IT infrastructure — servers and virtual machines (VMs), storage, networks, operating systems — from a cloud provider on a pay-as-you-go basis.
Example: Aws, Microsoft Azure<br/>
* Platform as a service (PaaS) — Platform as a service refers to cloud computing services that supply an on-demand environment for developing, testing, software applications. It is designed to make it easier for developers to quickly create web or mobile apps, without worrying about setting up or managing the infrastructure of servers, storage, network and databases needed for development.
Example: Google App Engine<br/>
* Software as a service (SaaS) — Software as a service is a method for delivering software applications over the Internet, on demand and typically on a subscription basis. With SaaS, cloud providers host and manage the software application and underlying infrastructure and handle any maintenance, like software upgrades and security patching.
Example: Gmail, Google Docs etc.<br/>
* Hardware as a service (HaaS) — Hardware as a service refers to managed services or grid computing, where computing power is leased from a central provider. In each case, it is similar to other service-based models, where users rent, rather than purchase, a provider’s tech assets.<br/>

**Disadvantages of Cloud Computing**
* Security Threat in the Cloud — Before adopting cloud technology, you should be well aware of the fact that you will be sharing all your company’s sensitive information to a third-party cloud computing service provider. Hackers might access this information.
* Downtime — cloud provider may face power loss, low internet connectivity, service maintenance, etc.
* Lower Bandwidth — Many cloud storage service providers limit bandwidth usage of their users. So, in case if your organization surpasses the given allowance, the additional charges could be significantly costly.
* Technical Issues — Cloud technology is always prone to an outage and other technical issues. Even, the best cloud service provider companies may face this type of trouble despite maintaining high standards of maintenance.