다음을 통해 공유


HTTP_TIMEOUT_LIMIT_INFO 구조체(http.h)

HTTP_TIMEOUT_LIMIT_INFO 구조는 애플리케이션별 연결 제한 시간을 정의합니다.

이 구조는 URL 그룹, 서버 세션 또는 요청 큐에서 HttpServerTimeoutsProperty 를 설정하거나 쿼리할 때 사용해야 합니다.

구문

typedef struct _HTTP_TIMEOUT_LIMIT_INFO {
  HTTP_PROPERTY_FLAGS Flags;
  USHORT              EntityBody;
  USHORT              DrainEntityBody;
  USHORT              RequestQueue;
  USHORT              IdleConnection;
  USHORT              HeaderWait;
  ULONG               MinSendRate;
} HTTP_TIMEOUT_LIMIT_INFO, *PHTTP_TIMEOUT_LIMIT_INFO;

멤버

Flags

속성이 있는지 여부를 지정하는 HTTP_PROPERTY_FLAGS 구조체입니다.

EntityBody

요청 엔터티 본문이 도착할 때까지 허용된 시간(초)입니다.

요청에 엔터티 본문이 있으면 HTTP Server API가 이 타이머를 켭니다. 타이머 만료는 처음에 구성 된 값으로 설정 됩니다. HTTP 서버 API는 요청에 대한 추가 데이터 표시를 받으면 타이머를 다시 설정하여 연결에 다른 간격을 부여합니다.

DrainEntityBody

HTTP 서버 API가 Keep-Alive 연결에서 엔터티 본문을 드레이닝하는 데 허용되는 시간(초)입니다.

Keep-Alive 연결에서 애플리케이션이 요청에 대한 응답을 보낸 후 요청 엔터티 본문이 완전히 도착하기 전에 HTTP Server API는 클라이언트에서 파이프라인된 다른 요청에 도달하기 위해 엔터티 본문의 나머지 부분을 드레이닝하기 시작합니다. 에 나머지 엔터티 본문을 비우는 데 허용 되는 기간을 초과 하는 경우 연결 시간이 초과 됩니다.

RequestQueue

애플리케이션이 요청을 선택하기 전에 요청 큐에 남아 있는 데 허용되는 시간(초)입니다.

IdleConnection

유휴 연결에 허용된 시간(초)입니다.

이 시간 제한은 연결에 대한 첫 번째 요청이 애플리케이션으로 라우팅된 후에만 적용됩니다. 자세한 내용은 주의 섹션을 참조하세요.

HeaderWait

HTTP 서버 API가 요청 헤더를 구문 분석하는 데 허용되는 시간(초)입니다.

이 시간 제한은 연결에 대한 첫 번째 요청이 애플리케이션으로 라우팅된 후에만 적용됩니다. 자세한 내용은 주의 섹션을 참조하세요.

MinSendRate

응답의 최소 전송 속도(초당 바이트)입니다. 기본 응답 전송 속도는 초당 150바이트입니다.

이 타이머를 사용하지 않도록 설정하려면 MinSendRateMAXULONG으로 설정합니다.

설명

이 구조체는 HttpQueryServerSessionPropertyHttpSetServerSessionProperty 함수에서 연결 시간 제한을 설정하거나 쿼리하는 데 사용됩니다. 다음 표에서는 기본 시간 제한을 나열합니다.

타이머 HTTP 서버 API 기본값 HTTP 서버 API 전체 구성 애플리케이션별 구성
EntityBody 2분 아니요
DrainEntityBody 2분 아니요
RequestQueue 2분 아니요
IdleConnection 2분 Yes 제한됨
HeaderWait 2분 Yes 제한됨
MinSendRate 150바이트/초
 

HttpSetServerSessionProperty 또는 HttpSetUrlGroupProperty를 호출하여 연결 시간 제한을 구성하면 호출 애플리케이션에만 영향을 줍니다. 드라이버 전체 시간 제한은 설정되지 않습니다. HttpSetServiceConfiguration을 호출하여 모든 HTTP 애플리케이션에 대해 유휴 연결 및 헤더 대기 타이머를 구성할 수 있습니다. HTTP Server API 전체 시간 제한을 구성하려면 관리 권한이 필요합니다. HTTP 서버 API 전체 구성은 컴퓨터의 모든 HTTP 애플리케이션에 영향을 미치며 컴퓨터가 종료되면 유지됩니다.

애플리케이션별 IdleConnectionHeaderWait 타이머는 제한적으로 설정됩니다. HTTP 서버 API는 헤더가 구문 분석될 때까지 요청이 연결된 요청 큐 또는 URL 그룹을 확인할 수 없습니다. 따라서 HTTP 서버 API는 연결의 첫 번째 요청에 대해 기본 IdleConnectionHeaderWait 타이머를 적용합니다. Keep-Alive 연결에 대한 후속 요청은 애플리케이션별 시간 제한을 사용합니다.

서버 세션에 시간 제한을 설정하면 서버 세션 아래의 모든 URL 그룹에 영향을 줍니다. 그러나 URL 그룹이 시간 제한을 구성한 경우 URL 그룹에 대한 설정이 서버 세션 구성보다 우선합니다.

서버 세션에서 시간 제한을 0으로 설정하면 HTTP 서버 API가 해당 타이머의 기본값으로 되돌리기. URL 그룹에 설정된 타이머의 경우 서버 세션 시간 제한이 있는 경우 사용되며, 그렇지 않으면 HTTP 서버 API 기본값이 사용됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
머리글 http.h

추가 정보

HTTP 서버 API 버전 2.0 구조체

HTTP_SERVER_PROPERTY

HttpQueryRequestQueueProperty

HttpQueryServerSessionProperty

HttpQueryUrlGroupProperty

HttpSetRequestQueueProperty

HttpSetServerSessionProperty

HttpSetUrlGroupProperty