Elemen <applicationPool> (Pengaturan Web)
Menentukan pengaturan konfigurasi yang digunakan oleh ASP.NET untuk mengelola perilaku di seluruh-proses saat aplikasi ASP.NET berjalan dalam mode Terintegrasi pada IIS 7.0 atau versi yang lebih baru.
Penting
Elemen ini dan fitur yang didukungnya hanya berfungsi jika aplikasi ASP.NET Anda dihosting di IIS 7.0 atau versi yang lebih baru.
<konfigurasi>
<system.web>
<applicationPool>
Sintaks
<applicationPool
maxConcurrentRequestsPerCPU="5000"
maxConcurrentThreadsPerCPU="0"
requestQueueLimit="5000" />
Atribut dan Elemen
Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.
Atribut
Atribut | Deskripsi |
---|---|
maxConcurrentRequestsPerCPU |
Menentukan berapa banyak permintaan simultan yang ASP.NET izinkan per CPU. |
maxConcurrentThreadsPerCPU |
Menentukan berapa banyak utas simultan yang dapat berjalan untuk kumpulan aplikasi untuk setiap CPU. Ini menyediakan cara alternatif untuk mengontrol konkurensi ASP.NET, karena Anda dapat membatasi jumlah utas terkelola yang dapat digunakan per CPU untuk melayani permintaan. Secara default pengaturan ini adalah 0, yang berarti bahwa ASP.NET tidak membatasi jumlah utas yang dapat dibuat per CPU, meskipun kumpulan utas CLR juga membatasi jumlah utas yang dapat dibuat. |
requestQueueLimit |
Menentukan jumlah maksimum permintaan yang dapat diantrekan untuk ASP.NET dalam satu proses. Ketika dua atau lebih aplikasi ASP.NET berjalan dalam satu kumpulan aplikasi, kumpulan permintaan kumulatif yang dibuat untuk aplikasi apa pun di kumpulan aplikasi tunduk pada pengaturan ini. |
Elemen Anak
Tidak ada.
Elemen Induk
Elemen | Deskripsi |
---|---|
<system.web> | Berisi informasi tentang bagaimana ASP.NET berinteraksi dengan aplikasi host. |
Keterangan
Saat Anda menjalankan IIS 7.0 atau versi yang lebih baru dalam mode Terintegrasi, kombinasi elemen ini memungkinkan Anda mengonfigurasi cara ASP.NET mengelola utas dan cara mengantre permintaan saat ASP.NET dihosting di kumpulan aplikasi IIS. Jika Anda menjalankan IIS 6 atau menjalankan IIS 7.0 dalam mode Klasik atau dalam mode ISAPI, pengaturan ini diabaikan.
Pengaturan applicationPool
berlaku untuk semua kumpulan aplikasi yang berjalan pada versi .NET Framework tertentu. Pengaturan ini terdapat dalam file aspnet.config. Ada versi file ini untuk versi 2.0 dan 4.0 dari .NET Framework. (Versi 3.0 dan 3.5 dari .NET Framework berbagi file aspnet.config dengan versi 2.0.)
Penting
Jika Anda menjalankan IIS 7.0 di Windows 7, Anda dapat mengonfigurasi file aspnet.config terpisah untuk setiap kumpulan aplikasi. Ini memungkinkan Anda menyesuaikan performa utas untuk setiap kumpulan aplikasi.
Untuk pengaturan maxConcurrentRequestsPerCPU
, pengaturan default "5000" di .NET Framework 4 secara efektif mematikan pembatasan permintaan yang dikendalikan oleh ASP.NET, kecuali Anda benar-benar memiliki 5000 atau lebih permintaan per CPU. Pengaturan default bergantung justru pada kumpulan utas CLR untuk mengelola konkurensi per CPU secara otomatis. Aplikasi yang memanfaatkan pemrosesan permintaan asinkron secara ekstensif, atau yang memiliki banyak permintaan jangka panjang yang diblokir pada I/O jaringan, akan mendapat manfaat dari peningkatan batas default dalam .NET Framework 4. Pengaturan maxConcurrentRequestsPerCPU
ke nol menonaktifkan penggunaan utas terkelola untuk memproses permintaan ASP.NET. Saat aplikasi berjalan di kumpulan aplikasi IIS, permintaan tetap berada di utas IIS I/O dan oleh karena itu konkurensi dibatasi oleh pengaturan utas IIS.
Pengaturan requestQueueLimit
bekerja dengan cara yang sama seperti atribut requestQueueLimit
dari elemen processModel, yang diatur dalam file Web.config untuk aplikasi ASP.NET. Namun, pengaturan requestQueueLimit
dalam file aspnet.config mengambil alih pengaturan requestQueueLimit
dalam file Web.config. Dengan kata lain, jika kedua atribut diatur (secara default, ini benar), pengaturan requestQueueLimit
dalam file aspnet.config akan diutamakan.
Contoh
Contoh berikut menunjukkan cara mengonfigurasi perilaku di seluruh proses ASP.NET dalam file aspnet.config dalam keadaan berikut:
Aplikasi ini dihosting di kumpulan aplikasi IIS 7.0.
IIS 7.0 berjalan dalam mode Terintegrasi.
Aplikasi ini menggunakan .NET Framework 3.5 SP1 atau versi yang lebih baru.
Nilai dalam contoh merupakan nilai default.
<configuration>
<system.web>
<applicationPool
maxConcurrentRequestsPerCPU="5000"
maxConcurrentThreadsPerCPU="0"
requestQueueLimit="5000" />
</system.web>
</configuration>
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk