From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Fitzsimons Subject: Re: [RFC] gitweb wishlist and TODO list (part 1) Date: Thu, 21 Dec 2006 03:22:16 +0000 Message-ID: <20061221032216.GF17864@localhost> References: <200612170000.06771.jnareb@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: git@vger.kernel.org, Kernel Org Admin , Petr Baudis X-From: git-owner@vger.kernel.org Thu Dec 21 04:22:48 2006 Return-path: Envelope-to: gcvg-git@gmane.org Received: from vger.kernel.org ([209.132.176.167]) by dough.gmane.org with esmtp (Exim 4.50) id 1GxEW5-00059h-Uj for gcvg-git@gmane.org; Thu, 21 Dec 2006 04:22:46 +0100 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1422640AbWLUDWc (ORCPT ); Wed, 20 Dec 2006 22:22:32 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1422648AbWLUDWc (ORCPT ); Wed, 20 Dec 2006 22:22:32 -0500 Received: from igraine.blacknight.ie ([81.17.252.25]:59610 "EHLO igraine.blacknight.ie" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1422640AbWLUDW3 (ORCPT ); Wed, 20 Dec 2006 22:22:29 -0500 Received: from [212.2.178.4] (helo=localhost) by igraine.blacknight.ie with esmtp (Exim 4.60) (envelope-from ) id 1GxEVR-0003SO-U4; Thu, 21 Dec 2006 03:22:06 +0000 To: Jakub Narebski Content-Disposition: inline In-Reply-To: <200612170000.06771.jnareb@gmail.com> User-Agent: Mutt/1.5.13 (2006-08-11) X-blacknight-igraine-MailScanner-Information: Please contact the ISP for more information X-blacknight-igraine-MailScanner: Found to be clean X-blacknight-igraine-MailScanner-SpamCheck: not spam, SpamAssassin (not cached, score=-2, required 7, autolearn=disabled, RCVD_IN_NERDS_IE -2.00) X-MailScanner-From: robfitz@273k.net Sender: git-owner@vger.kernel.org Precedence: bulk X-Mailing-List: git@vger.kernel.org Archived-At: > * Cache validation and infinite cache for unchanging pages > > By itself cache validation would not bring much performance boost (for > gitweb installations with large traffic), but with the reverse proxy, > aka. caching engine, aka. HTTP accelerator in front of server this could > help a lot. There is no need for extra servers to provide server side caching. Apache2 includes suitable modules (mod_cache) which can be configured to cache in memory or disk the pages generated by gitweb. For example the following apache2.conf entry will setup a 8MB mem cache which will return cached pages even if the user tries to force a refresh in their browser. The details are covered in the apache documentation http://httpd.apache.org/docs/2.2/caching.html . CacheDefaultExpire 60 CacheIgnoreCacheControl On CacheIgnoreNoLastMod On CacheEnable mem /git/ MCacheSize 8192 MCacheMinObjectSize 512 MCacheMaxObjectSize 128000 MCacheRemovalAlgorithm LRU mod_cache will only cache pages with a query string in the url if they have an expires header. So we can put a temporary hack in using mod_expires until gitweb sets an appropriate value. ExpiresActive On ExpiresDefault "access plus 1 minutes" ... Also the content type would need to be change to just return text/html or MSIE will do the wrong think if it's given a application/xhtml+xml page. Robert