Поделиться через


<Элемент applicationPool> (параметры веб-сайта)

Задает параметры конфигурации, используемые ASP.NET для управления поведением в рамках всего процесса, когда приложение ASP.NET работает в режиме интеграции в IIS 7.0 или более поздней версии.

Важно!

Этот элемент и поддерживаемый им компонент работают только в том случае, если приложение ASP.NET размещено в IIS 7.0 или более поздних версий.

<Конфигурации>
  <System.web>
    <applicationPool>

Синтаксис

<applicationPool
    maxConcurrentRequestsPerCPU="5000"
    maxConcurrentThreadsPerCPU="0"
    requestQueueLimit="5000" />  

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут Описание
maxConcurrentRequestsPerCPU Указывает, сколько одновременных запросов ASP.NET допускает на ЦП.
maxConcurrentThreadsPerCPU Указывает, сколько одновременных потоков может быть запущено для пула приложений для каждого ЦП. Это является альтернативным способом управления ASP.NET параллелизмом, так как можно ограничить количество управляемых потоков, которые можно использовать на каждый ЦП для обслуживания запросов. По умолчанию этот параметр равен 0. Это означает, что ASP.NET не ограничивает количество потоков, которые можно создать на ЦП, хотя пул потоков CLR также ограничивает количество создаваемых потоков.
requestQueueLimit Указывает максимальное количество запросов, которые можно поместить в очередь для ASP.NET в одном процессе. Если два или более ASP.NET приложений выполняются в одном пуле приложений, этот параметр применяется к совокупному набору запросов к любому приложению в пуле приложений.

Дочерние элементы

Отсутствует.

Родительские элементы

Элемент Описание
<System.web> Содержит сведения о взаимодействии ASP.NET с ведущим приложением.

Комментарии

При запуске IIS 7.0 или более поздней версии в интегрированном режиме это сочетание элементов позволяет настроить, как ASP.NET управляет потоками и очередями запросов при размещении приложения в пуле приложений IIS. Если вы запускаете IIS 6 или IIS 7.0 в классическом режиме или в режиме ISAPI, эти параметры игнорируются.

Параметры applicationPool применяются ко всем пулам приложений, работающим в определенной версии платформа .NET Framework. Параметры содержатся в файле aspnet.config. Существует версия этого файла для версий 2.0 и 4.0 платформа .NET Framework. (Версии 3.0 и 3.5 платформа .NET Framework совместно использовать файл aspnet.config с версией 2.0.)

Важно!

При запуске IIS 7.0 в Windows 7 можно настроить отдельный файл aspnet.config для каждого пула приложений. Это позволяет настроить производительность потоков для каждого пула приложений.

maxConcurrentRequestsPerCPU Для параметра значение по умолчанию "5000" в платформа .NET Framework 4 фактически отключает регулирование запросов, управляемое ASP.NET, если у вас нет 5000 или более запросов на ЦП. Значение по умолчанию зависит от пула потоков СРЕДЫ CLR для автоматического управления параллелизмом на ЦП. Приложения, которые широко используют асинхронную обработку запросов или имеют много длительных запросов, заблокированных при сетевом вводе-выводе, выиграют от увеличенного ограничения по умолчанию в платформа .NET Framework 4. Установка maxConcurrentRequestsPerCPU нулевого значения отключает использование управляемых потоков для обработки запросов ASP.NET. Когда приложение выполняется в пуле приложений IIS, запросы остаются в потоке ввода-вывода IIS, поэтому параллелизм регулируется параметрами потока IIS.

Параметр requestQueueLimit работает так же, как requestQueueLimit и атрибут элемента processModel , который задается в файлах Web.config для ASP.NET приложений. Однако requestQueueLimit параметр в файле aspnet.config переопределяет requestQueueLimit параметр в файле Web.config. Иными словами, если заданы оба атрибута (по умолчанию это верно), requestQueueLimit параметр в файле aspnet.config имеет приоритет.

Пример

В следующем примере показано, как настроить ASP.NET поведение на уровне процесса в файле aspnet.config в следующих случаях:

  • Приложение размещается в пуле приложений IIS 7.0.

  • IIS 7.0 работает в интегрированном режиме.

  • Приложение использует платформа .NET Framework 3.5 с пакетом обновления 1 (SP1) или более поздней версии.

Значения в примере являются значениями по умолчанию.

<configuration>  
  <system.web>  
    <applicationPool
        maxConcurrentRequestsPerCPU="5000"  
        maxConcurrentThreadsPerCPU="0"
        requestQueueLimit="5000" />  
  </system.web>  
</configuration>  

См. также раздел