0

Я обнаружил, что вы можете настроить тайм-аут httpResponse в web.config для проекта .net.Почему это плохая идея иметь длинные тайм-ауты httpResponse?

<httpRuntime requestValidationMode="2.0" requestValidationType="SampleRequestValidator" maxRequestLength="2097151" executionTimeout="3600" /> 

Мой вопрос заключается в следующем: Почему это плохая идея, чтобы иметь действительно длинный тайм-аут установить и то, что должно быть идеальным верхний предел? Причина, по которой мне нужно настроить это значение, заключается в большом количестве времени, которое требуется для сжатия больших файлов, прежде чем их можно будет передавать в клиентский браузер. Цените ввод!

ответ

1

Вы не контролируете всю цепочку запросов. Браузер и любые прокси-серверы между браузером и вашим сервером могут налагать свои собственные значения таймаута на соединение, которое может быть короче вашего. Я бы посмотрел на то, чтобы сделать вашу обработку асинхронной и не связывать одно соединение, ожидающее завершения длительной операции.

+0

Асинхронно, вы имеете в виду решение типа «длинного опроса», в котором браузер создает соединение AJAX, чтобы ждать, пока файл будет готов к загрузке? Возможно, я думал об использовании SignalR. – TheDude

+0

Да, точно. Я использую SignalR для подобных вещей в последнее время, отлично работает. – jlew

+0

Удивительный! Спасибо за совет. – TheDude

Смежные вопросы