Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

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 know this question has been asked a thousand times and I've read through a bunch of the answers, but haven't found one that really helped me.

I've used top and I'm not swapping at all, I've got about 500 MB of free RAM (each Apache process is consuming about 80MB), the CPU load is essentially non-existent... I've set MySQL's slow query log to contain any query taking more than 1 second and it's empty.

I was running a bunch of Drupal sites on my old linux box. I decided to upgrade the machine because I was going to run a Groupon deal and I wanted to make sure I could handle the load spikes. I wasn't experiencing any slowness on my server with the current traffic, but I didn't want to slashdot myself with a Groupon. The new machine has 4 GB of RAM compared to 1 GB on the old machine. It's got a much faster processor, but I don't have the specs on the new vs old on hand.

I've been experiencing HORRIBLE bouts of slowness on the new server, but my ISP refuses to consider the possibility that it's the server or the configuration on the server. They just keep blaming "my software" (even though it's Drupal's software and Drupal is wicked fast).

When I say horrible, I mean about 30% of the time it takes more than 3 minutes to load a single page with barely any content. I turned on profiling inside Drupal and from Drupal's perspective, the entire page transaction takes less than 500ms on the high end (usually closer to 300ms) and MySQL queries take a total of about 30ms.

Whenever I'm browsing to my own site and I get a patch of really REALLY slow requests, I check my connection with pings and traceroutes to other websites and I don't find myself dropping packets. During one of the slow downs I was even able to login to my ISP's admin panel and write an entire Trouble Ticket before the page finally loaded.

Can you give me any suggestions for where I can look for the problem? How can I narrow the field to find where the problem exists?

My code didn't change from the old server to the new server. The only variables are the hardware and and the server configuration, so I feel like the problem has to be in the server configuration.

Here is an example URL on my site:

I tried running a ping to my site, to see if my home FiOS connection was causing me to drop packets and interfere with the connections, but in 1000+ pings I didn't drop a single one. However, during those 1000 pings, I experienced several page loads which took more than 6 MINUTES. The browser spins in the "connecting" state, as opposed to the "connected and downloading resources" state.

--- ping statistics ---
1010 packets transmitted, 1010 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 80.661/83.935/222.001/8.891 ms
share|improve this question
LOL, Drupal is wicked fast do you do stand up? I don't have any idea why you are taking 3 minutes, but Drupal is painfully slow when compared to static html. – Zoredache Apr 13 '13 at 1:00
Btw, install a PHP profile/debugger xdebug. that should almost certainly give you a good ideal of what the problem is. – Zoredache Apr 13 '13 at 1:02
I wonder if the problem may be "MTU" related. I've seen this kind of behaviour when the MTU is set too high, and nothing is doing MTU clamping. A quick check for this would be to set a lower MTU for the box (which is less efficient), see if that fixes the problem, and if so either use IPTables to do MTU clamping or find the correct MTU. If your current MTU is > 1500 (jumbo frames), try setting it to 1500. If its at 1500, try setting it to 1476 (to allow for MPLS and other encapsulation that may be happening). – davidgo Apr 13 '13 at 3:30
@Zoredache, yes, I know static html is ridiculously fast, but you've completely missed the point that Drupal does an INCREDIBLE amount of work in less than half a second, but I'm getting 3+ minute load times. – Kenny Wyland Apr 13 '13 at 3:31
what kernel version are you using? uname -r – cybernard Apr 14 '13 at 16:52

You must log in to answer this question.

Browse other questions tagged .