структура HTTP_TIMEOUT_LIMIT_INFO (http.h)
Структура HTTP_TIMEOUT_LIMIT_INFO определяет ограничения времени ожидания подключения для конкретного приложения.
Эту структуру необходимо использовать при задании или запросе HttpServerTimeoutsProperty в группе URL-адресов, сеансе сервера или очереди запросов.
Синтаксис
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
Время в секундах, разрешенное для прибытия тела сущности запроса.
API HTTP-сервера включает этот таймер, если запрос содержит тело сущности. Для срока действия таймера изначально задано настроенное значение. Когда API HTTP-сервера получает дополнительные данные, указывающие на запрос, он сбрасывает таймер, чтобы предоставить соединению еще один интервал.
DrainEntityBody
Время (в секундах) ДЛЯ API HTTP-сервера для очистки тела сущности в Keep-Alive подключении.
При подключении Keep-Alive после отправки приложением ответа на запрос и до полного поступления тела сущности запроса API HTTP-сервера начинает очищать оставшуюся часть тела сущности для получения другого потенциально конвейерного запроса от клиента. Если время очистки оставшегося тела сущности превышает допустимый период, время ожидания соединения истекает.
RequestQueue
Время (в секундах) для того, чтобы запрос оставался в очереди запросов, прежде чем приложение заберет его.
IdleConnection
Время в секундах, разрешенное для бездействия подключения.
Это время ожидания применяется только после того, как первый запрос на подключение направляется в приложение. Дополнительные сведения см. в разделе «Примечания».
HeaderWait
Время (в секундах) для API HTTP-сервера для анализа заголовка запроса.
Это время ожидания применяется только после того, как первый запрос на подключение направляется в приложение. Дополнительные сведения см. в разделе «Примечания».
MinSendRate
Минимум частоты отправки, в байтах в секунду, для ответа. Скорость отправки ответов по умолчанию составляет 150 байт в секунду.
Чтобы отключить этот таймер, задайте для параметра MinSendRate значение MAXULONG.
Комментарии
Эта структура используется в функциях HttpQueryServerSessionProperty и HttpSetServerSessionProperty для установки или запроса времени ожидания подключения. В следующей таблице перечислены значения времени ожидания по умолчанию.
Таймер | API HTTP-сервера по умолчанию | Широкая конфигурация API HTTP-сервера | Конфигурация конкретного приложения |
---|---|---|---|
EntityBody | 2 минуты | Нет | Да |
DrainEntityBody | 2 минуты | Нет | Да |
RequestQueue | 2 минуты | Нет | Да |
IdleConnection | 2 минуты | Да | Ограниченный |
ЗаголовокWait | 2 минуты | Да | Ограниченный |
MinSendRate | 150 байт в секунду | Нет | Да |
Вызов HttpSetServerSessionProperty или HttpSetUrlGroupProperty для настройки времени ожидания подключения влияет только на вызывающее приложение и не устанавливает ограничения времени ожидания драйвера. Таймеры ожидания бездействующего подключения и заголовка можно настроить для всех приложений HTTP, вызвав HttpSetServiceConfiguration. Для настройки широкого времени ожидания API HTTP-сервера требуются права администратора. Широкие конфигурации API HTTP-сервера влияют на все приложения HTTP на компьютере и сохраняются при завершении работы компьютера.
Таймеры IdleConnection и HeaderWait для конкретного приложения задаются на ограниченной основе. API HTTP-сервера не может определить очередь запросов или группу URL-адресов, с которыми связан запрос, пока не будут проанализированы заголовки. Таким образом, API HTTP-сервера применяет таймеры IdleConnection и HeaderWait по умолчанию для первого запроса к подключению. Последующие запросы к Keep-Alive подключению будут использовать время ожидания конкретного приложения.
Установка времени ожидания для сеанса сервера влияет на все группы URL-адресов в сеансе сервера. Однако если группа URL-адресов настроила время ожидания, параметр группы URL-адресов имеет приоритет над конфигурацией сеанса сервера.
Установка нулевого времени ожидания для сеанса сервера приводит к тому, что API HTTP-сервера отменить изменения значение по умолчанию для этого таймера. Для таймеров, заданных для группы URL-адресов, используется время ожидания сеанса сервера, если оно имеется. В противном случае используется API HTTP-сервера по умолчанию.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Верхняя часть | http.h |
См. также раздел
Структуры API HTTP-сервера версии 2.0