views:

63

answers:

3

Hello again!

I'm on VPS hosting with dreamhost and am experiencing very high page load times. Here is the output from Devel module for mysql queries.

Executed 190 queries in 227.67 milliseconds. Page execution time was 21969.43 ms. 

Using the module profiling at http://2bits.com/articles/measuring-memory-consumption-by-drupal-bootstrap-and-modules.html it seems ok:

total: 304.15

So if the modules are taking 304ms and the mysql is taking 227ms, where could the other 21 seconds be going?!

Here is the url http://5oup.net

As always any help very much appreciated!

James

+1  A: 

You are not compressing your JavaScript of CCS files, it shouldn't be the cause to such a slow page load. It seems that you have your site setup for development mode, which is quite ineffective for a production site.

I tried browsing around, and I didn't find any page that was as slow as you describe. But the point above is a major point for performance improvement.

googletorp
Thanks googletorp, I will get that sorted out. Strange that you were unable to see a slow load - The home page never seems to come in under 20s for me. Perhaps it could be location based? I'm in the UK, dreamhost servers are of course US.
James Chambers
+1  A: 

Some ad hoc testing on the home page gives me about 8-12 seconds per request (forced reload to exclude local caching). According to firebug, the biggest waits are due to loading all the images for the rotation, closely followed by the separate and uncompressed css and js files.

With local caching, this goes down to 1-4 seconds, with most of the time being spent on waiting for the server to actually respond with a '304 - not modified' for all the files involved.

So your first goal should be reduction of the number of separate files:

  • For the js and css files, combining them into single files and turning on compression should already help quite a lot - check your site settings under admin/settings/performance.
  • For the rotation images, this would require more work, as you would either have to combine them into a sprite or add the logic to only load one with the page itself and pull the additional ones later on via js.

You should try the css/js combination first and see if you really need more tweaking after that.

Henrik Opel
Hi Henrik, thanks very much for your answer, it really is a great help. As i mentioned below I found a function which was being very greedy, hopefully fixing this in combination with compressing js and css and a better image rotator will sort things out.
James Chambers
A: 

I found the very high page load on the home page was down to simplexml_load_file(), which for some reason was not enabled on my host.

James Chambers

related questions