Return-Path: Delivered-To: new-httpd-archive@hyperreal.org Received: (qmail 14716 invoked by uid 6000); 31 Oct 1997 09:46:47 -0000 Received: (qmail 14704 invoked from network); 31 Oct 1997 09:46:45 -0000 Received: from thoth.mch.sni.de (192.35.17.2) by taz.hyperreal.org with SMTP; 31 Oct 1997 09:46:45 -0000 Received: from deejai.mch.sni.de (deejai.mch.sni.de [139.25.113.10]) by thoth.mch.sni.de (8.8.8/8.8.8) with ESMTP id KAA26950 for ; Fri, 31 Oct 1997 10:46:42 +0100 (MET) Received: (from martin@localhost) by deejai.mch.sni.de (8.8.7/8.8.7) id KAA01952; Fri, 31 Oct 1997 10:46:40 +0100 (MET) Message-ID: <19971031104637.52990@deejai.mch.sni.de> Date: Fri, 31 Oct 1997 10:46:37 +0100 From: Martin Kraemer To: new-httpd@apache.org Subject: Re: strange performance delays References: <3.0.3.32.19971030195222.008ac800@hyperreal.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.69 In-Reply-To: <3.0.3.32.19971030195222.008ac800@hyperreal.org>; from Brian Behlendorf on Thu, Oct 30, 1997 at 07:52:22PM -0800 Sender: new-httpd-owner@apache.org Precedence: bulk Reply-To: new-httpd@apache.org On Thu, Oct 30, 1997 at 07:52:22PM -0800, Brian Behlendorf wrote: > >... Once every 1000 requests, I > see an even larger hit; the largest I've see was 46 seconds (!!!). I just see that hyperreal has the mod_proxy cache enabled. The proxy cache is the only place where delays of this magnitude can occur IMHO. I've observed it taking MINUTES to complete on a large cache when the GC time has arrived and/or the cache is full. Especially disappointing is the fact that the request that caused the garbage collection (GC) is served but not flushed, so in Netscape you see the partially served document and wait and wait for the final bytes. Ideas for improvement (without having looked at the code): * Make GC take place in a separate process, not in one of the serving threads / preforked servers. * If done in the serving process, then flush the document and finalize the request before GC'ing, and return to accepting state after GC. * Don't keep a persistent connection when finding out that GC has to be done * Avoid more than one of the serving processes to try to do GC Is it possible that the cache caused your delays? Martin -- | S I E M E N S | | Siemens Nixdorf | ------------- | Voice: +49-89-636-46021 | Informationssysteme AG | N I X D O R F | FAX: +49-89-636-44994 | 81730 Munich, Germany ~~~~~~~~~~~~~~~~My opinions only, of course; pgp key available on request