단일 TCP 연결을 통해 여러 요청을 수행하기 위해 PHP cURL HTTP 파이프 라이닝 기능을 사용하려고합니다. 이 페이지를 참조하십시오 http://www.php.net/manual/en/function.curl-multi-setopt.php 다음을 추가하여 curl_multi_exec()에 pipleining을 활성화하고 있습니다 :HTTP 파이프 라이닝을 사용하여 단일 TCP 소켓을 통해 PHP cURL 핸들을 보내는 방법은 무엇입니까?
curl_multi_setopt ($ mh, CURLMOPT_PIPELINING, 1);
내가 여기에 나열하는 큰 소스를 게시하고 싶지 않아,하지만 당신은 쉽게 보거나 내가 '사용 모니터링 TCP 연결의 경우 여기 https://github.com/anovikov1984/pipelining-example
내 GitHub의에서 전체 예제를 체크 아웃 할 수에서 netstat -t -u -c '명령을 사용합니다.
위에서 언급 한 내 레포에는 두 개의 스크립트가 있습니다. 하나는 Ruby 용이고 다른 하나는 PHP 용입니다. Ruby 버전은 원하는대로 작동하며 3 GET 요청에 대해 단일 TCP 연결 만 엽니 다. 그러나 PHP cURL 버전은 curl_multi_exec() 함수에 전달 된 cURL 핸들 수만큼의 TCP 연결을 엽니 다.
내가 뭘 잘못하고 있니?
어쩌면 추가 'KEEP-ALIVE' 도움이? 확실하지 않습니다 .. 기본적으로 활성화되어 있다고 생각합니다. 웹 서버를 추가 할 수 있습니까? 더 빨라요 아니면 fastcgi 또는 mod 기반입니다. – DanFromGermany
몇 개의 tcp 연결이 안정화되어 있는지 신경을 써야하는 이유는 무엇입니까? –