Cache optimisation for admin menu

Events happening in the community are now at Drupal community events on www.drupal.org.
steveworley's picture

http://engineering.flitech.net/admin-menu-performance/

Wanted to post this here as Admin Menu is a great module! It allows your to provide quick and easy navigation to the most used parts of your Drupal administration experience. It provides cache clearing and searching and an array of other nice to haves that don't ship with the default Drupal administration menu. However due to the way that the menu needs to be kept up-to-date this module does not scale very well and can be a prime contributor to slow cache rebuilds and memory issues for larger Drupal sites.

Thanks,
Steve

Comments

did you post a patch to the

Andre-B's picture

did you post a patch to the admin_menu module suggesting your cron approach? (make it optional as well, e.g. track the time since last clear and only clear like it's done right now if now > time since last clear + clear interval)

hmm.. interesting. I've had

btopro's picture

hmm.. interesting. I've had to disable the client side caching part because it was invoking double page loads because of some internal modules we run for security. I haven't noticed admin_menu being the hiccup but that'd make sense; agree w/ #1. Can you post a patch / something to the admin_menu queue? I'd really like to do some A/B comparisons but think it would take a lot of others doing the same to get validation on many different configs.

I haven't had a chance to

steveworley's picture

I haven't had a chance to submit a patch to the module queue just yet, I'll get one started so I can get some test coverage from more use cases than the sites I've seen the issues with.

I'll get one ready and suggest it to the module.

Interesting stuff. I agree

tripper54's picture

Interesting stuff. I agree this is probably best discussed in the admin_menu issue queue. But I can't resist:

The problem with this approach is that it breaks cache clears, ie 'drush cc all' with this patch actually means 'drush cc all except admin_menu' . Also changing a menu link would not be reflected in the admin menu until the next cron run. That's OK if you have an environment where you can document this and manage site administrator and developer expectations. More general adoption would break expected behaviour and produce a lot of WTF moments.

It would be interesting to dig a little deeper into why the cache rebuild takes so long. If the time taken does increase exponentially with the number of menus, that sounds a like something's not running right to me.

High performance

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: