Received: by taz.hyperreal.com (8.8.4/V2.0) id RAA07788; Sun, 2 Feb 1997 17:06:34 -0800 (PST) Received: from eat.organic.com by taz.hyperreal.com (8.8.4/V2.0) with ESMTP id RAA07783; Sun, 2 Feb 1997 17:06:31 -0800 (PST) Received: from localhost (brian@localhost) by eat.organic.com (8.8.3/8.6.12) with SMTP id RAA10167 for ; Sun, 2 Feb 1997 17:08:03 -0800 (PST) Date: Sun, 2 Feb 1997 17:08:02 -0800 (PST) From: Brian Behlendorf To: new-httpd@hyperreal.com Subject: Re: idea - last-modified despite SSI - possible performance booster In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: new-httpd-owner@apache.org Precedence: bulk Reply-To: new-httpd@hyperreal.com Or better yet, an object cache - make a hash table where the key is the SSI page's URL and the hashed value is mtime and SSI parameter locations. The server checks the mtime on each request, if it's not different it doesn't have to parse the file. Hmm, maybe it's time to check out Spinner as an object cache. If it doesn't do persistant connections I'm dubious however... Brian > > Another idea to speed up SSI could be to add support for a tag such as: > > > > > > > > to tell mod_include that the rest of the text should not be parsed for > > SSI. I could make use of that so a patch is attached. Comments ? > > > > -=-= > > > > Also, search times could be eliminated with something like: > > > > > > > > to tell mod_include where to seek to in order to find all the include > > statements. One could write an offline parser to compute the offsets > > and embed the info at the beginning of files. Seek is a wonderful > > replacement for brute force searching. > > > > A simpler version might be > > > > if CR/LF issues are addressed. > > > > > > Not for 1.2 :-) but someone might want to think about somthing to go > > into the patches directory. > > > > > > rob > > > > > > > > Index: mod_include.c > > =================================================================== > > RCS file: /export/home/cvs/apache/src/mod_include.c,v > > retrieving revision 1.4 > > diff -u -r1.4 mod_include.c > > --- mod_include.c 1997/01/20 14:50:17 1.4 > > +++ mod_include.c 1997/02/02 14:25:45 > > @@ -1574,7 +1574,11 @@ > > if(!find_string(f,STARTING_SEQUENCE,r,printing)) { > > if(get_directive(f,directive,r->pool)) > > return; > > - if(!strcmp(directive,"if")) { > > + if(!strcmp(directive,"ssi-off")) { > > + find_string(f,ENDING_SEQUENCE,r,0); > > + send_fd(f,r); > > + return; > > + } else if(!strcmp(directive,"if")) { > > if (!printing) { > > if_nesting++; > > } else { > > > > > > > --=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-- brian@organic.com www.apache.org hyperreal.com http://www.organic.com/JOBS