2014-11-07 3 views
3

나는 변화에 대한 원격 웹 사이트를 지속적으로 검사하는 응용 프로그램을 만들고 있습니다. System.Net.Http.HttpClient을 사용하고 있지만 연결을 다시 사용하는 것을 지원하지 않는 것으로 나타났습니다.여러 요청에서 HTTP 연결을 재사용하는 방법은 무엇입니까?

요청은 하나씩 실행되지만 일반적으로 완료하려면 약 250ms가 소요됩니다. "Reuse server connections"옵션을 켜고 Fiddler를 켜면 요청 당 150 밀리 초 정도로 떨어집니다.

내가 HttpClient을 잘못 구성했다고 생각하지만 문제를 해결하는 데 도움이되는 MSDN 참조에서 정보를 찾을 수 없습니다.

+0

에서 HTTP 연결 풀링은 당신이 대답 볼 수 있습니다 될 수있다... http://stackoverflow.com을/questions/15085708/is-http-connection-pooling-possible – sdeep

+0

HttpWebRequest는 "4.5.2 이상에서 폐기되었습니다."http://msdn.microsoft.com/en-us/library/cc190216% 28v = vs.110 % 29.aspx – stil

+0

실제로 HTTP1.0을 생각하고 있습니다. 답을 찾고 있습니다. –

답변

0

HttpWebRequest의 경우 KeepAliveproperty을 설정해야합니다.

HttpClient는 비슷한 속성을 제공하지 않지만 기본적으로 Keepalive를 사용하려고 시도합니다. 요청 및 응답 헤더 란 무엇입니까? 서버가 명시 적으로 Connection: Keep-alive 응답 헤더를 보내는 경우 (HTTP는/1.0은 킵 얼라이브를 지원

Connection keep-alive not working with System.Net.Http.HttpClient on certain hosts가 관련이있을 수 있습니다

관련 문제