2013-12-11 4 views
0

나는 HAProxy로 회전 프록시를 성공적으로 설정했습니다.HAProxy를 더 빨리 회전시키는 방법은 무엇입니까?

다음은 haproxy.cfg의 일부입니다.

frontend RotatingProxies1000 
     bind 0.0.0.0:1000 
     default_backend Proxies1000 
     option http_proxy 
     option httpclose 
     option http-use-proxy-header 

backend Proxies1000 
     server fp0 1.1.1.1:8800 
     server fp1 2.2.2.2:8800 
     server fp2 3.3.3.3:8800 
     server fp3 4.4.4.4:8800 
     ... 
     balance roundrobin 

하지만 회전 속도가 매우 느립니다.

나는 파이어 폭스에서 테스트를했고, 나는 클라이언트 주소를 http://whatismyipaddress.com/에 올려다 보았다.

먼저 1.1.1.1입니다. 나는 여전히 페이지를 새로 고쳤는데, 여전히 1.1.1.1, 다시 새로 고침, 여전히 1.1.1.1. 1 분 후에 다시 채워서 2.2.2.2가되었습니다.

HAProxy를 더 빨리 회전시키는 방법은 무엇입니까?

Baptiste와 Willy의 제안에 따르면. "mode http"를 추가하고 "http_proxy"옵션을 제거하려고했습니다. 현재 설정은하지만 IP를 회전 여전히 느린 :

global 
     log 127.0.0.1 local0 notice 
     maxconn 4096 
     user haproxy 
     group haproxy 
     daemon 

defaults 
     log  global 
     mode http 
     option httplog 
     option dontlognull 
     retries 3 
     maxconn 2000 
     contimeout  5000 
     clitimeout  50000 
     srvtimeout  50000 

frontend RotatingProxies1000 
     bind 0.0.0.0:1000 
     default_backend Proxies1000 
     #option http_proxy 
     mode http 
     option httpclose 
     option http-use-proxy-header 

backend Proxies1000 
     server fp0 1.1.1.1:8800 
     server fp1 2.2.2.2:8800 
     server fp2 3.3.3.3:8800 
     server fp3 4.4.4.4:8800 
     ... 
     balance roundrobin 

답변

0

귀하의 구성은 시간 제한과 HTTP 모드를 벗어났습니다.

내 생각에 브라우저는 구성 때문에 HAProxy와의 연결을 닫지 않으므로 새로운 연결이 설정 될 때까지 HAProxy가 다른 서버와 균형을 맞출 수 없습니다.

+0

기본 섹션을 붙여 넣지 않았습니다. 시간 초과가 있습니다. "httpclose"하지 않으면 클라이언트가 강제로 연결 해제됩니까? – redice

+0

Baptiste는 "모드 http"도 놓쳤다 고 말했습니다. 일반적으로이 구성으로 경고해야합니다. 또한 "옵션 http_proxy"를 제거해야합니다.이 옵션은 백엔드에서만로드 균형 조정을 비활성화하고 요청에서 서버의 주소를 선택하는 데 사용됩니다. –

+0

감사합니다. "http http"를 추가하고 "http_proxy"옵션을 주석 처리하려고 시도했지만 IP는 여전히 회전 속도가 느립니다. – redice

관련 문제