Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I develop websites on a freelance basis, and I got some knowledge of hosting websites in Linux. Currently I have a reseller package, but I would like to take a VPS instead, so I can manage everything myself.

My question is however, how much ram should my VPS have?

I host about 20 - 30 sites, with an average visitor count of 6000 per month. (Worst case scenario).

I hope you can help me.

share|improve this question
1  
What kind of sites? (Wordpress, Drupal,Rails, static, etc.) –  zaub3r3r Jan 6 '11 at 22:37
    
PHP - MySQL, not big websites, with a custom framework I wrote mysql. About 20 pages tops, with nothing but SELECT queries. And a home made Content Management System, but my customers will use it like once a week, tops. –  Machiel Jan 6 '11 at 22:52

4 Answers 4

up vote 0 down vote accepted

One of the great benefits of virtual servers - is that they're virtual. Meaning you can easily scale up memory as and when needed. Try and go for a provider that allows you to do this, that way you can start with a smaller VM and scale up once you find you need more memory.

If the provider you choose doesn't allow you to scale up on the fly try and make sure your server is as easy to rebuild as possible (I'd recommend using a configuration management tool such as puppet) and that your applications are easy to deploy so moving providers or packages is minimal hassle.

Once you purchase a VM install a performance monitoring solution that will allow you to see your resource usage and history so you can plan for the future. Certain providers will do this for you (one of my favorites is Linode) for those that don't theres solutions such as Cacti, Collectd, Munin, Ganglia etc

Its hard to give you an exact figure as all sites perform differently and you didn't mention in your original post what sort of sites you're running and the content they're serving. I'd say a general good starting figure would be 512MB however.

share|improve this answer

It depends on your application and what you're doing with it. Serving nothing but static content can be done with not much memory at all, but throwing a MySQL instance or two in there changes the arithmetic dramatically. Your best bet is to profile your usage as you have it now, add some for performance, try it, then tune your RAM requirements with your VPS vendor.

share|improve this answer
    
The point is that I don't really have a way to monitor my usage at the moment. Most of my websites use a MySQL database, and an OO PHP framework that I wrote myself, which doesn't use much memory. The sites are not that big either, no fancy registration or use content on the sites. –  Machiel Jan 6 '11 at 22:51

As a general rule (and particularly if you do not plan to tweak your MySQL and Apache configurations) you need about 512 MB of RAM to comfortably host LAMP applications and still have plenty of memory left over for administrative tasks while your server is up and serving requests.

If you do plan to spend time configuring daemons on your VPS for a low-memory environment, you can get away with far less memory - this LowEndBox 64 MB Memory Footprint setup explains some of the "sacrifices" which can be made to get a working LAMP-like server out of a cheap VPS.

share|improve this answer

512 mb ram, 1 or 2 cpu(cores), 10GB+ will do just fine from what you describe.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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