Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 14502|Jawab: 0

[ASP.NET] Styles.Render memicu pemikiran runAllManagedModulesForAllRequests=true

[Salin tautan]
Diposting pada 13/10/2016 15.02.09 | | |
Pada artikel sebelumnya, ada masalah lama lain yang belum terpecahkan, yaitu ASP.NET MVC MapRoute .htm tidak berfungsi, bagaimana cara mengatasinya jika Anda tidak menggunakan runAllManagedModulesForAllRequests="true"? Kemudian, saya menemukan solusi:



Referensi: ASP.NET MVC: Rutekan permintaan .html ke rute MVC

Saya membahas mengapa Anda harus mencoba untuk tidak menggunakan runAllManagedModulesForAllRequests="true", dan kemudian saya menemukan dua artikel terkait:

Seni kesederhanaan: Optimalkan performa aplikasi web Anda: Jangan gunakan runAllManagedModulesForAllRequests="true".
Jangan gunakan runAllManagedModulesForAllRequests="true" saat membuat perutean MVC Anda berfungsi
Kutipan dari deskripsi dalam teks:

Perbaikan yang sangat direkomendasikan ini dapat menyebabkan masalah lain. Masalah ini datang dalam bentuk membuat semua modul HTTP terdaftar Anda berjalan pada setiap permintaan, bukan hanya permintaan terkelola (misalnya .aspx). Ini berarti modul akan berjalan setiap .jpg .gif .css .html .pdf dll.

runAllManagedModulesForAllRequests seperti sakelar saluran untuk Modul dan permintaan IIS, jika sakelar ini diaktifkan, maka semua permintaan yang mengakses situs ini akan masuk ke Modul untuk diproses, yang mencakup beberapa permintaan file statis, yang juga merupakan jenis permintaan "tidak perlu memproses" yang paling umum, karena permintaan memasuki Modul, maka harus ada program yang sesuai untuk memprosesnya. Hal ini menyebabkan overhead kinerja yang tidak perlu, karena file statis hanya untuk ditampilkan, tidak perlu melakukan pemrosesan Modul sama sekali, situs kecil tidak masalah, ketika beberapa situs PV besar melakukan hal yang sama, itu akan menyebabkan beberapa "tekanan" pada pemrosesan program Modul IIS, dan kesimpulan yang dirangkum dalam posting blog di atas adalah pemborosan (limbah... ) dan potensi (potensi... )。

Mari kita lakukan pengujian dengan Application_BeginRequest untuk melihat permintaan apa yang dicatat untuk konfigurasi runAllManagedModulesForAllRequests yang berbeda, dan uji kode sampel:


runAllManagedModulesForAllRequests="fasle", data.txt log:
http://localhost:55127/
http://localhost:55127/bundles/test2?v=2Fz3B0iizV2NnnamQFrx-NbYJNTFeBJ2GM05SilbtQU1
http://localhost:55127/bundles/test1?v=MDbdFKJHBa_ctS5x4He1bMV0_RjRq8jpcIAvPpKiN6U1

runAllManagedModulesForAllRequests="true", data.txt catatan:

http://localhost:55127/
http://localhost:55127/bundles/test2?v=2Fz3B0iizV2NnnamQFrx-NbYJNTFeBJ2GM05SilbtQU1
http://localhost:55127/bundles/test1?v=MDbdFKJHBa_ctS5x4He1bMV0_RjRq8jpcIAvPpKiN6U1
http://localhost:55127/Content/logo_small_1.gif
http://localhost:55127/Content/logo_small_4.gif
http://localhost:55127/Content/logo_small_2.gif
http://localhost:55127/Content/logo_small_3.gif

logo_small_* Gambar adalah apa yang saya tambahkan dalam tampilan, ini hanya permintaan untuk menguji gambar statis, jika Anda berada di situs besar, tambahkan kode pengujian permintaan, lalu segarkan halaman, Anda akan menemukan bahwa ada banyak permintaan yang tidak berarti. Mungkin Anda melihat catatan pengujian di atas, sepertinya tidak menjelaskan masalah apa pun, tetapi bayangkan saja, jika situs dengan banyak file statis, dan kemudian jumlah kunjungannya puluhan juta, dan situs tersebut berisi banyak halaman, meskipun itu adalah masalah kecil, itu akan diperbesar tanpa batas, dan akhirnya Anda menemukan bahwa itu hanya masalah konfigurasi.

Itu saja, saya akan mengubah kodenya.





Mantan:Kunci kamus C# untuk mengurutkan
Depan:asp.net Akses ke sumber daya statis di rute MVC
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com