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

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

Отправлено nikara , 12-Сен-03 11:45 
Доброго времени суток.
Возник вопрос - как работает алгоритм замещения объектов в кэше сквида и пользуется ли кто-нибудь алгоритмами отличными от lru?

Содержание

Сообщения в этом обсуждении
"Просьба объяснить работу алгоритма замещения объектов в кэше"
Отправлено Михаил , 14-Сен-03 09:37 
>Доброго времени суток.
>Возник вопрос - как работает алгоритм замещения объектов в кэше сквида и
>пользуется ли кто-нибудь алгоритмами отличными от lru?

так в самом же конфиге все написано!
еще посмотри http://www.bog.pp.ru/work/squid.html#LRU


"Просьба объяснить работу алгоритма замещения объектов в кэше"
Отправлено nikara , 15-Сен-03 09:15 
>>Доброго времени суток.
>>Возник вопрос - как работает алгоритм замещения объектов в кэше сквида и
>>пользуется ли кто-нибудь алгоритмами отличными от lru?
>
>так в самом же конфиге все написано!
>еще посмотри http://www.bog.pp.ru/work/squid.html#LRU

Ты думаешь я не читал..
Вот что на bog boss написано (примерно то же, что и в конфиге)

Squid поддерживает размер кеша между low и high, регулярно запуская процедуру удаления объектов (чем ближе мы к high, тем агрессивнее очистка). Вместо удаления можно использовать очистку файлов (truncate) пока хватает inode. Удаление производится асинхронно внешней программой unlinkd. Если объект тянется в данный момент, то он не удаляется. Если объект "отрицательно кеширован", то он удаляется. Если объект частный, то он удаляется. Алгоритмы замешения:
LRU. Если время с последнего использования объекта больше некой границы (threshold), то объект удаляется. Граница динамически вычисляется на основе заполненности кеша и low/high маркеров (начальное/максимальное значение задается в squid.conf). При стабилизации размера кеша граница представляет время полного заполнения (замещения) кеша в текущих условиях (типичное значение от 1 до 10 дней; если меньше 3 дней, то рекомендуется увеличить кеш).
GDSF. Стремится удержать маленькие полулярные объекты (растет hitrate, падает byterate).
LFUDA. hitrate падает, byterate - растет.

Сравнение алгоритмов проводится в
Enhancement and Validation of Squid's Cache Replacement Policy
Evaluating Content Management Techniques for Web Proxy Caches

Не понятно, что есть hitrate и bitrate ? И какие преимущества я получу, если включу их вместо стандартного...?


"Просьба объяснить работу алгоритма замещения объектов в кэше"
Отправлено Michael , 15-Сен-03 09:58 
>Не понятно, что есть hitrate и bitrate ? И какие преимущества я
>получу, если включу их вместо стандартного...?
hitrate (он же object hit rate) - доля попаданий в кэш по количеству файлов (т.е. hitrate 10% - это означает, что 10% файлов было взято из кэша)
bitrate (он же byte hit rate) - доля попаданий в кэш по количеству информации (т.е. bitrate 10% - это означает, что 10% байт было взято из кэша)

#    The heap GDSF policy optimizes object hit rate by keeping smaller
#    popular objects in cache so it has a better chance of getting a
#    hit.  It achieves a lower byte hit rate than LFUDA though since
#    it evicts larger (possibly popular) objects.
#
#    The heap LFUDA policy keeps popular objects in cache regardless of
#    their size and thus optimizes byte hit rate at the expense of
#    hit rate since one large, popular object will prevent many
#    smaller, slightly less popular objects from being cached.
#
#    Both policies utilize a dynamic aging mechanism that prevents
#    cache pollution that can otherwise occur with frequency-based
#    replacement policies.
#
#    NOTE: if using the LFUDA replacement policy you should increase
#    the value of maximum_object_size above its default of 4096 KB to
#    to maximize the potential byte hit rate improvement of LFUDA.
и чего тут непонятного?


"Просьба объяснить работу алгоритма замещения объектов в кэше"
Отправлено nikara , 15-Сен-03 10:27 
>>Не понятно, что есть hitrate и bitrate ? И какие преимущества я
>>получу, если включу их вместо стандартного...?
>hitrate (он же object hit rate) - доля попаданий в кэш по
>количеству файлов (т.е. hitrate 10% - это означает, что 10% файлов
>было взято из кэша)
>bitrate (он же byte hit rate) - доля попаданий в кэш по
>количеству информации (т.е. bitrate 10% - это означает, что 10% байт
>было взято из кэша)
>
># The heap GDSF policy optimizes object hit rate by keeping smaller
>
># popular objects in cache so it has a better chance of
>getting a
># hit.  It achieves a lower byte hit rate than LFUDA
>though since
># it evicts larger (possibly popular) objects.
>#
># The heap LFUDA policy keeps popular objects in cache regardless of
>
># their size and thus optimizes byte hit rate at the expense
>of
># hit rate since one large, popular object will prevent many
># smaller, slightly less popular objects from being cached.
>#
># Both policies utilize a dynamic aging mechanism that prevents
># cache pollution that can otherwise occur with frequency-based
># replacement policies.
>#
># NOTE: if using the LFUDA replacement policy you should increase
># the value of maximum_object_size above its default of 4096 KB to
>
># to maximize the potential byte hit rate improvement of LFUDA.
>и чего тут непонятного?

Теперь понятно:) Спасибо за разяснение терминов