Назад | Перейти на главную страницу

Запретить оживление мертвых пиров в Squid

Как? Я использую Squid v3.3.8, и мне нужно создать вращающийся HTTP-прокси-сервер для отправки всех запросов через набор предопределенных прокси (я автоматически обновляю конфигурацию squid для обновления набора рабочих прокси).

Мои выходные прокси-серверы не быстрые и надежные, поэтому я не хочу, чтобы Squid ждал, если некоторые из них не отвечают быстро, я лучше надеюсь, что другие будут лучше, и никогда не возвращаться к проблемным.

Вот так выглядит моя конфигурация

# Basic configuration
visible_hostname squid_1
unique_hostname squid_1

http_port 3130
pid_filename /home/vagrant/projects/squid_1.pid

dns_v4_first on

peer_connect_timeout 3 seconds
dead_peer_timeout 3 seconds

server_persistent_connections off

http_access allow all

# Proxies list
cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node2447551878 login=login2447551878:PASSWORD
cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node3119927090 login=login3119927090:PASSWORD
cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node4682855833 login=login4682855833:PASSWORD
cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node9428960235 login=login9428960235:PASSWORD
cache_peer PROXY_HOST parent PROXY_PORT 0 connect-fail-limit=1 round-robin no-query name=node3796185266 login=login3796185266:PASSWORD

never_direct allow all

И это то, что я вижу в cache.log

2016/04/20 15:28:49 kid1| TCP connection PROXY_HOST/PROXY_PORT failed
2016/04/20 15:28:49 kid1| Detected DEAD Parent: node3796185266
2016/04/20 15:28:49 kid1| Detected REVIVED Parent: node3796185266
2016/04/20 15:28:53 kid1| TCP connection PROXY_HOST/PROXY_PORT failed
2016/04/20 15:28:53 kid1| Detected DEAD Parent: node3796185266
2016/04/20 15:28:53 kid1| Detected REVIVED Parent: node3796185266
2016/04/20 15:28:57 kid1| TCP connection PROXY_HOST/PROXY_PORT failed
2016/04/20 15:28:57 kid1| Detected DEAD Parent: node3796185266
2016/04/20 15:28:57 kid1| Detected REVIVED Parent: node3796185266
2016/04/20 15:29:06 kid1| TCP connection PROXY_HOST/PROXY_PORT failed
2016/04/20 15:29:06 kid1| Detected DEAD Parent: node9428960235
2016/04/20 15:29:06 kid1| Detected REVIVED Parent: node9428960235
2016/04/20 15:29:10 kid1| TCP connection PROXY_HOST/PROXY_PORT failed
2016/04/20 15:29:10 kid1| Detected DEAD Parent: node3796185266
2016/04/20 15:29:10 kid1| Detected REVIVED Parent: node3796185266
2016/04/20 15:29:14 kid1| TCP connection PROXY_HOST/PROXY_PORT failed
2016/04/20 15:29:14 kid1| Detected DEAD Parent: node3796185266
2016/04/20 15:29:14 kid1| Detected REVIVED Parent: node3796185266

Проблема в том, что я не хочу, чтобы мои МЕРТВЫЕ родители когда-либо возродились (да, звучит странно).

А также я не совсем уверен в том, как squid определяет, что мой коллега не работает. Я отключил Запросы ICP для каждого партнера, установив no-query вариант и предоставленный порт 0, но dead_peer_timeout все еще думает, что мои сверстники мертвы после тайм-аута, несмотря на то, что он использует ICP согласно документам.

ОБНОВИТЬ: Добавлено squid -v вывод:

Squid Cache: Version 3.3.8
Ubuntu
configure options:  '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--libexecdir=${prefix}/lib/squid3' '--srcdir=.' '--disable-maintainer-mode' '--disable-dependency-tracking' '--disable-silent-rules' '--datadir=/usr/share/squid3' '--sysconfdir=/etc/squid3' '--mandir=/usr/share/man' '--enable-inline' '--enable-async-io=8' '--enable-storeio=ufs,aufs,diskd,rock' '--enable-removal-policies=lru,heap' '--enable-delay-pools' '--enable-cache-digests' '--enable-underscores' '--enable-icap-client' '--enable-follow-x-forwarded-for' '--enable-auth-basic=DB,fake,getpwnam,LDAP,MSNT,MSNT-multi-domain,NCSA,NIS,PAM,POP3,RADIUS,SASL,SMB' '--enable-auth-digest=file,LDAP' '--enable-auth-negotiate=kerberos,wrapper' '--enable-auth-ntlm=fake,smb_lm' '--enable-external-acl-helpers=file_userip,kerberos_ldap_group,LDAP_group,session,SQL_session,unix_group,wbinfo_group' '--enable-url-rewrite-helpers=fake' '--enable-eui' '--enable-esi' '--enable-icmp' '--enable-zph-qos' '--enable-ecap' '--disable-translation' '--with-swapdir=/var/spool/squid3' '--with-logdir=/var/log/squid3' '--with-pidfile=/var/run/squid3.pid' '--with-filedescriptors=65536' '--with-large-files' '--with-default-user=proxy' '--enable-linux-netfilter' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' 'LDFLAGS=-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security'