I appreciate that the defaults are the way they are for a reason, but in my case I set session handling to "none" and page generation time went from 20 to 40 seconds to 2.
I suggest getting your database server tuned, because if those session queries are taking 20 to 40 seconds, you have other issues to worry about...
I think sometimes it is too easy to solve a problem by saying the host is the problem.
I don't. The simple point, is that it comes down to configuration. I know of SEVERAL sites, running on custom tuned boxes, which do incredable traffic with little load. What that tells me, is that it's server side, not Joomla side (since the common denominator between slow host and fast host is Joomla).
I have no doubt there are lots of bad hosts out there making joomla installs run slow, but the host i am with is a great host. They don't have accounts on individual servers, but rather have all accounts running off a web cluster using a RAID5.
Cluster + Raid5 does NOT == good UNLESS setup properly. You can have all the hardware in the world, and if it's not setup will, it will NEVER perform decently
OK, so that's shared hosting but I do web development for them and know that their system usually runs under 5% load. Running on the cluster means nobody is sharing one box with a pig of a site while others are lucky to be on another box that has no big sites and therefore running faster.
Not really true. With a cluster, other variables come into play. Things like network latency and disk seek time, which used to play a small part, now are huge concerns. Setting up a cluster is NOT trivial..
On top of the above, my host has moved sql off of localhost to a dedicated box (there are actually three sql servers we can choose from). I have other php run sites running off of huge SQL databases and they serve things up quick like a bunny.
Serving data from a database is not trivial either. MySQL has MANY tuning parameters, and needs to be configured for the application it's using. To say it runs great with the program, and not another isn't giving MySQL its fair due...
Don't get me wrong, I think Joomla is great and I make all my clients' sites in Joomla. I recommend Joomla all over the place when talking web stuff and pitching sites to businesses and friends alike. I also don't want to come across as ungrateful to all the devs and team members developing the core of Joomla. Those guys and gals are putting a lot of hours into something that is giving tons of people enjoyment as a hobby and in many cases spare or main income to live on.
But, most of us need help configuring Joomla to run on non-Utopic server set-ups and if our requests for help are just met with an ultimate list of what we should have an important opportunity to discover how Joomla can be sped up on both imperfect and perfect hosts might be missed.
The point here, is that performance is a one off thing. There is no "recipy" for a fast website. It's something that needs to be tuned and optimized for each site. The reason I (personally) won't support shared servers is simple... Performance is a tradeoff... And I'll give you the perfect example. .htaccess files. For a shared environment, they are great!!! But they come at a HUGE performance penalty (it's an extra disk seek for every single directory in the tree)...
Anthony Ferrara - Core Team - Development Coordinator - Bug Squad - JSSThttp://moovum.com/
- The Bird is in the air! Get Mollom Anti-Spam on your Joomla! website with Moovur... http://www.joomlaperformance.com
For All Your Joomla Performance Needs