I've seen references to slow page serving and slow admin pages. The solutions seem to involve both setting the caching parameters correctly, and getting the hosting service to configure things properly, particularly with the database.

Is it normal for a new site to take 2 or 3 minutes to load every admin page? And to take 30 or 40 seconds to load a simple home page?

If that's not typical, and I've played around with the caching settings, what instructions should I give to my hosting firm to try and improve things? I'm using ANHosting (well, actually MidPhase, since they own ANHosting).

- Mark

Comments

Anonymous’s picture

The solution that works for me is to disable the optional core module "Update status".

This is a work-around rather than a fix.

Regards,

John

markolbert’s picture

Thanks, both of you, for the quick feedback and suggestions. I had turned off script/CSS caching because I was tweaking my site's theme and it was hard to see the effect of changes with those items cached :).

But as soon as I disabled the Update Status module the responsiveness jumped to what I consider "normal" for a website.

- Mark

3dloco’s picture

Thanks! I also turned off update status and the admin pages are no longer slow.

DanielJohnston’s picture

The Update Status module attempts to get update information using the internet. Many servers have firewalls that block this - it totally screwed my move to a new server for a day or so until I found out the cause. Better solution is to find the firewall settings and open up the ports you need for the module to work. This varies by server so can't be more specific.

j_denike’s picture

John,

It took just one quick search in drupal's forum and bingo--> your post was the solution! I only had to disable the "update status" module for things to start acting normally, no need to un-install the module itself. I suppose I can always manually check for updates.

I must say that the program is just fantastic and you can tell that it has been thouroughly rehashed over the years to yield such a wonderful CMS. It's the community though, by far, that is the shining star behind the software!

Thanks for your input here John.

Sincerely,

Jeff

~ looking forward to meeting all my new neighbors! ~

Anonymous’s picture

I have found a thread on the Drupal site with patches to enable Drupal to work with proxy server, which allows the update module ( and others) to work normally.

The thread is here http://drupal.org/node/7881

You need to apply the patch specific to your version of Drupal.

I am happily running the 6.10 patch and it works great.

I patched by hand - the changes are obvious from the content of the patch file, but you can use a patching tool to apply the patch.

Regards

John

Ashford’s picture

to enable Drupal to work with proxy server

I'd be ecstatic if the patch would work for our web site. The commercial webhost, ThinkHost.com, blames my ISP. The ISP blames the web host server. Periodically, they both blame Drupal.

What does the term proxy server mean?

jsidigital’s picture

In addition to disabling "update status" we also disabled "Database logging" and that made it even faster.

steveadamo’s picture

Hey Mark,

You mentioned caching (did you set both page and block?), but did you also implement the Bandwidth optimizations? Depending on the number of modules you have installed, they will each call their respective CSS and JS files, regardless if they are in use on the page.

Just a thought. :)

jonr’s picture

Same here...
I've disabled the update status module, I'm not optimizing the CSS and Javascripts, and the site itself runs fine, but the admin pages take forever to load (over 30sek).

Anonymous’s picture

It is work trying to delete the update status module (ok, move it somewhere else until needed).

One of my work colleagues could not even get into the admin interface to disable the update status module.

Moving it out of drupal did the trick and admin worked as expected.

Sorry, don't have time to debug firewall / proxy settings

The update status module should be turned off by default, in my opinion because of the trouble it causes.

sgprs’s picture

Just wanted to add my two cents. Yeah, the update module definitely needs some work. I think it should still be turned on by default, as it is now. Most people aren't Drupal pros, and wouldn't know to check for updates manually. Updating the core is SO important. Seriously, a lot of people neglect to update the core... then they start having problems or someone gets in and throws everything for a loop... then they want to blame drupal. No, leave it on by default. BUT... I think there should be a note under the update module in admin>modules that informs users that "Update could cause some issues or conflicts with modules or server settings. If problems are encountered, you may need to disable the module. Be sure to check regularly for updates"... or something like that.

I went through one very frustrating day after I installed Image API, Image Cache, Guestbook, Acidfree, Simpleviews, and a few others. I started getting timeouts, errors, 500's, MySQL Has Gone Away, etc. I first thought it was one of the modules, so I removed each via ftp... nothing happened... still had errors. Now I was seeing errors with Notifications, which was also updated the same time. I checked everything: My host (InMotion) is awesome and totally up to date with everything, so I knew it wasn't them. I also knew that my php memory was set at 128M, which should be more than enough to do just about anything I'd want.

To make it short, I deleted update via ftp, and BAM... back to normal. Just to double check, I dropped the module back into Drupal, and got same errors. I changed some things here and there and got it all working again. But update was definitely the culprit. Oh yeah... although I didn't see any problem with my main page's loading time, my admin DOES take forever when update is enabled.

One more thing: Just a side note, but if you have a lot of modules running, your admin will be somewhat slow loading, but not 30 or 40 secs. I have over 100 modules installed; with update enabled (with performance enabled), it takes about 9-10 secs... without update: instantly.

To all: If you need to disable or remove update, MAKE SURE you stay up to date yourself. This is VERY important.

Chris
www.theparanormalsociety.org

zoo’s picture

Well, lucky you.

Here on Wampserver (locally), Drupal takes 25-30 seconds to load the admin modules page, and not only that page since the same happens with others like update, cron, status reports (the machine and OS are ok - winXP/sp3).

Disabling update module doesn't improve performances significantly.
Tried Xampp server too, experiencing the same exactly alike slowdowns.
Installed other cms softwares as WP, and they run without delays when updating/administering.
Once uploaded on the remote server, Drupal admin pages load good. But locally they don't.

Found no solutions yet...

Zoo

mattyoung’s picture

Same for me. On my local xampp setup, regular page are very slow, but extra slow for /admin, /admin/build/modules.

I notice it seems FF is much slower than Chrome and Opera. Safari and IE8 have another problem: login doesn't work from local drupal site because no cookie is stored.

LJEsposito’s picture

Fresh local install of drupal 6.12 on WAMP server running under Vista...

Same issue here with slow administrator page - actually mine goes 30 secs and then renders a blank page apparently not completing it's request within some time limit. The Admin/settings take 15 secs but ultimately do load. Fortunately, that administrator link is simply a list of other links which I can get to directly but I will monitor this thread (and check for others) that might provide a solution.

Thanks,
Larry Esposito

LJEsposito’s picture

While my admin is still slow I did find another post by judef that recommended upping the php.ini max_execution_time setting to avoid the time-out leading to my blank admin screen. Sure enough, mine was set at 30, the timeout I noted in my original post, and when I upped it to 60 and then refreshed my WAMP server the Admin screen came up after about 50 seconds.

There was a warning on the screen which suggested I check the Status Report which revealed the following error:
HTTP request status Fails
Your system or network configuration does not allow Drupal to access web pages, resulting in reduced functionality. This could be due to your webserver configuration or PHP settings, and should be resolved in order to download information about available updates, fetch aggregator feeds, sign in via OpenID, or use other network-dependent services.

So it is obviously a local setting that is blocking HTTP requests which I'll try to track down (although this is not critical for me at this time).

Thanks,
Larry Esposito

astra.satya’s picture

I got the same problem "Admin pages were slow" and same solution "Disable Update Status".

Thank you for the useful posting.

steve9x’s picture

Glad to see I was not the only one with this problem! I was wondering why it was taking so long to load the admin pages... Drupal is supposed to help speed up website creation. Slowing it down that much was really bothering me.

In my opinion the update module SHOULD be disabled by default. The update module in my opinion is not made correctly. Since every time you load any page it slows things down tremendously, that must mean the update module checks for updates every time you load a page? If that's the case and I think it is, its completely ridiculous and unnecessary! Like drupal updates are released that fast(ya right), that between the time you load 1 page, and the next, and update will be released...

Imagine all the drupal sites out there with the module enabled, tons of sites are connecting here to check for updates. You should not bottleneck a website by checking for updates constantly.

I propose two solutions...

A. Change the update module so that it only checks for updates every so often, like every 24 hours. So you/someone will get 1 slow page load every 24 hours, instead of all the time.

B. Not even have a module, and instead make it part of the administration part of drupal. A check for updates button instead so you can manually get it to check for updates and not even have any automatic update checker.

Updates are important, but the average amount of time between updates should be taken into consideration. Uselessly checking for updates does nothing but slow you down, when there are no updates.

Lets also not forget human beings aren't perfect. There could possibly be a mistake/bug in the new code which wasn't there previously, so if your site is updating automatically without even letting you know it updated, your site might break, and you wont have any idea why.

VM’s picture

when installing drupal you have the abillity to turn update status off right from the first few administration pages. I don't believe it should be disabled by default as that method assumes update status "shoudn't work" out of the box. It's more a host situation I believe.

connellc’s picture

On D7 there is a module called update manager, and it can give you a choice to check every day or to check every week.

In my experience, checking every two weeks is optimal, because - frankly - the modules I really I want to see updates on.... take freaking forever to get updated - because they have no maintainers or the existing maintainers.. who knows?..... it causes me to want to learn some serious programming (and I don't have the patience for coding) - and the D7 modules I don't really care about are maintained better.

When one has Drupal 7, one has to live and let live... it's the Drupal 6 modules that are maintained better anyways. I tell myself: "someday they'll get 'round to making that module I really want for D7."

I get the gist of what

Only then there will be peace, no wars, and the words "Brooklyn Bridge" won't be part of some joke.

{sigh}...I just turn drush off and check every two weeks with it on.

ExTexan’s picture

Ok, so I get why Update Status slows down some admin pages (modules page, status report, etc.), but I was experiencing slow loads (locally) just on admin menus. Two examples:

Administer - 35 seconds
Content Management - 17 seconds

These times were consistent. After I disabled Update Status, they both loaded in about 2 seconds. I realize those links actually show pages of admin options (which are also menu items), but they don't show ANY version or status information, so I don't understand why Update Status would make them so slow. Can anyone explain it?

It's never too late to have a happy childhood. ;-)

espirates’s picture

I did a recent experiment with the modules pages, loaded 100+ modules, checked module page load then removed most of the modules and checked again.

It would appear that having many modules in the module folder does in fact slow the module page down to a crawl taking 30-40+ seconds or more to load. Drupal seems to use up resources just to scan every module even though none of them are enabled.

5 seconds (no modules) 30-40+ seconds ( 25+ modules) and longer if you have 50 or more modules.

With wordpress plugins, never had any slow plugin pages, the number of plugins were irrelevant but not with drupal.

ExTexan’s picture

@espirites, that makes perfect sense - when loading the modules page. But I still don't understand why I was experiencing the slow-down just viewing other admin pages (read prev post above). Any thoughts?

It's never too late to have a happy childhood. ;-)

espirates’s picture

Have you tried pressflow ? https://launchpad.net/pressflow

It's an optimized version of drupal, i just found it recently and started to test it out.

mrgoltra’s picture

+

drupert55’s picture

Subscribing

sekhar.anup’s picture

Though I have disabled the update_status module, there is no improvement. Two other same drupal websites - total three (prod, staging & development) are hosted in the same server. prod & stag are working fine. Though all the three are identical, dev site is very slow.

I tried the following things, but could not get a fix:

1. disabled update_status module
2. checked the following two settings in conf file:
a. query_cache_type=1
b. query_cache_size=16M
3. installed boost, block cache, query cache and memcache modules
4. ran cron manually.
5. disabled devel modules

Can some one please give your suggestions?

- Sekhar.

zoo’s picture

Hello sekhar.anup,

tried also setting "realpath_cache_size=24M" (which is greater than the default 1M, I think) in php.ini?

Anyway I must say I experience the same slowdowns locally (wampserver) as yours.

And for the records, I found no solutions in months yet.

Hope you will! Bye

(PS: here is another thread you may want to dig into: http://drupal.org/node/348202)

zoo

Benj’s picture

+

sekhar.anup’s picture

It was a problem with the Server's performance. The four key elements that will affect the performance of a server are:

1) Disk space
2) Memory,
3) CPU,
4) Network

Also check the value for - PHP_FCGI_CHILDREN. It should be relative and appropriate to the server's usage.

And finally, restarting the spawn-fcgi server fixed the issue.

Thanks,
Sekhar A Kirthi.

lelizondo’s picture

This is whay I do, as a workaround for the problem, I'm stuck with this until a better solution is found. Once a week, I run the following commands to update.

drush en -y update
drush up
drush dis -y update

This will enable the update module as required by drush, then it will look for any updates and ask the user to update if it finds any update. Finally, it will disable the module again.

*This is not ideal*, it works, but is not ideal. If anyone finds a better solution for this I'll appreciate it. Using the proxy patch didn't work for me and the update usually takes about 45 minutes in one of my sites. Is totally insane.

Luis

bartl’s picture

If "update" is to blame, why doesn't only try to download update status by default only from cron.php?

The ordinary user, or even the admin, should not experience slowness accessing the "admin" top level menu, which took several minutes here in 2 of my sites (Drupal 6).

Of course, a manual update check should still be possible.

lelizondo’s picture

I think the problem is that when you visit the main admin page, Drupal runs cron.php for you.

I don't really know, it's just a thought of what could be happening

Luis

mark_schaal’s picture

If you are running your environment on an AWS VPC or EC2, you will also need to check your security group configuration settings. If you port :80 access is restricted to a specific internal network IP, then after installation and any time cron runs, the update script cannot access the outside web and will return the HTTP Access Error. A remedy I have found for this is to assign the server's Elastic IP to the port :80 security group as well. An example would be as follows:

  • Current Internal Network IP: 10.1.2.3/10
  • Current AWS Elastic IP: 123.2.2.3
  • Current TCP :80 Restriction: 10.1.2.3/10
  • Additional TCP :80 Access: 123.2.2.3/31
  • Additional TCP :80 Access: 123.2.2.3/32

It is important to note that the trailing /31 and /32 are settings required by AWS.

Save the security group, run a drush cron and see if your error report clears out!