Today, many information providers allow users to specify preferences of the
categories of information that they would like to receive.
A typical example is
my.yahoo.com, which is among the busiest sites on the Internet. The client-specific pages currently cannot be cached at the Web proxies, increasing the load at the Web server and the traffic on the Internet. Active cache solves the problem again by using a cache applet that constructs client-specific pages based on a database of base documents.
We have implemented a simply cache applet for this purpose. Upon receiving the client request, the applet first probes a database object to see if it stores the mapping between the client ID (extracted from the cookie) and its preference. If not, it fetches the preference from the server. After obtaining the preference, the applet composes the Web page. For each individual information item, it first tries to read the item from the cache, and if the item is not cached, fetch it from the server and cache it. It then composes the page and returns it to the user.
Thus, the cache applet filters out the redundancy in the information transmitted by the server for the client-specific pages, and allows individual information items to be cached and reused by the proxy. For a proxy with a large client population, the savings in network bandwidth can be significant. It also allows schemes such as Pointcast to avoid having to write its own proxy servers, and support broadcasting schemes such as SkyCache.