4 February 2011 at 12:29am
we have SS running our main website. Looking at Google webmaster tools are page load times are not very good (average 1.4 secs). I've used to YSlow to optimize the pages as best as possible.
Is there anything I can do to speed this up.? I *had* a lot of pages on the site, and just recently deleted many many pages. However I notice that SS still keeps this around in the database as you can view deleted files in the admin area.
Would removing/deleting these pages from the DB speed up the queries and hence page load time?
It takes about 350 ms before we start to get a response from the server (a quad core dedicated box, with nothing else running on it).
4 February 2011 at 12:56am
The first thing I would do is grab the site onto my local machine, and profile it uses XDebug or XHProf or similar, try to get an idea of where a bottleneck could be. Sometimes some methods aren't cached properly, or are called a lot and can cause massive slowdowns, and can be easy fixes. If you want to run a profile on your server you can use ?debug_profile=1 (logged in as an admin or in dev mode).
The biggest performance win you can do is statically cache your site using the static publisher, which saves either your whole or parts of your site to plain files. Obviously, this makes your site incredibly fast. If your site is too dynamic to make that an option I would recommend identifying bottlenecks, fixing them, and using partial caching wherever you can to cache intensive parts of the page (http://doc.silverstripe.org/sapphire/en/reference/partial-caching).
4 February 2011 at 3:21pm
As ajshort mentioned - using the built in debug_profile=1 is a great quick way of seeing the bottle necks. It's not as accurate as xdebug or xhprof but for a quick check it can lead you into the easy wins.
Ajshort - what do you prefer using for profiling xdebug or xhprof. I personally have used xhprof more but was thinking about setting up xdebug.