Share via


<applicationPool> Öğesi (Web Ayarları)

bir ASP.NET uygulaması IIS 7.0 veya sonraki bir sürümde Tümleşik modda çalışırken işlem genelindeki davranışı yönetmek için ASP.NET tarafından kullanılan yapılandırma ayarlarını belirtir.

Önemli

Bu öğe ve desteklediği özellik yalnızca ASP.NET uygulamanız IIS 7.0 veya sonraki sürümlerde barındırılıyorsa çalışır.

<Yapılandırma>
  <system.web>
    <applicationPool>

Syntax

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

Öznitelikler ve Öğeler

Öznitelikler, alt ve üst öğeler aşağıdaki bölümlerde açıklanmaktadır.

Öznitelikler

Öznitelik Açıklama
maxConcurrentRequestsPerCPU CPU başına izin ASP.NET eşzamanlı istek sayısını belirtir.
maxConcurrentThreadsPerCPU Her CPU için bir uygulama havuzu için kaç eşzamanlı iş parçacığının çalıştırılabileceğini belirtir. İstekleri sunmak için CPU başına kullanılabilecek yönetilen iş parçacığı sayısını sınırlayabileceğinizden bu, ASP.NET eşzamanlılığı denetlemek için alternatif bir yol sağlar. Varsayılan olarak bu ayar 0'dır, yani CLR iş parçacığı havuzu da oluşturulabilecek iş parçacığı sayısını sınırlasa da ASP.NET CPU başına oluşturulabilecek iş parçacığı sayısını sınırlamaz.
requestQueueLimit Tek bir işlemdeki ASP.NET için kuyruğa alınabilecek en fazla istek sayısını belirtir. İki veya daha fazla ASP.NET uygulama tek bir uygulama havuzunda çalıştırıldığında, uygulama havuzundaki herhangi bir uygulamaya yapılan birikmeli istek kümesi bu ayara tabidir.

Alt Öğeler

Yok.

Üst Öğeler

Öğe Açıklama
<system.web> ASP.NET bir konak uygulamasıyla nasıl etkileşimde bulunduğu hakkında bilgi içerir.

Açıklamalar

Tümleşik modda IIS 7.0 veya sonraki bir sürümü çalıştırdığınızda, bu öğe bileşimi ASP.NET uygulama bir IIS uygulama havuzunda barındırıldığında iş parçacığı ve kuyruk isteklerini nasıl yöneteceklerini yapılandırmanıza olanak tanır. IIS 6 veya IIS 7.0'ı Klasik modda veya ISAPI modunda çalıştırırsanız, bu ayarlar yoksayılır.

Ayarlar, applicationPool .NET Framework belirli bir sürümünde çalışan tüm uygulama havuzları için geçerlidir. Ayarlar bir aspnet.config dosyasında yer alır. .NET Framework 2.0 ve 4.0 sürümleri için bu dosyanın bir sürümü vardır. (.NET Framework 3.0 ve 3.5 sürümleri, aspnet.config dosyasını sürüm 2.0 ile paylaşır.)

Önemli

Windows 7'de IIS 7.0 çalıştırıyorsanız, her uygulama havuzu için ayrı bir aspnet.config dosyası yapılandırabilirsiniz. Bu, her uygulama havuzu için iş parçacıklarının performansını uyarlamanızı sağlar.

maxConcurrentRequestsPerCPU Ayar için, .NET Framework 4'teki varsayılan "5000" ayarı, CPU başına 5000 veya daha fazla isteğiniz olmadığı sürece, ASP.NET tarafından denetlenen istek azaltmayı etkin bir şekilde kapatır. Varsayılan ayar bunun yerine, CPU başına eşzamanlılığı otomatik olarak yönetmek için CLR iş parçacığı havuzuna bağlıdır. Zaman uyumsuz istek işlemeyi kapsamlı bir şekilde kullanan veya ağ G/Ç'sinde engellenen çok sayıda uzun süre çalışan isteği olan uygulamalar, .NET Framework 4'teki artan varsayılan sınırdan yararlanacaktır. Sıfır olarak ayarlanması maxConcurrentRequestsPerCPU , ASP.NET istekleri işlemek için yönetilen iş parçacıklarının kullanımını kapatır. Bir uygulama BIR IIS uygulama havuzunda çalıştığında, istekler IIS G/Ç iş parçacığında kalır ve bu nedenle eşzamanlılık IIS iş parçacığı ayarları tarafından kısıtlanır.

ayarı, requestQueueLimit ASP.NET uygulamalar için Web.config dosyalarında ayarlanan processModel öğesinin özniteliğiyle aynı şekilde requestQueueLimit çalışır. Ancak, requestQueueLimit bir aspnet.config dosyasındaki ayar, Web.config bir dosyadaki ayarı geçersiz kılar requestQueueLimit . Başka bir deyişle, her iki öznitelik de ayarlanırsa (varsayılan olarak bu doğrudur), requestQueueLimit aspnet.config dosyasındaki ayar önceliklidir.

Örnek

Aşağıdaki örnekte, aşağıdaki durumlarda aspnet.config dosyasında işlem genelinde ASP.NET davranışın nasıl yapılandırılır gösterilmektedir:

  • Uygulama bir IIS 7.0 uygulama havuzunda barındırılır.

  • IIS 7.0 Tümleşik modda çalışıyor.

  • Uygulama, .NET Framework 3.5 SP1 veya sonraki bir sürümü kullanıyor.

Örnekteki değerler varsayılan değerlerdir.

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

Ayrıca bkz.