We seriously like to believe that there aren’t many who don’t know Amazon Web Services. After all, it is powering like almost half the Internet and many of our favourite online platforms.
Still no clue? *sigh* Fine! If you have ever used Dropbox and sites like Reddit, then you have used AWS. Yup, those platforms are built on top of Amazon Web Services and delivering kick ass stuffs to your doorstep.
Now now… since we have already established what AWS is, let’s talk a bit more about it. You see, AWS isn’t just for those mega awesome services like Dropbox. Average Joes like you and me with a bit of knowledge can use AWS to host one or two or even more servers quite efficiently too. Heck, AWS is one of the very few services that lets you spring up hundreds of thousands servers, use them for a few hours, then shut them down. Without spending tens of thousands of dollars, of course. Sounds awesome, isn’t?
There are a lot of use cases for Amazon Web Services. Do you want to host a small blog or personal site? Sure. Do you want to host a backend for an iPhone application? You can build a cluster of servers within minutes. Do you want to have your own virtual data center all using Amazon AWS? You bet!
You see, all of this is possible without paying loads of upfront investment, nor being tied into long-term contract. You only have to use the power you need, and when you don’t, you are not going to pay for it. That’s basically the essence of cloud hosting. Gone are the days hosting infrastructure being an overhead. Now it’s a variable cost. Not fixed one.
So let’s see why we really love Amazon AWS. Some of us here love AWS, and although this site is not hosted on AWS, one of our team members is hosting a large eCommerce site on AWS with high-availability setup.
Pay As You Go
Hosting and infrastructure cost used to be classified as fixed costs because you will have to pay a fixed amount of money for the computing power you want, even if you are not using it to full power a lot of times. Amazon took a different and refreshing approach. Rather than paying for everything, you pay with “a la carte” approach. Basically, you only pay for what you use. Getting traffic burst? Then pay for that bandwidth. Getting a lot of processing power demands from your site? Scale up your servers for awhile, then scale down when you don’t need them.
This approach is totally awesome since traditionally, the hardware we pay for will go unutilized for like 80% of its whole lifetime. But hey we are paying for the whole thing. Let’s say we pay for a server with quad-core CPU 3.6GHz and 8GB RAM. Let’s assume we are paying $200 a month for that. Are we really using full power of that beast? Nope, not likely. Most of the times, we are using 10% to 20%. Sometimes, when we have high traffic or high demand for a short period of time, then maybe the server will see 60% of utilization. See where we are going with this?
But with AWS, during low times, you aren’t going to pay that much. And even at peak times, AWS only charges hourly so you aren’t going to pay hundreds of dollars all the time.
There Is Something As Free Lunch
One main reason why people are a bit reluctant to use AWS is because of intimidation. Setting up virtual cloud VPS servers and all that? Definitely not your run of the mill traditional hosted solution. Plus, managing servers on Amazon AWS can be a bit different. The whole command line and setting up stuffs on each server is still quite the same. But the ability to bring servers online and offline very quickly, and as much as you want, and managing them are different from what most people might be used to.
So if you want to test the water with AWS, you can use AWS free tier. It comes with enough credit to run an EC2 micro instance for one whole year, S3 storage, ELB and a lot of other services. The free tier lets you try out their API, and infrastructure, so that you will see if they are of good fit to you.
AWS performance is just spectacular. What? You can’t expect anything less from an infrastructure powering half the Internet! EC2 Compute Units will give you Xeon-class processing performance on an hourly rate, not thousands of dollars upfront and hundreds of dollars fixed every month. The reliability and redundancy are a lot better than most data centers on our planet. Heck, you can even immediately bring more servers online, automatically configure them and add to your cluster if necessary. And put them offline after a few hours of usage. No other traditional data centers can provide similar service.
Plus, AWS is a true cloud-hosted environment. There is enough separation between processing, storage and all others that your sites will remain online even when there is outage at one part. Downtimes are unheard of unless there is human error. In fact, we have never had a problem using AWS.
The storage performance of AWS is really awesome too. The EBS and S3 are distributed across thousands of devices, and that very nature yields millions of IO operations for all instances. With this, you now have a storage system at your fingertip that can scale vastly, and reliable up to the point of 99.9999999999%.
Sysadmins who have worked with traditional dedicated servers will know this very well. Whenever you want to have a server up online, it will take at least 24 hours if they have a server available. If not, it will be anywhere from 48-96 hours to just provision a server. Then you are going to spend a few more to install, configure and tweak everything you need. Then you gotta have to test them.
So what about with Amazon Web Services? You can literally deploy hundreds of servers in a matter of few minutes. You can use Amazon Machine Images, which will be used to install and setup everything you have configured on a new server within minutes. Or you can use other automation tools such as RightScale to do that too. Now, whenever there is a traffic burst, you don’t have to worry about not having enough server capacity to handle that extra demands. You don’t even have to anticipate and buy servers in advance. All can be done in a few minutes.
Flexibility is like the key word in AWS. You can do what you want with your servers and other facilities on AWS. Plus, all of those services work flawlessly and communicate together with your web application to know the processing power demand, and it can handle accordingly. That’s just golden!
Plus, the API and Amazon Machine Images, you now have a completely customized solution that caters to your every needs in just a few minutes. You can bring up servers within minutes, and shut them down when you don’t need. All of that for just a few cents per hour. Now how is that for flexibility?