The cache replacement policy parameter determines which
objects are evicted (replaced) when disk space is needed.
lru : Squid's original list based LRU policy
heap GDSF : Greedy-Dual Size Frequency
heap LFUDA: Least Frequently Used with Dynamic Aging
heap LRU : LRU policy implemented using a heap
Applies to any cache_dir lines listed below this directive.
The LRU policies keeps recently referenced objects.
The heap GDSF policy optimizes object hit rate by keeping smaller
popular objects in cache so it has a better chance of getting a
hit. It achieves a lower byte hit rate than LFUDA though since
it evicts larger (possibly popular) objects.
The heap LFUDA policy keeps popular objects in cache regardless of
their size and thus optimizes byte hit rate at the expense of
hit rate since one large, popular object will prevent many
smaller, slightly less popular objects from being cached.
Both policies utilize a dynamic aging mechanism that prevents
cache pollution that can otherwise occur with frequency-based
replacement policies.
NOTE: if using the LFUDA replacement policy you should increase
the value of maximum_object_size above its default of 4 MB to
to maximize the potential byte hit rate improvement of LFUDA.
For more information about the GDSF and LFUDA cache replacement
policies see http://www.hpl.hp.com/techreports/1999/HPL-1999-69.html
and http://fog.hpl.external.hp.com/techreports/98/HPL-98-173.html.