Return-Path: Delivered-To: apmail-httpd-dev-archive@www.apache.org Received: (qmail 15537 invoked from network); 1 May 2006 20:15:24 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 1 May 2006 20:15:24 -0000 Received: (qmail 50709 invoked by uid 500); 1 May 2006 20:15:20 -0000 Delivered-To: apmail-httpd-dev-archive@httpd.apache.org Received: (qmail 50646 invoked by uid 500); 1 May 2006 20:15:19 -0000 Mailing-List: contact dev-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@httpd.apache.org Received: (qmail 50635 invoked by uid 99); 1 May 2006 20:15:19 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 01 May 2006 13:15:19 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [207.155.248.72] (HELO tonnant.cnchost.com) (207.155.248.72) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 01 May 2006 13:15:19 -0700 Received: from [192.168.0.21] (c-24-15-193-17.hsd1.il.comcast.net [24.15.193.17]) by tonnant.cnchost.com (ConcentricHost(2.54) Relay) with ESMTP id 537BF112ACF for ; Mon, 1 May 2006 16:14:58 -0400 (EDT) Message-ID: <44566C41.2020507@rowe-clan.net> Date: Mon, 01 May 2006 15:14:57 -0500 From: "William A. Rowe, Jr." User-Agent: Mozilla Thunderbird 1.0.7-1.1.fc4 (X11/20050929) X-Accept-Language: en-us, en MIME-Version: 1.0 To: dev@httpd.apache.org Subject: Re: Possible new cache architecture References: <4450CF63.2060305@turner.com> <445136CC.6030305@sharp.fm> <44520B45.6070507@turner.com> <4455203F.9000509@sharp.fm> <44560316.3030705@turner.com> <445664B1.5030905@sharp.fm> <445665B2.3010604@turner.com> In-Reply-To: <445665B2.3010604@turner.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Brian Akins wrote: > Graham Leggett wrote: > >> That's two hits to find whether something is cached. > > You must have two hits if you support vary. Well, one to three hits. One, if you use an arbitrary page (MRU or most frequently referenced would be most optimial, but it really doesn't matter) and then determine what varies, and if you are in the right place, or what that right place is (page by language, or whatever fields it varied by.) Three hits or more if your variant also varies ;) >> How are races prevented? > > shouldn't be any. something is in the cache or not. if one "piece" of > an http "object" is not valid or in cache, the object is invalid. > Although other variants may be valid/in cache. And, of course, inserting the hit once it's composed is important, and can happen in parallel (3 clients looking for the same, and then fetching the same page from the origin). But it's harmless if the insertion is mutex protected, and the insertion can only happen once the page is fetched complete.