Maintaining Strong Cache Consistency in the World-Wide Web

Chengjie Liu and Pei Cao, Computer Sciences Department, University of Wisconsin-Madison, Madison, WI 53706
cao@cs.wisc.edu


A draft version of the paper can be viewed in POSTSCRIPT (220,724 Bytes) form.

NOTE: this is only a draft version, the data shown in this draft are not entirely accurate, and the conclusions need to be taken with a grain of salt. So, please do not distributed this version of the paper.

Abstract

As the Web continues to explode, caching becomes increasingly important. With caching comes the problem of cache consistency. Conventional wisdom held that strong cache consistency is too expensive for the Web, and weak consistency approaches such as TTL are most appropriate. This study compares three consistency approaches: {\em adaptive TTL}, {\em polling-every-time} and {\em invalidation}, using prototype implementation and trace replay in a simulated environment. Our results show that the {\em invalidation} approach performs the best. It costs less or comparable amount of network bandwidth than {\em adaptive TTL}, and generally impose less workload on the server. Its average client response time is also lower than that of adaptive TTL, though occasionally a request maybe stalled for a long time. The {polling-every-time} approach, on the other hand, imposes significantly more load on the network and the server. Thus, our study shows that strong cache consistency can be maintained on the Web with little or no extra cost than the current weak consistency approaches, and {\em invalidation} is the appropriate method for it.