[squid-users] Cache strategy advice

Amos Jeffries squid3 at treenet.co.nz
Fri May 1 05:31:31 UTC 2015


On 1/05/2015 7:13 a.m., Yan Seiner wrote:
> I am building a small embedded squid box.
> 
> It has 4GB of ram, dual core CPU, and a 32GB SSD.
> 
> Since I'm running a tiny embedded linux distro (openwrt) most of those
> resources are available; I'm only using about 1MB of RAM and about 300MB
> of the SSD.
> 
> My incoming internet service is 30 to 60 Mb/sec.
> 
> My goals:
> 
> Maximize throughput (I don't want squid to slow down the connection)
> Minimize wear on the SSD
> 
> I am planning to set up two workers but beyond that I'm not really how
> to effectively use what I have.

I advise using only one worker (non-SMP) on dual-core systems. Squid
workers will happily consume the entirety of any CPU cores you let it
use at peak times. So leaving one for the OS and helpers etc to use is a
good idea.

Single worker of Squid with memory-only caching can cope with upwards of
50Mbps. So your traffic expectations should not be a worry there unless
the cores are very slow (MHz range).


If you want to minimize wear on the SSD avoid cache_dir storage types
entirely they are guaranteed to wear it out faster than normal. Current
Squid will run fine with only memory-only caching. Adjust the cache_mem
directive as wanted - default is a 256MB memory cache.

Also, avoid having the device swap memory at all costs - even with the
SSD. If it reaches the point of swapping Squid performance will drop
radically and the SSD wear will increase to match.


Any other features are optional or depend on exactly what you want to be
doing policy-wise with the proxy.

Amos



More information about the squid-users mailing list