# Ubuntu webserver - performance on 512Mb ram?

I'm looking at deploying a new commercial web service I've developed, but I'm unsure as to the market potential as yet so I don't wish to purchase a heavyweight server immediately. An ISP who i've dealt with before and I'm pretty happy with are offering economy servers with the following spec for a good price (around $65 pm) Ubuntu 8.1 1.8GHz 2Mb Core 2 Duo 512Mb RAM 80Gb HD If all I'm running on this server is Apache, PHP and MySQL with a well designed, initially small, database for a single domain only will this level of hardware be sufficient to give me reasonable headroom? ADDED: Bandwidth is 'unlimited' and I've a couple of other dedicated servers for clients there who've I've not had an issue with under this formula so I don't think that's a concern. I also have shared backup space on the ISP I can use so that's at a reasonable level too for the moment. ## 4 Answers Think it's just enough for a starter site assuming that you know how to tune Apache/PHP/MySQL. It's a good approach to start small. Don't blow your budget unless you're sure that the traffic and I/O is needed.$65/month isn't too shabby but I'm assuming its a full blown server (not shared).

I'd be concerned about the bandwidth more than the actual machine at this point. 256-512k up/down? Caps? Those would be more pressing issues as bandwidth can be eaten up faster while the hardware can withstand some extra workload. I'd also ask if the ISP does on site daily backups. It doesn't appear that your system uses RAID so I'd be a little concerned about some level of data protection/backup/etc. etc.

I'd say you're okay at this point on the machine. Processor doesn't really matter too much until the workload increases substantially, but it's memory/storage that take the brunt of that work first. I'm also assuming if you need more RAM, they'll add additional DIMMs (at a +$/mo. of course) or storage, etc. etc. It's a good idea to start off being hosted as for$65/mo. you've eliminated a lot of the system level headaches and when starting your new business, you need to focus on business, not the technical minutia.

• Bandwidth isn't a problem - advertised as unlimited and I've had no issues with the other couple of dedicates I have there on this formula. And agree about the processor - it's simply the ram thats bothering me – Cruachan Jul 29 '09 at 14:44
• Yeah, unless you're running KDE/Gnome/whatever window manager, 512MB is really a good starting point. Like Bart said, keep an eye on the performance and monitor it frequently (daily?) and make sure that there is adequate resources available for your service. – osij2is Jul 29 '09 at 15:16
• You might want to install Nagios to monitor it. Yes, there would be some overhead to running it on the server, but it shouldn't be a big impact (if Nagios is enough to make the box fall over the edge, you already had an issue that needed addressing, which is why you have it on there!) and that way you don't need to babysit the server constantly. – Bart Silverstrim Jul 29 '09 at 16:32

I second osij2is's response-we run a virtual server for serving a number of kids with a bulletin board in-house and the virtual server is set to 512 meg.

The real key is to monitor performance statistics and see how well it performs; after setting it up, monitor your memory and disk usage and if it shows that performance is cramped, then invest in more memory.

You won't know, really, whether this system is "enough" until you try it.

Another consideration is installing Ubuntu without the GUI layer (server install mode) so that you save some disk space and memory; might help give you a little more leeway should you find it to be a little cramped.

Memory is cheap and would probably be the biggest single performance booster to next invest in at the first sign of issues.

Hope that helps!

• Agreed on the monitoring bit. I failed to mention that. Good call, Bart. – osij2is Jul 29 '09 at 15:13

That is very difficult to tell, as it is dependend on way too many variables, namely (among others)

• How many users
• How many hits per day
• How database-heavy is your application (ie. even if well designed, your app might need on small query from the database or a complicated one with a large result set.

I am running a webserver for a small company with a smallish Typo3 CMS installation with a few hundred pages served per day on quite similar hardware, and this works just fine and would scale quite a bit towards more page impressions, but even here I see the hard disk and especially the lack of memory as the primary bottleneck for performance.

I also would advise not to invest too little into this, as a slow reaction speed of your service might convince possible customers it's not worth their money.

So, something that offers more RAM with everything else the same should be preferred.

You have more than enough juice with that configuration. I used to run a heavy download website with only 256MB RAM. All I would recommend in good faith is that you optimize Apache and MySQL in order to get the most for your money.

You should take a look at the http://articles.slicehost.com/, they may not be my provider anymore but their documentation is universal and easy to understand.