I am currently hosting my SaaS application at GoGrid (Microsoft stack). Here's what I have:
Database Server - physical box, 12 GB RAM, 2 X Quad Core CPU (2.13 GHz Xeon E5506)
2 Web / App servers - cloud servers, 2 GB RAM, 2 VCPUs
300 GB monthly bandwidth
I am paying around $900 / month for this. My web / app servers are busting at the seams and need to be upgraded to 4 GB of RAM. I also need a firewall, and GoGrid just added this service for an additional $200. After the upgrade, I will be paying around $1,400.
I started looking at Amazon EC2, specifically this config:
Database server - "High Memory Double Extra Large Instance" - 34 GB RAM, 13 EC2 compute units
2 Web / App servers - "Large Instance" - 7.5 GB RAM, 4 EC2 compute units
If I go with 1 year reserved instances, my upfront cost would be $4,500 and my monthly would be $700. This comes to $1,075 / month when amortized. Amazon also includes a firewall for free.
Here are my questions:
Do any of you have experience running a database (especially SQL Server) on an EC2 instance? How did it perform compared to a dedicated machine? One of my major concerns is with disk I/O.
Amazon's description of a compute unit is fairly vague. Any ideas on how the CPU performance on the database servers would compare?
I am hoping that the Amazon solution will provide significantly better performance than my current or even improved GoGrid setup. Having a virtual database server would also be nice in terms of availability. Right now I would be in serious trouble if I had any hardware issues.
Thanks for any insight...