출처: http://support.microsoft.com/kb/183110/ko
요약
추가 정보
example)
http://newsgroups.cryer.info/microsoft/public.inetsdk.programming.wininet/200707/0707162258.html
#include "stdafx.h"
#include <windows.h>
#include <wininet.h>
int _tmain(int argc, _TCHAR* argv[])
{
unsigned long nSize = sizeof(DWORD);
DWORD http1_0 = 4;
DWORD http1_1 = 2;
if(!InternetSetOption(NULL, INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER,
&http1_0, nSize))
{
return -1;
}
if(!InternetSetOption(NULL, INTERNET_OPTION_MAX_CONNS_PER_SERVER,
&http1_1, nSize))
{
return -1;
}
if(!InternetSetOption(NULL, INTERNET_OPTION_SETTINGS_CHANGED, NULL,
0))
{
return -1;
}
if(!InternetSetOption(NULL, INTERNET_OPTION_REFRESH, NULL, 0))
{
return -1;
}
return 0;
}
요약
WinInet은 단일 HTTP 서버에 시도되는 동시 연결 수를 제한합니다. 이 한도를 초과하면 현재 연결 중 하나가 완료할 때까지 요청이 차단됩...
WinInet은 단일 HTTP 서버에 시도되는 동시 연결 수를 제한합니다. 이 한도를 초과하면 현재 연결 중 하나가 완료할 때까지 요청이 차단됩니다. 이것은 의도적으로 설계된 동작으로 HTTP 사양 및 업계 표준과 일치합니다.
추가 정보
WinInet은 단일 HTTP 1.0 서버에 대한 동시 연결 수를 4개로 제한합니다. 단일 HTTP 1.1 서버에 대한 동시 연결은 2개로 제한...
WinInet은 단일 HTTP 1.0 서버에 대한 동시 연결 수를 4개로 제한합니다. 단일 HTTP 1.1 서버에 대한 동시 연결은 2개로 제한됩니다. HTTP 1.1 사양(RFC2616)에서는 연결 수를 2개로 제한할 것을 요구합니다. 그러나 HTTP 1.0에 대한 4개의 연결 수 제한은 많은 웹 브라우저에서 사용하는 표준과 일치하는 자체 제한입니다.
응용 프로그램에 대한 이러한 제한은 HttpSendRequest 및 InternetOpenURL 같은 호출이 완료되는 데 오래 걸리는 것을 통해서 알 수 있습니다. 이러한 지연은 해당 호출에서 요청을 보내기 전에 이전 연결이 해제되기를 기다리기 때문에 발생합니다.
다음 레지스트리 항목을 만들고 설정하여 WinInet이 이 제한을 초과하도록 구성할 수 있습니다.
참고 이러한 설정을 변경하면 WinInet이 HTTP 프로토콜 사양의 권고안에 맞지 않게 됩니다. 꼭 필요할 때만 설정을 변경해야 하며 다음 설정이 적용될 때는 표준 웹 검색을 수행하지 않아야 합니다.
Internet Explorer 5에서는 NULL 핸들에 대해 다음 플래그로 InternetSetOption 함수를 호출하여 연결 제한을 프로그래밍 방식으로 변경할 수 있습니다. 이렇게 하면 프로세스 전체에 대한 연결 제한이 변경됩니다.
Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹 (http://support.microsoft.com/newsgroups/default.aspx) 에 참여하시기 바랍니다.
응용 프로그램에 대한 이러한 제한은 HttpSendRequest 및 InternetOpenURL 같은 호출이 완료되는 데 오래 걸리는 것을 통해서 알 수 있습니다. 이러한 지연은 해당 호출에서 요청을 보내기 전에 이전 연결이 해제되기를 기다리기 때문에 발생합니다.
다음 레지스트리 항목을 만들고 설정하여 WinInet이 이 제한을 초과하도록 구성할 수 있습니다.
참고 이러한 설정을 변경하면 WinInet이 HTTP 프로토콜 사양의 권고안에 맞지 않게 됩니다. 꼭 필요할 때만 설정을 변경해야 하며 다음 설정이 적용될 때는 표준 웹 검색을 수행하지 않아야 합니다.
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
MaxConnectionsPerServer REG_DWORD(기본값 2)
단일 HTTP 1.1 서버에 대한 동시 요청 수를 설정합니다.
MaxConnectionsPer1_0Server REG_DWORD(기본값 4)
단일 HTTP 1.0 서버에 대한 동시 요청 수를 설정합니다.
이러한 설정은 특정 사용자에게만 적용되고 해당 컴퓨터에 로그온하는 다른 사용자에게는 영향을 미치지 않습니다.MaxConnectionsPerServer REG_DWORD(기본값 2)
단일 HTTP 1.1 서버에 대한 동시 요청 수를 설정합니다.
MaxConnectionsPer1_0Server REG_DWORD(기본값 4)
단일 HTTP 1.0 서버에 대한 동시 요청 수를 설정합니다.
Internet Explorer 5에서는 NULL 핸들에 대해 다음 플래그로 InternetSetOption 함수를 호출하여 연결 제한을 프로그래밍 방식으로 변경할 수 있습니다. 이렇게 하면 프로세스 전체에 대한 연결 제한이 변경됩니다.
INTERNET_OPTION_MAX_CONNS_PER_SERVER INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER
참고 프로세스에 서버에 대한 연결이 설정되어 있는 경우 InternetSetOption 함수를 호출하여 연결 제한을 변경해도 동일한 서버의 후속 연결에는 영향을 주지 않습니다. 이는 이전 연결을 끊은 후에 InternetSetOption을 호출하는 경우에도 해당됩니다. 연결 제한은 다른 모든 서버에 영향을 줍니다.Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹 (http://support.microsoft.com/newsgroups/default.aspx) 에 참여하시기 바랍니다.
본 문서의 정보는 다음의 제품에 적용됩니다.
- Microsoft Internet Explorer (Programming) 6.0
- Microsoft Internet Explorer 5.5
- Microsoft Internet Explorer 5.0
- Microsoft Internet Explorer 4.01 서비스 팩 2
- Microsoft Internet Explorer 4.0 128-Bit Edition
example)
http://newsgroups.cryer.info/microsoft/public.inetsdk.programming.wininet/200707/0707162258.html
#include "stdafx.h"
#include <windows.h>
#include <wininet.h>
int _tmain(int argc, _TCHAR* argv[])
{
unsigned long nSize = sizeof(DWORD);
DWORD http1_0 = 4;
DWORD http1_1 = 2;
if(!InternetSetOption(NULL, INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER,
&http1_0, nSize))
{
return -1;
}
if(!InternetSetOption(NULL, INTERNET_OPTION_MAX_CONNS_PER_SERVER,
&http1_1, nSize))
{
return -1;
}
if(!InternetSetOption(NULL, INTERNET_OPTION_SETTINGS_CHANGED, NULL,
0))
{
return -1;
}
if(!InternetSetOption(NULL, INTERNET_OPTION_REFRESH, NULL, 0))
{
return -1;
}
return 0;
}