Az előző cikkben van egy másik régi probléma, amit még nem oldottak meg, vagyis ASP.NET az MVC MapRoute .htm nem működik, hogyan lehet megoldani, ha nem használod a runAllManagedModulesForAllRequests="true" funkciót? Később találtam megoldást:
Hivatkozás: ASP.NET MVC: Irányíts egy .html kérést egy MVC útvonalra
Megbeszéltem, miért érdemes nem használni a runAllManagedModulesForAllRequests="true" funkciót, majd találtam két kapcsolódó cikket:
Az egyszerűség művészete: Optimalizáld webalkalmazásaid teljesítményét: Ne használd a runAllManagedModulesForAllRequests="true" funkciót. Ne használd a runAllManagedModulesForAllRequests="true" funkciót, amikor az MVC útvonalat működteted Részlet a szöveg leírásából:
Ez a nagyon ajánlott javítás más problémákat is okozhat. Ezek a problémák abból fakadnak, hogy minden regisztrált HTTP modul minden kérésre fut, nem csak menedzselt kérésekre (pl. .aspx). Ez azt jelenti, hogy a modulok minden .jpg .gif .css .html .pdf futni fognak stb. runAllManagedModulesForAllRequests olyan, mint egy csatornakapcsoló IIS modulokhoz és kérésekhez, ha ezt a kapcsolót bekapcsolják, akkor minden olyan kérés, amely hozzáfér ehhez az oldalhoz, a Modulok (Modulok feldolgozására) rendszerbe kerül, ami néhány statikus fájlkérést is tartalmaz, ami egyben a leggyakoribb "nem szükséges feldolgozásra" kérések típusa, mivel a kérés Modulok rendszerébe kerül, akkor szükség van egy megfelelő programra, amely feldolgozza. Ez felesleges teljesítményterhelést okoz, mert a statikus fájlok csak megjelenítésre valók, nincs szükség modulfeldolgozásra, a kis oldalak nem számítanak, amikor néhány nagy PV állomás ugyanezt teszi, az némi "nyomást" okoz az IIS modul programfeldolgozására, és a fenti blogbejegyzésben összefoglalt következtetés a pazarlás (hulladék... ) és potenciál (potenciál... )。
Végezzünk egy tesztet Application_BeginRequest-vel, hogy lássuk, milyen kérések vannak naplózva a runAllManagedModulesForAllRequests különböző konfigurációihoz, és teszteljük a mintakódot:
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 record:
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_* A képet adtam hozzá a nézetben, ez csak egy statikus kép tesztelésére irányuló kérés, ha egy nagy oldalon vagy, add hozzá a kérés tesztkódot, majd frissítsd az oldalt, akkor sok értelmetlen kérést találsz. Talán megnézed a fenti tesztadatokat, ami nem magyarázza meg a problémát, de képzeld el, ha egy oldalon sok statikus fájl van, és a látogatások száma több tízmillió, és az oldal sok oldalt tartalmaz, bár ez egy apró probléma, végtelenül felnagyítható, és végül rájön, hogy ez csak egy konfigurációs probléma.
Ennyi, változtatom a kódot.
|