Cara menyetel pengaturan machine.config untuk meningkatkan kinerja

Mengubah pengaturan di file konfigurasi Anda di ASP.Net dapat memberikan peningkatan kinerja yang bagus. File-file ini termasuk machine.config dan web.config.

File web.config khusus aplikasi dan dibuat secara default saat Anda membuat aplikasi web atau situs web di Visual Studio. Perhatikan bahwa ada file konfigurasi lain bernama aspnet.config - tersedia mulai dari ASP.Net 2.0 dan seterusnya. File ini tersedia di root folder .Net Framework di sistem Anda. File konfigurasi mesin, sementara itu, bernama machine.config dan berada di% runtime install path% \ Config direktori.

Sementara pengaturan di file web.config hanya berlaku untuk aplikasi, pengaturan yang ada di file machine.config berlaku di seluruh mesin. Perhatikan bahwa file machine.config diinstal saat Anda menginstal .Net Framework di sistem Anda. Anda hanya dapat memiliki satu file machine.config di sistem Anda (satu per sistem saja) dan itu berada di direktori \ WINDOWS \ Microsoft.Net \ Framework \ vXXXX \ CONFIG.

Perlu dicatat bahwa pengaturan yang ditentukan dalam file machine.config diganti oleh yang ditentukan dalam file web.config dalam aplikasi Anda. Sebuah aplikasi dapat memiliki banyak file web.config. Secara kebetulan, file web.config mewarisi pengaturan yang ditentukan di machine.config.

Direkomendasikan pengaturan machine.config

Pada bagian ini kita akan menjelajahi pengaturan yang dapat diterapkan ke file machine.config untuk peningkatan kinerja. Perhatikan bahwa nilai default dan yang direkomendasikan telah ditentukan untuk setiap pengaturan.

maxconnection

Anda dapat mengubah pengaturan system.Net di file machine.config Anda untuk memungkinkan lebih banyak permintaan bersamaan untuk dilayani oleh aplikasi Anda. Nilai defaultnya adalah 2 sedangkan nilai yang direkomendasikan adalah 12 per CPU.

   

       

   

Berikut adalah pengaturan yang direkomendasikan untuk bagian model proses di file machine.config Anda untuk keuntungan kinerja. Anda dapat mengubah pengaturan dalam model proses di file machine.config Anda untuk mengontrol utas pekerja, utas I / O, dll. Perhatikan bahwa utas adalah unit eksekusi terkecil dalam suatu proses.

memoryLimit

Pengaturan ini digunakan untuk menentukan persentase dari total memori sistem yang akan digunakan proses. Nilai defaultnya adalah 40. Nilai yang disarankan untuk pengaturan ini bergantung pada banyak faktor. Pertimbangan tersebut termasuk (tetapi tidak terbatas pada) berikut ini:

  • Jika aplikasi dipasang di kotak terisolasi
  • Terjadinya kebocoran memori dalam aplikasi

maxWorkerThreads

Pengaturan ini digunakan untuk menentukan jumlah maksimum thread pekerja yang tersedia di kumpulan thread pada titik waktu tertentu. Kumpulan utas terdiri dari sejumlah utas, atau, kumpulan utas tepatnya, dan dapat digunakan untuk melakukan beberapa aktivitas di latar belakang. MSDN menyatakan: "Kumpulan utas adalah kumpulan utas pekerja yang secara efisien mengeksekusi panggilan balik asinkron atas nama aplikasi. Kumpulan utas terutama digunakan untuk mengurangi jumlah utas aplikasi dan menyediakan manajemen utas pekerja."

Nilai default maxWorkerThreads adalah 20 per CPU dan nilai yang direkomendasikan adalah 100.

minWorkerThreads

Pengaturan ini menentukan jumlah minimum pekerja benang yang tersedia di kumpulan benang untuk memenuhi permintaan yang masuk. Nilai default-nya adalah 1 sedangkan nilai yang direkomendasikan adalah maxWorkerThreads / 2. Jadi, jika Anda telah menetapkan maxWorkerThreads sebagai 100 di file machine.config Anda, Anda harus menetapkan 50 sebagai minWorkerThreads.

maxIOThreads

Pengaturan ini digunakan untuk menentukan jumlah maksimum utas yang dialokasikan untuk melakukan operasi input output (I / O). Operasi tersebut meliputi operasi database, panggilan ke layanan web, mengakses sistem file, dll. Nilai defaultnya adalah 20 per CPU, sedangkan nilai 100 direkomendasikan.

minIOThreads

Ini digunakan untuk menentukan jumlah minimum thread I / O yang tersedia di kumpulan thread pada titik waktu tertentu. Nilai defaultnya adalah 1 sedangkan nilai yang direkomendasikan adalah maxIOThreads / 2. Jadi, jika Anda telah mendefinisikan maxIOThreads sebagai 100 dalam file machine.config Anda, Anda harus menyebutkan 50 sebagai minIOThreads.

Gabungkan semuanya

Sekarang mari kita gunakan semua pengaturan ini untuk bekerja. Daftar kode berikut mengilustrasikan pengaturan khas dalam file machine.config berdasarkan pengaturan yang disarankan yang dijelaskan sebelumnya di artikel.

 

        

            

        

    

    

        

             maxWorkerThreads = "100"

             maxIoThreads = "100"

             minWorkerThreads = "50"

             minIoThreads = "50"

         />