Hello.
I recently contacted my provider to ask why at times, my site is at a crawl - here is their response, is there anyway to achieve what they are saying? Would Drupal be more effective in this manner, than PHPnuke?

Here was my host's response - and i hope you can tell me whether Drupal would be any "better". Thanks in advance.

---

Hi,
 
 There would be little point in moving you to another server. Daffy is very lightly loaded, and the fact that it has mod_ssl compiled into it, is largely irrelevant as it does not actually have any SSL sites on it.
 
 However, as I said to you on the forum, the primary reason for any speed issues is likely to be a result of database queries. Whilst certainly the MySQL server is usually quite busy, it is not slow to the point that it would affect your site normally. The problem is mostly the content management system you are using.
 
 Most content management systems are completely overblown. The one you are currently using, you currently have 91 tables in your database. This is generally unnecessary. I did a trace on the MySQL server, and just going to your front page results in 74 queries to the database server. This will happen every time anyone looks at your page. Clicking on the 'forums' link on the front page generates 43 queries. Browsing the forums results in about 40 queries per page. Even clicking on the FAQ page, which just brings up some FAQ subcategories, results on 29 queries.
 
 The end result of all this is that your site will be basically hammering the database server. We estimate that approximately 80% of the load on our mysql servers comes from content management systems. We are currently considering what to do about this. We are looking to deploy an extra mysql server in the near future, and we will be moving heavy users to this system once we can determine an accurate way of rating the load caused by each customer. This extra server will be a temporary system to keep their databases running while we contact them about reducing their load usage.
 
 I would strongly suggest you move away from content management systems such as phpnuke and postnuke. Ideally, a given page should not generate more than 2 or 3 mysql queries per page, although there are some circumstances when more may be necessary, mostly it comes down to efficient coding and use of queries. Although we will probably not be doing anything so extreme, there are other hosting providers who ban content management systems from their servers due to the load generated.
 
 The situation should alleviate itself soon when we are able to move customers who are overloading the server away from mysql.xcalibre.co.uk, but in the mean time, the server does respond in a good time to individual queries, so if you can reduce the number of queries per page to just 2 or 3, then this will speed up your site substantially. If your site continues to make the level of queries it is currently making, then although it will improve in the near future, we are unable to make your site any faster at the moment.
 
 Regards,

Comments

JonBob’s picture

I just ran a couple tests on a Drupal install on my machine. With nearly every module turned off, the home page makes about 20 queries. With nearly every stock module on, it makes about 100. You can definitely do a lot of tuning by turning off features you don't need.

Drupal's caching mechanism can also help. If turned on, it caches pages requested by anonymous users, so that subsequent page loads soon afterwards only take a couple queries. If your audience is largely casual browsers, this can help a lot.

You're not going to find an off-the-shelf solution that offers anywhere near the kind of performance he mentions. 3 queries! Such a setup certainly can be done, but it can't offer much in customization. For example, a typical page load will require finding out who the current user is and what she's allowed to access, what modules are active, what theme to display, what blocks to display and where, what stories to display on the front page... and probably much more, each of which will take at least a query.

If you need a CMS, you'll have to work the database. If all you need is a blog, use software optimized for that.