Pavel Vladimirov wrote:
>
> Может это и FAQ, но ворошить доки лень, может кто на пальцах... :)
>
> Есть такое:
>
> cache_host cache1.domain.ru sibling 3128 3130 weight=3
> cache_host cache2.domain.ru parent 3128 3130 weight=2
> cache_host cache3.domain.ru parent 3128 3130
>
> Как действует сквид в таком случае? Хотелось бы, чтобы:
>
> 1. Тыкаемся в cache1, если у него в кэше нет, то п.2.
> 2. Тыкаемся в cache2, если у него нет, то заставляем его тянуть.
> Если через некоторое время "не пошло" (тайм-аут), то п.3.
> 3. Тыкаемся в cache3, если у него нет, то заставляем его тянуть.
> Если через некоторое время "не пошло" (тайм-аут), то тянем сами.
>
> Так ли это работает? По практике есть смутные сомнения на этот счет, причем
> большие :) В чем ошибка? В самой логике? В определении тайм-аутов (рано
> отвядает и переходит на директ)? Как менять, где почитать? :)
<http://squid.nlanr.net/Squid/FAQ/FAQ-12.html#ss12.7> :
=======================================================
12.7 What is the Squid cache resolution algorithm?
- Send ICP queries to all appropriate siblings (*)
- Wait for all replies to arrive with a configurable timeout
(the default is two seconds).
- Begin fetching the object upon receipt of the first HIT reply, or
- Fetch the object from the first parent which replied with MISS
(subject to weighting values), or
- Fetch the object from the source
The algorithm is somewhat more complicated when firewalls are involved.
The single_parent_bypass directive can be used to skip the ICP queries
if the only appropriate sibling is a parent cache
(i.e., if there's only one place you'd fetch the object from, why
bother querying?)
---
(*) IMHO, имеются ввиду peers, а не только siblings, что видно из
пункта 4. (прим. мое :-)
=======================================================
Таким образом, желаемая схема невозможна, так как Squid a) не тыкается
по очереди, а рассылает ICP всем, кому можно, сразу; b) если уж стал
у parent'а тянуть - тянет до конца (или до облома). При наличии живых
родителей :-) Squid тянет сам только если RTT меряется и до
запрашиваемого сервера, и он оказывается самым близким.
SY, Yar
P.S. См. также RFC 2187 "Application of Internet Cache
Protocol (ICP), version 2"
-----------------------------------------------------------------
Yaroslav Tikhiy, <yar@radio-msu.net> | Radio-MSU | Moscow, Russia
=============================================================================
"inet-admins" Internet access mailing list. Maintained by East Connection ISP.
Mail "unsubscribe inet-admins" to Majordomo@info.east.ru if you want to quit.