Economies of scale used to be available to just the big players in IT. If you wanted to grow an application or database to enormous sizes – you had to buy the infrastructure to go with it. That meant that smaller companies trying to move into the market were always at a disadvantage compared to larger, well-established entities. Growth had to mirror revenue and the capacity to implement new infrastructure.
Cloud computing evens the playing field. The Internet allows hardware and software resources to be placed at the disposal of anyone who wishes to lease them. That’s what cloud computing is - the use of remote resources to enhance current capacity.
Infrastructure as a Service / IaaS
There are many different cloud computing models. There’s infrastructure as a Service (IaaS) which places servers, virtual machines, load balancing, storage etc. at your disposal for as long as you need it. Virtual machines are usually operated as guests from a hypervisor or virtual machine manager account. The resources are tapped on demand from massive data centers kept by the IaaS provider. That means that cloud computing resources can be offered on pricing plans that allow you to pay for the time you need the resources for and no more. That keeps costs as low as possible. However, it’s worth remembering that the access model usually depends on the customer keeping up to date with the latest operating system patches etc.
Platform as a Service / PaaS
Another cloud computing model you might have come across is Platform as a Service (PaaS). This is often seen as an extension of the IaaS model. In this instance the provider offers more than infrastructure, they also supply the operating system - an environment to execute specific programming languages, databases and a web server. This allows developers of applications to develop as they need without the constraints of purchasing and managing any hardware and software resources. At the highest level, PaaS can also be equipped to automatically scale with the load generated by the application which eliminates the need to configure computing resources by hand.
Software as a Service / SaaS
The final common cloud computing model is Software as a Service (SaaS). In this case the cloud computing provider installs and operates the application on its own hardware in the cloud. Users of the software don’t need to take care of any management of hardware or platform resources. That means there’s no need for the user base to install the application - they simply access the application through a web portal.
SaaS offers rapid scalability compared to the traditional application route. Load balancing and transfer of task management to virtual machines can be completely automated, cutting down maintenance to a fraction of the effort of doing so over an in-house network.
Amazon Web Services
One of the foremost providers of cloud computing services is Amazon Web Services. They’ve been operating since 2006, developing what is fast becoming the industry standard model for cloud based platforms, infrastructure and SaaS approaches.
The Amazon Web Services platform offers a low cost entry model for the cloud. All services are provided on a pay-as-you-go basis, so there’s no need to enter into long-term binding agreements and there are no up-front expenses to pay. Amazon Web Services manage the entire platform and essentially pass on the economies of scale that are gained through managing a global presence directly to their clients.
One of the key benefits of this approach is that you can rapidly scale up and scale down your requirements. You can move from one server to thousands and back again in the space of a few hours and you only pay for the time you used them for.
Amazon Web Services utilize a platform that is both operating system and language agnostic. That means you can use any development model that you’re familiar with and there’s no need to change your current working practices if you choose to move to Amazon Web Services.
There’s also no need to worry about the security of your data and services. Amazon Web Services, as you’d expect from a provider with Amazon’s reputation, are all protected with the highest levels of industry security. They have PCI DSS at Level 1, SSAE 16, HIPAA, etc. and the data centers all employ multiple-layers of physical and operational security.
In short, cloud computing offers some real advantages when compared to traditional IT infrastructure. Devops (development and operations) can help you make use of these advantages without any headaches during the handover period.