URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93695
[ Назад ]

Исходное сообщение
"Как заставить squid регулярно очищать кэш"

Отправлено 62mkv , 16-Авг-12 14:56 
В настройках squid.conf есть директива:
cache_dir ufs /var/spool/squid 100 16 128

(да, маленький винт, маленькая сеть, поэтому под кеш всего 100 м)

НО ! мне почему-то казалось, что по достижении этого объема старые объекты должны удаляться из кеша. однако, вместо этого в cache.log просто регистрируется сообщение:

WARNING: Disk space over limit: 109092 KB > 102400 KB

и так далее. постепенно просто забивается раздел и SQUID перестает работать

www.squid-cache.org лежит, гуглеж ошибки не привел ни к чему хорошему. видимо ни у кого не доходило до такого.

вопрос: как обеспечить чтобы при переполнении кеша из него автоматически удалялись старые объекты, до тех пор пока он не достигнет максимального объема предписанного директивой

заранее спасибо за ответы


Содержание

Сообщения в этом обсуждении
"Как заставить squid регулярно очищать кэш"
Отправлено anonymous , 16-Авг-12 15:34 
> заранее спасибо за ответы

http://www.squid-cache.org/mail-archive/squid-users/200306/0...


"Как заставить squid регулярно очищать кэш"
Отправлено 62mkv , 17-Авг-12 06:11 
>> заранее спасибо за ответы
> http://www.squid-cache.org/mail-archive/squid-users/200306/0...

если бы эта ссылка еще бы и открывалась.. ;( цены б ей не было ;)


"Как заставить squid регулярно очищать кэш"
Отправлено zandyg , 17-Авг-12 06:44 
>>> заранее спасибо за ответы
>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
> не было ;)

This may be seen if swap.state has been corrupted. Such corruption can
occur on unexpected system shutdowns (power failure, kernel panic etc).

Try the following:

1. Shut down squid.

2. Remove the swap.state files from your cache directories.

3. Start Squid again. It will slowly rebuild swap.state from the cache
files.


"Как заставить squid регулярно очищать кэш"
Отправлено 62mkv , 17-Авг-12 08:15 
>[оверквотинг удален]
>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>> не было ;)
> This may be seen if swap.state has been corrupted. Such corruption can
> occur on unexpected system shutdowns (power failure, kernel panic etc).
> Try the following:
> 1. Shut down squid.
> 2. Remove the swap.state files from your cache directories.
> 3. Start Squid again. It will slowly rebuild swap.state from the cache
> files.

спасибо. такого рода ответов в сети много. они касаются ситуации когда реально объем папки кеша небольшой, а в логах фиксируются варнинги.

у меня то варнинги абсолютно правдивы !! и место "засирается" вполне по честному. да и опять же, предложенный рецепт требует перезапуска прокси, что не вариант. с перезапуском я и так умею ;) squid -k stop, rm папка, squid -z, service squid start.

надо чтобы этого вообще не происходило. иными словами чтобы squid сам удалял лишние объекты по мере достижения кешем предельного размера. или это категорически невозможно ?

в документации об этом как-то ни слова не сказано. хотя если есть параметр "предельный размер директории кеша", то ведь должен же он для чего-то применяться ? не только же для записи варнингов в логи ???


"Как заставить squid регулярно очищать кэш"
Отправлено zandyg , 20-Авг-12 06:24 
> надо чтобы этого вообще не происходило. иными словами чтобы squid сам удалял
> лишние объекты по мере достижения кешем предельного размера. или это категорически
> невозможно ?

А это?
#  TAG: cache_swap_low    (percent, 0-100)
#  TAG: cache_swap_high    (percent, 0-100)
#
#    The low- and high-water marks for cache object replacement.
#    Replacement begins when the swap (disk) usage is above the
#    low-water mark and attempts to maintain utilization near the
#    low-water mark.  As swap utilization gets close to high-water
#    mark object eviction becomes more aggressive.  If utilization is
#    close to the low-water mark less replacement is done each time.
#
#    Defaults are 90% and 95%. If you have a large cache, 5% could be
#    hundreds of MB. If this is the case you may wish to set these
#    numbers closer together.
#Default:
# cache_swap_low 90
# cache_swap_high 95



"Как заставить squid регулярно очищать кэш"
Отправлено 62mkv , 20-Авг-12 06:42 
>> надо чтобы этого вообще не происходило. иными словами чтобы squid сам удалял
>> лишние объекты по мере достижения кешем предельного размера. или это категорически
>> невозможно ?
> А это?
> #  TAG: cache_swap_low (percent, 0-100)
> #  TAG: cache_swap_high (percent, 0-100)

у меня указано:
cache_swap_high 93
(нижний - дефолтный)

но эффекта от этого я не наблюдаю вообще.

кстати, я убрал некоторые домены в no_cache, чтобы они вообще не кешировались...
как убедиться, что эта директива отрабатывает ? не могу этого понять по логам.

>[оверквотинг удален]
> # close to the low-water mark less replacement is done each time.
> #
> # Defaults are 90% and 95%. If you have a large cache,
> 5% could be
> # hundreds of MB. If this is the case you may wish
> to set these
> # numbers closer together.
> #Default:
> # cache_swap_low 90
> # cache_swap_high 95


"Как заставить squid регулярно очищать кэш"
Отправлено crash , 17-Авг-12 07:41 
>>> заранее спасибо за ответы
>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
> не было ;)

а она почему то открывается


"Как заставить squid регулярно очищать кэш"
Отправлено 62mkv , 17-Авг-12 08:11 
>>>> заранее спасибо за ответы
>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>> не было ;)
> а она почему то открывается

точно. теперь открывается. но толку немного


"Как заставить squid регулярно очищать кэш"
Отправлено Kir , 20-Авг-12 11:15 
>>>>> заранее спасибо за ответы
>>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>>> не было ;)
>> а она почему то открывается
> точно. теперь открывается. но толку немного

This may be seen if swap.state has been corrupted.
Там же сказано, это может быть, если swap.state поврежден. Удали его разок и посмотри, что далее будет.


"Как заставить squid регулярно очищать кэш"
Отправлено 62mkv , 20-Авг-12 11:39 
>>>>>> заранее спасибо за ответы
>>>>> http://www.squid-cache.org/mail-archive/squid-users/200306/0...
>>>> если бы эта ссылка еще бы и открывалась.. ;( цены б ей
>>>> не было ;)
>>> а она почему то открывается
>> точно. теперь открывается. но толку немного
> This may be seen if swap.state has been corrupted.
> Там же сказано, это может быть, если swap.state поврежден. Удали его разок
> и посмотри, что далее будет.

так я его каждый раз удаляю вместе со всей кеш-директорией. потом создаю заново через squid -z. или он каждый раз портится ? нет, тут что-то другое.


"Как заставить squid регулярно очищать кэш"
Отправлено anonymous , 26-Авг-12 10:47 
>> This may be seen if swap.state has been corrupted.
>> Там же сказано, это может быть, если swap.state поврежден. Удали его разок
>> и посмотри, что далее будет.
> так я его каждый раз удаляю вместе со всей кеш-директорией. потом создаю
> заново через squid -z. или он каждый раз портится ? нет,
> тут что-то другое.

Значит, это баг.

Какая версия squid, кстати?


"Как заставить squid регулярно очищать кэш"
Отправлено 62mkv , 27-Авг-12 07:36 
>>> This may be seen if swap.state has been corrupted.
>>> Там же сказано, это может быть, если swap.state поврежден. Удали его разок
>>> и посмотри, что далее будет.
>> так я его каждый раз удаляю вместе со всей кеш-директорией. потом создаю
>> заново через squid -z. или он каждый раз портится ? нет,
>> тут что-то другое.
> Значит, это баг.
> Какая версия squid, кстати?

2.3.STABLE2


"Как заставить squid регулярно очищать кэш"
Отправлено Andrey Mitrofanov , 27-Авг-12 20:57 
>> Какая версия squid, кстати?
> 2.3.STABLE2

2.3.STABLE2     Thu Mar 2 22:45:32 UTC 2000

С _этого_ же и надо было начинать!