Most people understand that ‘the cloud’ refers to data hosted somewhere other than their own local computer. But how is the cloud different from other forms of hosting? And why would anyone choose to store data on the cloud over any other way?
To understand what makes cloud hosting different, let’s first look at traditional web hosting.
Traditional hosting involves a single server connected to the internet. Servers operate more or less like your computer or laptop do: They have RAM, a CPU, and storage. A key difference is that any computer connected to the internet can request files from a server.
When a user points their browser at a URL the request goes to a server, and the server uses RAM and CPU to fetch a file and send it back to the browser to be displayed.
In theory, a server could receive so many requests that its RAM and CPU are all used up and it becomes slow or impossible to serve web pages until the requests stop, or more RAM/CPU power is installed. This has happened to our university website a few times over the years. If you’ve ever noticed a time when all pages took a long time to load, and then when they do load it’s often incomplete, it was likely that we were experiencing high volumes of traffic.
Cloud hosting works a bit differently. You can think of a cloud as multiple servers linked together to share resources. A cloud has far more RAM or CPU than a single server, and each site uses only the resources it needs at any given moment. If your site has low traffic that day, it will use less resources, if it has high traffic it will use more.
Storage is also distributed across the cloud. This means if one server goes down or is unavailable for some reason the cloud knows to simply get that data from another part of the cloud.
While the current version of the university site remains on traditional web hosting, the new version will use cloud hosting. In fact, we’ve already begun setting up the server and doing development work on it. The distributed nature of cloud hosting will be a big help to us.
Cyber threats are on the rise, and the most common attack is to make thousands (or more!) of requests per minute to a server in the hopes of using all of its resources. Cloud hosting will enable us to keep our site up and running when we are faced with these sorts of attacks by increasing our RAM and CPU on the fly, as needed.
It will also enable us to quickly restore the website from a previous day’s version, move data from production to testing (or vice versa) at the drop of a hat, and many other technical things that will improve the lives of our users while remaining transparent to them.
This post was written by Robbie Hunt, Back-End Web Developer.