Gavin McCullagh wrote:
Hi,
On Thu, 27 Aug 2009, Chris Robertson wrote:
It will if you can fill them without overloading the cache index. Each
object in the cache needs to be indexed in memory. The 10MB of RAM per
GB of disk space assumes an average object size of 10KB. Using that
rule of thumb, you'd need 100GB of RAM for a 10TB cache (just for the
index)!
This rule of thumb may be reasonable, but the average object size seems too
low to me. We see an 80KB average object size, which suggests something
more like 1.25MB per GB. We have 1GB as our disk cache max object size
which doubtless does expand the average. If you want high byte hit rate
you need to cache large objects.
Whereas I have two caches. One has an average object size of 64KB the
other 128KB. However people from large ISPs are still posting ~10KB avg
object sizes in their stats.
Avg size varies and is highly dependent on the users traffic patterns.
A demographic which spend all their time streaming video would have an
avg object size of MBs.
There are a LOT of objects on the web which are under 10KB of size.
We have an 800GB cache (2x400GB on two 1TB disks) and although there's 8GB
of ram, it's on a 32-bit operating system (so squid's process size can't go
above 3GB). The above value suggests the indexes take up about 1GB of RAM.
We have a 1GB memory cache and all runs fine without swapping so the index
must be fitting into 2GB.
Its a 4095 MB cap on 32-bit. (4 GB minus 1 KB).
Amos
--
Please be using
Current Stable Squid 2.7.STABLE6 or 3.0.STABLE18
Current Beta Squid 3.1.0.13