The Cache employs TTL-based cache consistency, patterned after the
Internet's Domain Naming System [15]. Because of this, the
Cache can return stale data. Unfortunately, HTTP, Gopher, and FTP
provide neither a means for owners to specify TTLs, nor a protocol to
pass TTLs from servers to caches and clients . Hence, when the Harvest cache fetches an object from the
object's home, it is forced to assign a default TTL. When the TTL
expires, the cache discards the object. When a cache fetches an object
from a parent or neighbor, it inherits the parent's remaining TTL.
Version 1.3 includes support for setting TTLs as a percent of an object's
lifetime. Different TTL parameters can be specified to match
different URL regular expressions.
For measurements about the Cache's consistency mechanism (and other mechanisms with which we have experimented), see [7].
Periodically, the Cache will run a garbage collection routine which will purge all objects from the cache which have expired TTLs. You can adjust the frequency of the garbage collection by changing the clean_rate value in cached.conf. By default, the Cache will purge expired objects every 30 minutes.