views:

47

answers:

2

I'm going to sign-up for a dedicated virtual machine from a renowned MS-centric web hosting company. The virtual machine has 1CPU and 1GB of RAM. I'll be running an ASP.NET website on it - the website is pretty simple (a few tables on the back-end DB) but must be as fast as possible.

For the DB I have two options: 1) Install SQL Server Express on my own virtual machine. The space/ram limitations of this editions are not a problem, because the DB does not stores files and binary data, and thus will remain pretty small. 2) Use the hosting company's shared SQL Server Standard instance, which is in theory installed on a powerful machine.

Which is the best best option? I'd go with (1), but I'm afraid running the web server (iis/asp.net) and SQL Server on the same machine will slow down performances. Thoughts?

+1  A: 

If you want to optimize for performance and you haven't very much data, then you should use the shared database and cache your data on the client-side. This is somewhat more complicated and there is a small danger of data-loss (e.g. in case of a power failure), but it's definitely the fastest possible solution.

Thomas Weller
+1  A: 

running the web server (iis/asp.net) and SQL Server on the same machine will slow down performances

It will do this, but if the VM is running at less than 100% capacity it will have no net effect. In IT with choices like this there is a very simple guideline: Keep It Simple. Which is going to be simpler for you to manage (including updates and backups)?

Richard