mark@labtam.labtam.OZ.AU writes:
>Hi Duane,
>
>> http://squid.nlanr.net/Squid/1.1/1.1.8/fixes.patch
>>
>> Changes to this patch:
>...
>> - Removed storeCheckExpired() from storeGetSwapSpace() as
>> likely cause of slowing down cache when exceeding the high
>> water mark.
>Indirectly. I'd recommend whomever is seeing the problem decrease the
>configuration parameter for objects per bucket from the default of 50 to 10
>i.e.
> store_objects_per_bucket 10
>
>What will be happening is this, storeGetSwapSpace() gets called when
>the swap usage is above the high water mark. Since calculation of
>reference age is now dynamic storeCheckExpired() will practically always
>return expired.
>storeCheckExpired() calls the dynamic calculation routine
>storeExpiredReferenceAge(). storeExpiredReferenceAge() calculates
>an age that varies over the range 60 seconds to 1 year over the
>the cache utilisation interval swap_high to swap_low. As storeGetSwapSpace
>only enters the LRU garbage collection mode when utilisation is over
>swap_high, storeExpiredReferenceAge is going to return a reference age
>of 60 seconds. This means that almost all objects in a bucket are going
>to be removed, which is too aggressive. The rate your system can perform
>unlinks will quickly become a bottle neck.
Thats why it was removed. storeCheckExpired() doesn't get called
at all in storeGetSwapSpace() any more.
Definately a good idea to lower store_objects_per_bucket.
(I know, I didn't want to when you first told me to. Bad, bad....)
Should we make the default 20?
>
>> - Deny access to dangerous TCP ports (7, 19).
>Discard should also be excluded, it's just going to tie up a fd till
>it times out (3 hours ?).
Ack.
Duane W.
Received on Tue Jul 29 2003 - 13:15:40 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:11:15 MST