>
> Of course, any greater use of caching must raise the issue of an
> "expected frequency of update" value to be held with each document, in
> order to assist the LAN-cache server in knowing how long to keep things.
>
I have an experimental cache server running based on Tony Sanders Plexus.
Users are connected per default to this server through the
WWW_http_GATEWAY environment variable for Mosaic (Unix). Mosaic for Windows
and Lynx will follow. (I hope soon ... - we need it).
setenv WWW_http_GAETWAY www.tu-chemnitz.de:8002
Then Mosaic gives all http://host:port/... URL to www.tu-chemnitz.de:8002
in the form
GET /host:port/...
The main base of "my" caching is:
- Server is HTTP/1.0 and
- has the Last-Modified (L-M) value in its header.
- do not handle queries
- run as a simple gateway for servers not to cache
I can configure the cache server:
- list of servers to cache
- TIME_SHORT for html/text
- TIME_LONG for other (gifs etc.)
Algorithm implemented at now:
- If request not in cache: get it -> give it to client and cache
(I store it with full header)
- If request in cache:
- if NOW - cache files TIME < TIME_SHORT
put it to client
else
put it to client and
get the head from the server
if L-M of cache == L-M from server
utime the cache file to now
else
unlink the file and get it
For TIME_LONG files in the same manner.
I've also started a students work to clean and refresh the cache
without client (at night or weekend).
You can try my cache server:
www.novell.com and www.ncsa.uiuc.edu are on the list.
~Guenther
-- Name: Guenther Fischer Institute: TU Chemnitz, Universitaetsrechenzentrum Phone: 0371 668 361 mail: fischer@hrz.tu-chemnitz.de