Basics of Cloud Computing

The huge development of communication networks, both fixed and mobile, have allowed development of new applications not executed in our computer but executed anywhere in internet. This kind of applications are involved in a new concept called “Cloud Computing” or processing in the cloud (internet). Most of the times it is not known where this application is executed but obviously there is a physical computer underneath.

SaaS – Software as a Service Hosting
IaaS – Infraestructure as a Service Cloud Storage
PaaS – Platform as a Service

The usual way for using these applications is through a web navigator and it is not needed to install any software in our computer. In other cases it is needed to install a software in our computer called “client”. The purpose of this “client” is to be the interface between our computer and the application executed in “server” computer in the cloud. In this case processing done by “client” is minimum and it could be executed in any device fixed or mobile.


SaaS

“Software as a Service” or software sold as a service. Traditional software is bought and, once installed, it could be use without any limit even install again in a more powerful computer when our computer become old and obsolete. Price use to be expensive because we are buying unlimited use. In the opposite Software as a Service sell the right to use this software during a specific time. This specific time use to be a month or a year. In monthly case we could use the software for cheap price and stop the service if software doesn’t fulfil our expectations. This regular payment includes not only the right to use the software but software support as well. One example of software as a service are antivirus programs. Antivirus program is installed in our computer but it doesn’t work without buying the license. This license allows program use during a limited time and antivirus stop working if license is not renewed.


IaaS

IaaS stands for “Infrastructure as a Service”. In this case the service is a computer with operating system installed and ready to be used and connected to internet. This computer use to have a fix IP address and it is running in some data center in internet. User access this computer using “Remote Desktop”. This computer could be a real one (expensive) or a virtual computer (cheaper). Virtual computers are created using a virtualization software like VMware, Citrix or OpenStack. This software creates several virtual computers in a real one working independently. The advantage of this service is customer get a computer installed and ready to use in seconds and pay per use or per time. If it is not needed anymore customer could cancel the contract and stop paying. Of course maintenance is included in the service.

In order to understand how virtualization works we could install Oracle VirtualBox or Microsoft Virtual PC. Both applications can be installed easily in our computer as any other application. In other way VMWare and Citrix XenServer are professional applications requiring several computers fully dedicated.


Hosting

Hosting is the easiest way to create a web site in internet. Customer pages are stored in the same servers than rest of customers in a specific folder for each customer. Service includes one or several domains and system redirect domain requests to the right folders. Sharing the servers and internet connection between lot of customers this service is really cheap and service provider assures it is working anytime. Most of hosting providers allow our pages to contain programs in PHP language and, additionally, provide SQL database. With these two element it is really easy to creat a webstore or a blog.


PaaS

PaaS stands for “Platform as a Service”. It is not really used widely and a bit complex to use. Let’s show an example: Google offer a development environment to create applications. These applications are not executed in our computer but in an execution environment in internet. Developers could create executed in the cloud without worries about hardware, operating system, etc. It is not used widely because depends on execution environment. If this environment changes application could stop working forcing developer to update application every time execution environment changes generating unexpected costs.


Storage in the cloud

It is a really good example of SaaS application. This application store in a secure data center in internet all data in a specific folder in our computer. Our files and folders are duplicated in our computer and in this data center. Installing this application in several computers our information is synchronized having the same in all computers and in the cloud. Information is available as well in our tablet, mobile device and in the web. Of course we have to be confidence in this application and select a well-known one like Google Drive or Microsoft Onedrive. Both offer several Gigabytes for free and we have only to pay if we need additional storage.