>Я скажу свое субъективное "имхо", а пусть гуру поправят.
>Есть L1 директорий. В каждой - L2 поддиректорий. В каждой из поддиректорий
>снова по L2 файлов. Итого: L1*L2*L2 объектов. Для стандартных 16 256
>получаем: 16*256*256=1048576 "мегабайт" объектов. Средний размер объектов - эмпирические 13 кбайт.
>
>
>Однако большой кеш делать не стоит, всё равно там будут лежать старые
>объекты, под которые хоть дискового места не жалко, но расходуется оперативка
>на их индекс, поиск и т.д. Опять же эмпирически вроде рекомендуется
>делать размер кеша равным недельному трафику.
Пардон, но выслушав несколько мнений по этому поводу для меня так ничего и не прояснилось.
В кэш в 50Gb я конечно размахнулся, надобность в таком объеме действительна сомнительна в силу описанных и понимаемых причин, а вот как рассчитать все же L1 для каждого случая так и не понятно. Значение L2 остается неприкасаемо, как правило, и равно всегда значению 256.
Одни рассчитывают исходя из некого среднего размера объекта в кэше и еще чего-то, что является числом 416, подходящее ко всем случаям:
L1 = cache_dir_size / 416
L2 = 256
Для 20 гигов - cache_dir aufs /var/spool/squid 20000 49 256
Кто-то так:
- "При среднем размере хранимого объекта в 12Kбайт количество файлов для кеша в 50 GB получается 4.2 млн. Я обычно рассчитываю L1 при количестве файлов в каталоге 256 и L2 = 256. Т.е. L1 для 50 GB получается равным 63. Можно просто извлечь кубический корень из числа объектов в кэше."
И главное, L1 при каждом варианте расчета получается разным.