Re: [PATCH] gitweb: Support caching projects list
- From
Frank Lichtenheld <frank@lichtenheld.de>
- Date
- Mar 16, 2008, 11:41 UTC
- Message-ID
- <20080316114151.GZ10103@mail-vs.djpig.de>
- In-Reply-To
- <m3ve3nwtl3.fsf@localhost.localdomain>
On Sat, Mar 15, 2008 at 02:44:42PM -0700, Jakub Narebski wrote:
> Petr Baudis <pasky@suse.cz> writes: > This could be much simplified with perl-cache (perl-Cache-Cache). > Unfortunately this is non-standard module, not distributed (yet?) > with Perl.
I think somebody who actually needs this can be bothered to install a CPAN perl module. This should probably not enabled by default anyway.
Show 19 quoted lines
> Warning: not tested in gitweb!
>
> + use Cache::FileCache;
> +
> + my $cache;
> + my $projects;
> +
> + if ($cache_lifetime) {
> + $cache = new Cache::FileCache(
> + { namespace => 'gitweb',
> + default_expires_in => $cache_lifetime
> + });
> + $projects = $cache->get('projects_list');
> + }
> + if (!defined $projects) {
> + $projects = [ git_get_projects_details($projlist, $check_forks); ];
> + $cache->set('projects_list', $projects)
> + if defined $cache;
> + }Gruesse,
-- Frank Lichtenheld <frank@lichtenheld.de> www: http://www.djpig.de/