Могу ли я изменить порог времени ожидания веб-страницы в ASP.NET для одной страницы? - PullRequest
10 голосов
/ 10 февраля 2010

У нас есть отчет, который создается и обрабатывается в режиме реального времени, когда пользователь нажимает на ссылку.

Конечно, после запуска мы обнаружили, что у некоторых пользователей достаточно данных, чтобы сделать отчет достаточно медленным, чтобы истекло время ожидания.

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

Есть ли способ продлить период ожидания для одной обслуживаемой веб-страницы?

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

Я также нашел это локально, но в итоге он не ответил на вопрос (хотя он предлагал более долгосрочное решение, к которому мы будем двигаться).

1 Ответ

10 голосов
/ 10 февраля 2010

Если страница находится (или может быть перемещена в) в своем собственном каталоге, вы можете поместить web.config в этот каталог только с помощью executeTimeout или любыми другими параметрами, которые вы хотите расширить. * 1001 Т.е. *

<?xml version="1.0"?>
<configuration>
    <appSettings/>
    <connectionStrings/>
    <system.web>
      <!-- allow for intensive calculations in reports -->
      <httpRuntime executionTimeout="6000" /> 
    </system.web>
</configuration>

Согласно одному из комментариев к первой ссылке, которую вы указали , настройка Server.ScriptTimeout = 3600; не является глобальным изменением, поэтому вы можете пересмотреть и эту опцию.

Gerald wrote re: Тайм-аут ASP.NET страница
в среду, 29 ноября 2006 г., 15:38
я решил проверить обоснованность этого написав тестовую программу, содержащую две страницы. На одной из страниц я нахожусь установка свойства ScriptTimeout в 3000, а на другой странице Стоимость имущества не изменилась. Оказывается, после загрузки первая страница, затем вторая страница, значение ScriptTimeout в вторая страница возвращается к значениям по умолчанию значение (90 секунд для выпуска, 30000000 для отладки) или набор значений в файлах конфигурации. В заключение, ScriptTimeout свойство, когда изменяется на одной странице, не изменяется на глобальном уровне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...