[squid-users] Squid memory leak on ubuntu 14.04
squid3 at treenet.co.nz
Mon Nov 30 03:37:34 UTC 2015
On 30/11/2015 3:19 p.m., 风声 wrote:
> I try to use jemalloc, but from monitoring, there is no difference,
> I follow this guide:
> I used LD_PRELOAD to let squid use jemalloc.
> is there something wrong ?
> If I want to re-compile squid with jemalloc, how can i do that ? Can I just
> use some FLAGS ?
A number of build variables can be set on the command line to
./configure. See the end of the "./configure --help" for the ones your
But, hold up a minute there.
You have provided all sorts of snapshots of what the system thinks
memory usage is. But not told us anything about what values you expect
to see there, or what the machine has available. Just a blank statement
that its "high".
I see that the *entire machine* is using ~8GB of RAM. For those of us
managing machines with 32-128 GB of RAM thats actually pretty low. For
machines with only a few hundred MB of RAM plugged in thats impossible
numbers. So please provide some context about the machiens limits.
Also, be aware that "Virtual Memory" is just that *virtual*. It is not
real in-use memory. Whenever fork() is usesd to spawn a child helper or
pworker process the current memory value of the parent process is
assigned to the child - regardless of whether it needs or uses it.
Effectively doubling the "Virtual Memory" numbers with every helper
started, even when the helper uses only a few KB.
I see from the netstat output that you have ~6318 sockets currently in
play. Thats up to ~1.6 GB of RAM just for connection buffering right there.
Then whatever the cache requirements are. Reaching several GB of RAM in
actual usage is pretty easy.
Then only after that is all added together multiply by however many
dozen or hundred helpers are being run, and thats what the virtual
memory numbers can say Squid is "using". Though in reality it is not
More information about the squid-users