Search squid archive

Re: Questions regarding COSS setup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Sorry for the TOFU. I accidentally replied to Amos directly. Below the
two mails.

I set up a test server with COSS and AUFS. But I couldn't set the size
for the COSS files to 16 GB. After some tinkering with the file size I
found out that with a "block-size" of 1 KB you can have a maximum size
of 16373 MB. Adding an extra MB Squid will only tell you this:
FATAL: COSS cache_dir size exceeds largest offset

Now I'll do some testing and get back to you when I have results.

Thanks again for the help,

	Markus


> Markus Meyer wrote:
>> Amos Jeffries schrieb:
>> 
>> Hi Amos,
>> 
>>>> I want to let Squid do as less IO as possible. So I thought I
>>>> set "maximum_object_size_in_memory" to 4 kB and "max-size" for
>>>> COSS to 3x 8kB = 24 kB. The rest goes into AUFS.
>>> Looking at that 8KB will catch 20% more than 4KB would.
>> 
>> Right, but our RAM is limited and this is some kind of trade off. I
>> want to get as much small files into RAM as possible. Reading tons
>> of 8 kB from disk is not as bad as reading tons of 4 kB files from
>> disk.
>> 
>>>> cache_dir aufs /web/cache/1/aufs/ 81920 290 256 cache_dir aufs
>>>> /web/cache/2/aufs/ 81920 290 256
>>> add min-size=24576 to the AUFS to prevent them grabbing the small
>>> files intended for COSS.
>> 
>> Ahh, good point. Thx
>> 
>>>> - "--with-coss-membuf-size" compile-time option is set to 1 MB
>>>> per default. Does it make sense to change this value?
>>> AFAIK, no, but you may want to test that.
>> 
>> Ok, so testing this is at the far end of my list ;)
>> 
>>>> - How big should I make the COSS files? I thought about 20 GB
>>>> on four disks for COSS and 60 GB on the same disks for AUFS.
>> [...]
>>> More total size means more slices being swapped in and out to
>>> load rarer things. Larger slice size reduces that, but increases
>>> loading time.
>> 
>> Slices are what is defined in "--with-coss-membuf-size"? I also
>> thought that with COSS the memory overhead is rising again because
>> of the memory buffers and asynchronous writing.
> 
> Yes. Larger slice size means more memory for COSS. A certain number
> of these are held in memory at once to minimize disk delays further
> (10 by default). The larger they are the longer it takes to read one
> in from disk when a file is needed on it, the more memory the in-use
> set require etc.
> 
>> 
>>>> - How do I understand "block-size"? What values should I use? I
>>>> can't get my head around the docs in the Squid-Wiki.
>>> Block is equivalent to inodes as I understand it. Each file is
>>> stored in 1-N blocks.  A block of 512 bytes storing a 12 byte
>>> file will waste 500 bytes. As will two blocks storing a 524 byte
>>> object.
>>> 
>>> To reach your 20GB directory size you will need block-size=2048.
>>> 
>>> Going by your object distribution I'd say thats probably
>>> workable. Though 1KB (dir size 16GB) would have less wastage.
>> 
>> Then I start my tests with 16 GB and "block-size = 1 kB". Hangon,
>> you lost me here. How did you do the math?
> 
> I cheated, the wiki page list under block-size said  n=1024  gets you
> 16384 MB cache_dir size.
> 
> The math AFAIK goes like this: 224 (absolute maximum count of objects
> in a single cache_dir) times 1 KB  (block size. AKA minimum file
> size) = 16 GB  (size of COSS cache_dir)
> 
> It seems to me that should theoretically be the _minimum_. But I'm
> fuzzy on what the store code does still.
> 
> Amos -- Please be using Current Stable Squid 2.7.STABLE7 or
> 3.0.STABLE21 Current Beta Squid 3.1.0.15


[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux