executeTimeout для отправки ответа

Когда вы устанавливаете httpRuntime executeTimeout, это обрезает ответ, который уже был частично отправлен клиенту?

Я заметил в очереди запросов IIS, что иногда есть некоторые запросы, которые выполняются намного дольше, чем наш параметр executeTimeout, и состояние - SendResponse в модуле IIS Web Core. Включает ли executeTimeout время, необходимое для отправки ответа клиенту?

Единственная документация, которую я смог найти, находится на следующей странице в этом фрагменте, но она относится к 2003 году для более старых версий IIS: https://msdn.microsoft.com/en-us/library/ms972959.aspx

Время выполнения запроса. Количество миллисекунд, использованных для выполнения последнего запроса. В версии 1.0 Framework время выполнения начинается, когда рабочий процесс получает запрос, и останавливается, когда ASP.NET ISAPI отправляет HSE_REQ_DONE_WITH_SESSION в IIS. Для IIS версии 5 это включает время, необходимое для записи ответа клиенту, но для IIS версии 6 буферы ответов отправляются асинхронно, и поэтому время, затраченное на запись ответа клиенту, не учитывается.

Версия IIS 7.5 на Windows Server 2008 R2, на которой запущено веб-приложение ASP.NET 4.5, а для debug установлено значение false.

1 ответ

Я прошу прощения за то, что не обратился к вашему вопросу напрямую, но есть кое-что, что может помочь с вашей проблемой:

Есть minBytesPerSecond настройка для установки нижней границы скорости передачи в <webLimits> раздел. Я подозреваю, что изначально он был добавлен в качестве защиты от SlowLoris, но вы можете увеличить значение, чтобы исключить пользователей, чьи каналы не могут поддерживать ваш сайт. Значение по умолчанию - 240, что довольно мало.

Другие вопросы по тегам