tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cos...@eng.sun.com
Subject Re: Discussion: AJP next
Date Thu, 10 Feb 2000 19:30:12 GMT
> How it works (or is intended to work) - basically when I send the
> response to apache, I can mark some part of the response data with a
> unique reference id and the expiration time. Then - once the response is
> received in apache, this marked data is stored in a local heap and
> indexed using the reference id.


1. If a response _does_ set expire headers, it should be easy to cache it
on apache side, either in memory or in file system. ( similar with using a
squid accelerator). We don't need any API, just an apache module ( that
can be used for CGIs for example ). It would be really _cool_.

2. For JSPs we have a great advantage - we know that a portion of the page
is constant. ( as a matter of fact, it's one of the main reasons I like
JSPs ! ). It is very easy to mark the constant body.

In API terms, the response from tomcat will consist in fragements. Because  
of  the 2.2 buffering we already have that implemented, and that might
help a lot in another area ( HTTP/1.1 and HTTP connection reuse ).

It would be very easy to send a fragment type, that can be either
"constant" ( with Apache caching it using (1) - either in memory or on
disk), or a special fragment "page fragment - with a file name and 2
offsets" - then Apache will read the fragment from the file directly,
and use the OS caches or mmap or any other optimizations it has for files.
( apache needs to be able to send file fragments anyway - I think it's in
HTTP/1.1).

That's also great for JSP for "large-file" case - the "tomcat" overhead
will be minimal for pages with a lot of text and little dynamic content.

I think we should spend some time in this area, it's really interesting.
( just one more month to 3.1, and we can have fun with optimizations :-) 

Costin


Mime
View raw message