Insights What is cloud computing and what makes it so great?
By Tim Norris, Senior Developer
I recently passed my AWS (Amazon Web Services) cloud practitioner exam (pause for applause) and to celebrate I thought I’d do a little write up of what makes cloud computing, and particularly AWS, so great. Weird way to celebrate I know.
Before I get stuck in, it might be useful to briefly give some background on cloud computing just in case there are some non-techies actually reading this!
What exactly is cloud computing?
Cloud computing is basically an on-demand delivery of IT resources via the Internet with pay-as-you-go pricing. This could be related to email, video streaming, even file and photo storage. It’s also increasingly taking over from more traditional ‘on premise’ physical data centres and servers, so that it’s possible to access technology services, such as computing power, storage, and databases, on an as-needed basis, and it’s this element that I’ll be focusing on today.
There are three main types of cloud computing and here’s a quick overview for you:
Infrastructure as a Service (IaaS)
IaaS contains the basic building blocks for cloud IT and typically provides rental access to networking features, computers (virtual or on dedicated hardware), and data storage space. The management of public cloud VMs is similar to when they are hosted on premise, however the need to own or manage any of the physical environment is completely removed.
Platform as a Service (PaaS)
PaaS enables consumers to create environments on-demand for developing, testing, delivering and managing software and services. This is way more efficient as you don’t need to worry about resources or creating or managing the wider infrastructure.
Software as a Service (SaaS)
SaaS provides you with a complete product that is run and managed by the service provider allowing end users access to ready-to-use software (such as web-based email). With a SaaS offering, you don’t have to think about how the service is maintained or how the underlying infrastructure is managed. You only need to think about how you will use that particular software. These cloud based apps can be reached over the Internet using just a modern web browser.
So what are the benefits specifically of AWS?
Infrastructure is handled by best-in-class security experts so you can be sure that no nefarious users are getting in where they shouldn’t. Of course, there’s only so much that can be handled by AWS. Much like PHP, the only security holes are ones placed in by the implementor. But there are tools in place to minimise this risk as much as possible from warnings about potentially insecure configurations on EC2 security groups to full blown services like Amazon Detective.
For larger companies that previously had to manage their hosting services and data on premise, there is a huge benefit that comes from switching to the cloud. Utility bills, hardware costs, software patching, security (both physical and software); the list goes on. All provide extra overheads, but by switching to the cloud, this all gets managed by a third party and for a fraction of the cost of doing it all yourself. For smaller companies, there’s still a cost benefit too, the biggest being for short lived computation. No long term contracts necessary, just pay for what you use. AWS also provides some services for a fraction of what it would cost from other providers.
Let’s say you’re a company that often has a hugely varying amount of traffic visiting your website; to make sure your website stays up and running, you need to make sure you have at least enough computing capacity to handle the top end level of traffic. On a typical hosting platform, this would mean you are paying for services that, for a lot of the time, don't get used.
This is where scaling comes in. You can have the bare minimum of services running during quiet times and automatically scale up at peak times, so your services don’t get overloaded. This not only comes with a huge cost benefit but also has the benefit of keeping your site resilient, even if traffic goes past an expected level, which is very difficult (if not impossible) for non-cloud solutions.
For companies that have customers all over the world, providing online services effectively can be a huge problem. Let’s say you’re based in the UK and your website is based in the UK, but have website visitors from as far as South America. Typically this would mean those users get a tremendously slow experience, as the further away your users, the more latency occurs.
AWS has mitigation techniques to make sure that users in South America retain the same experience of your website as people in the UK. With one of the more popular ways of doing this being with AWS Cloudfront, which essentially caches your website at edge locations across the globe so that the information doesn’t have as far to go.
Wait… there’s more
The main reasons cloud computing is so great have been outlined above but there’s a whole host of other reasons to love it too, which I’ll summarise below...
- Fast setup
- Pay-as-you-go pricing models
- Web UI and API access to manage hardware and services
- Location/Device independent
- Unlimited capacity
- Computing agility
- Advanced backup and restore functionality
- And a bunch more
So you may be asking why isn’t everyone doing this. Well, for one thing, it’s difficult to get your head around. There’s a lot of concepts that are difficult to translate and therefore difficult to get buy-in from non-technical folks and on the other hand, some people just don’t need to go down this route. Due to it’s high learning curve, it’s going to take time to learn and implement, which some companies don’t have.
So should you? For the most part, there’s a lot of benefits to making the switch over to cloud computing, so it’s always worth doing some research or asking questions to see whether it’s a good fit. But for the majority, even if it’s just for the benefit of future-proofing yourselves, then I’d say, yes.
If you would like to find out more about how we can help you connect strategically, creatively or digitally, then call us or get in touch. We’d love to hear from you.