On Mon, 2008-04-07 at 10:43 +0200, Henrik Nordstrom wrote: > mån 2008-04-07 klockan 11:44 +0800 skrev Zhou, Bo(Bram): > > > 1. How often local host fetch the digest from peers? > > Each digest_rebuild_period as set by the peer. > > > Any timer controls or > > just checks if the cache digests are expired? Some hard-coded timers, > > PeerDigestReqMinGap and GlobDigestReqMinGap in peer_digest.c, are defined in > > the source codes, what's purpose of these timers? When will these timers be > > started and stopped? > > These are safeguards to make sure digest fetching doesn't suck up too > much bandwidth, in case the peer(s) is badly configured. > > > 2. For digest_rebuild_chunk_percentage, if I define it 10%, does that mean > > Squid will add more 10% cache to digest for each digest_rebuild_period > > interval or within digest_rebuild_period interval but finish processing > > other user requests? > > It's how much of the cache Squid should digest at a time when rebuilding > the cache digest. No requests is processed while this is done, only very > briefly between chunks. > > Hmm.. not even sure why this directive exists. I think it should scan > one bucket at a time.. digest rebuilding is not a very high priority > item and blocking request forwarding for this is not good... > > Alex: do you remember why this directive was added? IIRC, one-bucket-at-a-time was too slow in environments that cared more about hits than optimizing miss performance. Folks wanted a knob to control the trade-off. HTH, Alex.