So I have a site that is developed in ASP.NET MVC2. I use a local instance of SQL Server 2008 R2 to test with, and that's where all my tables/stored procs/etc. are.

Now, I want find a web server for the site and make it available to the public, and still use SQL Server as the back-end so I can just like, copy my settings over and not have to change anything.

Someone brought up Amazon EC2 to me. They said I can serve my site there, and have it work exactly the same (run on a Windows Server and use a SQL Server back-end). I have NO IDEA how to go about this. I've read through http://aws.amazon.com/ec2/ and it just confuses the hell out of me. I've never done something like this before.

All of the different plans confuse me. Do they include data storage? Why do they say something like

160 GB of local instance storage

when talking about one of their Standard Instance plans, but then at the bottom, Data Storage prices are talked about separately? Would I have to change anything about the way my application sends/receives data from SQL Server in order to have it up and running to the public using Amazons service?

Also, do I just like...copy all of my code over to Windows Server, set it up in IIS, copy my database into their SQL Server instance, and it's good to go?

I'm just really really confused, and I hope someone hear can shed some light on everything for me.

  • I'm putting a comment rather than the answer because what you really need is a good step by step guide. However on the storage point: I think the storage you're seeing is Elastic Block Storage which is separate storage which you can optionally request. If the 160Gb you get is fine then you won't need it. EC2 is good for pay as you go hosting. If this is going to be running all the time it may be cheaper to look for hosting providers who give you virtual machines to use. Commented Apr 14, 2011 at 8:49

2 Answers 2


You could consider using Microsoft's Window Azure cloud platform instead of Amazon's cloud as there is good in-built support for the technologies you have mentioned.

To start experimenting with Azure, you can try it out with a free Windows Azure Platform 30 Day Pass & see if it fits your requirements.

  • 1
    This question gives a good overview of the difference between the two: stackoverflow.com/questions/4284830/… Commented Apr 14, 2011 at 8:38
  • I haven't checked out Windows Azure. I'll give that a look. They also probably have better support ;)
    – slandau
    Commented Apr 14, 2011 at 13:08
  • Have you deployed anything on Azure before? It seems pretty easy for just the web solution, however, if I do get my database deployed on their as well, would I need to change the connection strings or anything in the web.config or would all that stay the same?
    – slandau
    Commented Apr 14, 2011 at 14:10
  • The ASP.NET application can be deployed through Visual Studio. Yes, you would need to deploy your database to SQL Azure & then use SQL Azure connection string in your web.config to make your app work from the cloud.
    – mvark
    Commented Apr 15, 2011 at 14:34

If you are just getting your site off the ground, and the load is sufficiently low that it doesn't need to be powered by more than one machine, I'd avoid EC2/AWS like the plague - it's EXTREMELY expensive, and much more complex to set up that just renting a single virtual server from a web hosting company.

I run my hosting on a VPS with GoDaddy (I'm not affiliated with them at all, just a reasonably happy customer), and you can get a machine with a decent amount of traffic bandwidth for < $50 per month. Have a search for 'virtual private server' and you'll find other providers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.