Cloud computing has gained significant popularity over the past few years because of its self service capacity, flexibility, affordability, scalability and its pay as you go service model. You may have also heard cloud computing referred to as the cloud, cloud hosting, cloud server hosting and etc. These terms have been thrown around so much and most do not even know exactly what it means. So what is cloud computing?
Cloud computing is unlike traditional hosting alternatives that use a single dedicated server, as cloud computing uses virtualization technology to pool or share resources from an underlying network of physical servers. In other words, a group of physical servers acts like one big server to bring you the resources that you need on demand. Cloud computing delivers shared computing resources, data or software through the Internet; which is the most common way of accessing the cloud. However, intranets and dedicated networks are also used too. Resources provided by the cloud include: networks, servers, storage, platforms, applications and other services. And these resources are shared between people and organizations, and accessed by applications or users.
The Five Main Characteristic of Cloud Computing
In cloud computing, there are five fundamental characteristics that differentiate it from traditional hosting alternatives, including rapid elasticity, broad network access, on-demand self-service, resource pooling, and measured service.
· On-Demand Self-Service
With cloud computing’s on demand self service, you are able to access email, applications, network or server services without human interaction. Simply set up an account with the seller, create billing and security credentials, and select the cloud computing resources that you will need. Generally this is all done by utilizing a user friendly and easily accessible web-based self-service portal.
· Broad Network Access
Cloud computing services are available over a network, either over a dedicated network, the Internet or the Intranet. These services can be accessed by anyone, anywhere, anytime on any device or workstation, with the right credentials of course.
· Resource Pooling
Cloud computing provides multiple customers the same physical resources, however, with a a separate environment for each client. And the resources from these physical servers can be pooled from various servers, in various data centers, in various locations. And if a server in your network goes offline, then your virtual server will pool resources from another server in your physical network. Even if an entire data center in your network is down, then your resources are pooled from various data centers in various locations. This structure allows for decreased risk in the instance of failure.
· Rapid Elasticity
Perhaps one of the essential benefits of cloud computing is the flexibility that it provides to users, as cloud resources can be rapidly and elastically supplied to quickly scale out and in to meet demand. In other words, you get the resources that you need when you need them.
· Measured Service
Cloud computing leverages metering capabilities to measure your usage of resources, allowing you to only pay for what you are using. In other words, just like a utility bill you will only be charged for what you use, nothing more nothing less.
The 3 Main Cloud Computing Service Models
In cloud computing, there are three main service models. They are Software as a Service (SaaS), Infrastructure as a Service (IaaS) and Platform as a Service (PaaS).
· Software as a Service (SaaS) is the most extensively used cloud computing service model. SaaS allows developers and organizations to utilize business specific applications developed by third parties. In a SaaS model the vendor hosts both the application and the data, and the end user is free to use the services from anywhere. SaaS is not your average on premise software, as it is deployed over a network, generally the web, accessible via browser or program interface. Services can be anything from email to inventory control to database processing. Some examples include: Salesforce.com, Zoho, and Netsuite. The service level coverage provided includes: application uptime and performance.
· Platform as a Service (PaaS) is a type of cloud computing that provides users with software development tools that are hosted on a cloud provider’s infrastructure. In a PaaS environment, developers can leverage the resources of a cloud provider to create and host applications on their platforms over the Internet. The greatest benefit derived from PaaS is that users can run existing or develop new applications without being concerned about the maintenance of server hardware, operating systems, load balancing or computing capacity. In other words, you can unload the responsibility of owning, managing, and operating systems software and hardware to your service provider. The types of services provided can be anything from RunTime scenario, cloud storage, integration and etc. Some examples of PaaS are Google App Engine, Windows Azure and Force.com. The service level coverage provided includes: environment availability, environment performance and no application coverage.