Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a website hosted on a VPS (512Mb - minimum guranteed memory, 510Mhz proccessor, Debian 5.0 Lenny, Apache 2.2.9 with nginx 0.7.65 as a frontend to serve static content, MySQL 5.1.44, PHP 5.3.2 with APC caching).

I'm a web developer, so I'm not very good at optimizing servers, but I've managed to install and setup all those neccessary components (LAMP, nginx, etc.). After that I decided to stress test my website (which uses Drupal 6.16 with caching and all possible optimization enabled) using a utility called "Webserver Stress Tool 7". And it seems to me that the results aren't any good - here is a graph (sorry, as a new user I'm not allowed to post images)

As you can see the response time depending on amount of simultaneous users increases very quickly. With 10 simultaneous users the time is about 1000ms, with 100 simultaneous users it's about 15000ms (15s!).

The question is do you think this is normal behavior for such a server or something is wrong with the settings and optimization? If you think something is wrong what particulary could be wrong? Any other suggestion how to speed this a little bit up?

share|improve this question
What kind of caching have you configured in drupal? – theotherreceive Mar 22 '10 at 22:59
normal mode caching – user38484 Mar 22 '10 at 23:00
up vote 2 down vote accepted

Best place to start would be to install something like munin to graph the resource usage on the system, then you can better estimate how the resources are used.

That said, the drupal default is to use the database as a cache store, you should be able to get better performance allocating some of the cache to files/ram.

share|improve this answer

You should try to measure how time your spending on:

  • generating the page (overall)
  • in SQL queries

To do that, simply logging the start time and end time of different part of your pages to a log file should be enough.

You can also check where is the bottleneck as far as ressources. With "top", you can check:

  • how much swap?
  • % CPU idle?
  • % CPU waiting for I/O

You can get more info with "sar" or "vmstat 2".

share|improve this answer

I think this will be very helpfull

check also the videos! There is a firefox plugin you should check. And you will need some php acelerator like apc (

share|improve this answer

Your Answer


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.