So EC2 has a role especially if the software you want to use runs on Linux. You can scale quickly and coordinate activity between a farm of machines using SQS. But if your software doesn’t run on Linux you’re stuffed.
The principle of EC2 is great because you pay for what you need. Need an extra server for three hours or a 100 for a week? Its great but only if its Linux. So it was great to come across a service by GoGrid that offers essentially the same ability to pay for machines by the hour. The benefit, from my perspective, is that the GoGrid service also supports Windows. That is, you can fire up an instance of Windows 2003 use it for an hour or several hours or a day or a year and you only pay for what you use.
What’s intriguing is the GoGrid pricing model. They charge $0.19 per hour per GB RAM used. This means two servers, each with 512MB RAM can be started. Not much you might say. But web servers aren’t typically memory hungry. However each server is given a 3.0GHz Xeon processor so they are able to generate pages quickly. The basic account can use upto 4GB. The 4GB can be allocated to 1 machine or it can be shared between 8 instances.
I like this. It means we can run a web server with 512MB RAM and start demo machines when we need them. If we need to we can allocate 2GB to the demo machine and create a separate database server to ensure prospects see the software at its best. GoGrid!
Here’s my summary of the of the strengths and weaknesses.
Pay by the hour;
Rich control options;
Programmatic control of instances;
coordinate instances using SQS;
|Windows and Linux;
3.0GHz Xeon processor;
Discounts for bulk purchases;
Per GB RAM pricing;
Web farm can be hardware load balanced;
8, free, static IP addresses;
Basic machine unit only 1GHz Xeon equivalent;
No option bulk purchase to obtain discount;
Only 5 static IP addresses;
Have to pay for each one when not in use;
|Can’t create custom images (*);
Can’t control instance programmatically (*);
Charged even if a machine is stopped;
Can’t save images (*);
Update (May 11th): The guys at GoGrid saw this post and let me know their weaknesses I’ve marked with (*) are being resolved. I look forward to being able to create custom images and save snapshots as these will provide fantastic flexibility in a Windows environment. I’ll update the blog when these features are available.
The remaining weakness (being charged for a server that’s not running) remains a weakness for me because any servers I may want to run must be configured whether used or not. On the other hand the reason for this is that memory is reserved whether a server is actually running or not and I like that their pricing model is based on memory use so maybe I can’t have it both ways. Perhaps the ability to create custom images will resolve my concern in this area too and look forward to finding out.