As an addition to my previous comment, please read this comment in squid.conf (3.1.6 FWIW):

#  TAG: store_avg_object_size   (kbytes)
#   Average object size, used to estimate number of objects your
#   cache can hold.
I don't see how this helps fixing the problem I described in my initial post.

Whether I set maximum_object_size_in_memory or the above parameter should be largely irrelevant, simply because the memory usage should be dependent on the cache_mem parameter (give or take a certain amount of memory needed for managing the disk cache).

In other words, if squid memory management was working correctly, it would try to take the store_avg_object_size and/or maximum_object_size_in_memory parameters to determine the number of objects it can store in memory, *and*, at the very least, try to periodically check whether the objects placed in memory do not exceed the threshold indicated in the cache_mem parameter. If that happens, obviously, no additional objects should be placed in memory and squid should start "demoting" existing objects in ram and put them back in the disk storage cache until the cache_mem threshold is met.

That, it seems, does not happen and squid is trying to squeeze as much out of my available ram as possible.

Reply via email to