20 July 2006

Virtual Servers and Web App Deployment

I'm getting very interested in server virtualization system, such as Xen.  And, more to the point, using virtual server hosting options, as opposed to either a regular shared host setup, or a fully dedicated machine/colo.  One reason is cost as related to the configuration of your setup (and this assumes you do not need to own the entire machine due to your application's needs).

For example, maybe I have a budget of around $500/month to get a web app going.  Well, that'd buy me a couple dedicated servers (at a say mid-priced place) with probably minimal to "no" support.  Or, it'd buy me somewhere between 8-10 virtual servers on a virtual server system.  The virtual servers are far more RAM constrained (this seems to be the big dividing line).  For example, those 8-10 server instances would have around 192MB of RAM.  This appears to be decent for running a basic Rails stack for example.

But getting back to it, the reason I find this appealing, at least for early deployment, is that it would allow me to mimic a more fully scaled solution simply due to having more "servers."  Instead of having say one web app server and one DB server with the full colo setup, you could have say a half dozen web app servers, a cluster of DB servers, and then maybe another box that you dump backups to, or dump logs to, or whatever.  What it really lets you do though is setup your fully scaled architecture, something like this, this, or this.

It all amounts to being able to test and setup your system in a more real-world scaled design from the get go, instead of having to redo that in the midst of your site being hammered with traffic.

technorati tags:, , , ,