We relaunched the TWiki.org project with an expanded TWiki charter, and we invite you to participate! The TWiki.org Code of Conduct agreement took effect on 27 Oct 2008. We ask existing twiki.org users to opt-in. You need to opt-in to participate in the Blog, Codev, Plugins and TWiki webs. -- PeterThoeny - 27 Oct 2008
You are here: TWiki> Support Web>HowtoCacheWebList (02 Jun 2007, PeterThoeny)
Tags:
create new tag
, view all tags

Question

The variable WEBLIST appears on many WebLeftBars.

%WEBLIST%

As the number of webs increases this has an effect on the speed of loading a page.

I compared the loading times of WebHome in 2 webs. One with the WEBLIST variable included in WebLeftBar and one without.

The web without takes an average of 0.8seconds to load, while the other takes an average of 2.0 seconds.

I am considering removing the WEBLIST from all webs but 1st I would like to know if there is a way to cache the WEBLIST (with VarCachePlgin for example)

Environment

TWiki version: TWikiRelease04x01x02
TWiki plugins: DefaultPlugin, EmptyPlugin, InterwikiPlugin
Server OS: RH linux
Web server: Apache
Perl version: 5.8
Client OS: Windows, Linux, Mac
Web Browser: IE, Forefox, Safari
Categories: Performance

-- PeterJones - 10 Apr 2007

Answer

ALERT! If you answer a question - or have a question you asked answered by someone - please remember to edit the page and set the status to answered. The status is in a drop-down list below the edit box.

Wow, that is a big difference in time!

The VarCachePlugin will not work in this case, since it caches variables in the current topic (inluding INCLUDE). If you cache the sidebar it will not be seens as cached if included.

You could have a static weblist and periodically update it. Possibly by including a Main.WebList that is auto-updated by a cron job (e.g. a generated data/Main/WebList.txt file.)

-- PeterThoeny - 10 Apr 2007

I have tested a static weblist and this makes a big difference. Of all the changes made to the TWiki installation including using SpeedyCGI, this has had the most impact. The auto-updated Main.WebList is a good idea. I would recommend anyone managing a site with many webs to look at this.

-- PeterJones - 11 Apr 2007

Just another thought: Are you using hierarchical webs? There is a configuration option EnableHierarchicalWebs which, per default, is true in the distribution. So if you do not use hierarchical webs and do not plan to do so, toggling this option in bin/configure should help. Technical background: With hierarchical webs, to build the %WEBLIST% TWiki has to walk through all the data directories because every entry might be a subweb. If hierarchical webs are not enabled, TWiki just walks through the top level data directory, which usually has only a few entries.

That said, I myself am using a static weblist in my navigation bar as PeterThoeny suggested, simply because I want to group them in a "logical" instead of alphabetical order.

-- HaraldJoerg - 11 Apr 2007

Peter Jones - how many webs do you have?

-- KennethLavrsen - 12 Apr 2007

I have tried to limit the number of webs but I have nonetheless almost 70 at the moment. I have sub-webs enabled and we use them. More and more collaborations are requesting webs and I only make a new one if absolutely necessary.

-- PeterJones - 12 Apr 2007

Peter, please mention your need in TWikiCache. When Micha adds it to TWiki, this will be a simplething smile

-- SvenDowideit - 24 Apr 2007

Closing this after more than 30 days inactivity; re-open if needed...

-- PeterThoeny - 02 Jun 2007

 
Change status to:
Topic revision: r8 - 02 Jun 2007 - 07:53:02 - PeterThoeny
 
TWIKI.NET
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback