Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 14502|Antwoord: 0

[ASP.NET] Styles.Render roept de gedachte op runAllManagedModulesForAllRequests=true

[Link kopiëren]
Geplaatst op 13-10-2016 15:02:09 | | |
In het vorige artikel is er nog een legacy-probleem dat niet is opgelost, namelijk ASP.NET MVC MapRoute .htm niet werkt, hoe los je dit op als je runAllManagedModulesForAllRequests="true" niet gebruikt? Later vond ik een oplossing:



Referentie: ASP.NET MVC: Stuur een .html verzoek naar een MVC-route

Ik besprak waarom je zou moeten proberen runAllManagedModulesForAllRequests="true" niet te gebruiken, en toen vond ik twee gerelateerde artikelen:

De kunst van eenvoud: Optimaliseer de prestaties van je webapplicaties: Gebruik geen runAllManagedModulesForAllRequests="true".
Gebruik runAllManagedModulesForAllRequests="true" niet om je MVC-routering aan de praat te krijgen
Fragment uit een beschrijving in de tekst:

Deze sterk aanbevolen oplossing kan andere problemen veroorzaken. Deze problemen ontstaan in het laten draaien van al je geregistreerde HTTP-modules op elk verzoek, niet alleen op beheerde verzoeken (bijvoorbeeld .aspx). Dit betekent dat modules op elke .jpg .gif .css .html .pdf enzovoort draaien.

runAllManagedModulesForAllRequests is als een kanaalschakelaar voor IIS-modules en verzoeken; als deze schakelaar wordt ingeschakeld, gaan alle verzoeken die deze site bereiken naar Modules voor verwerking, wat ook statische bestandsverzoeken omvat, wat ook het meest voorkomende soort "geen behoefte om te verwerken" verzoeken is, omdat het verzoek modules binnenkomt en er een overeenkomstig programma moet zijn om het te verwerken. Dit veroorzaakt onnodige prestatie-overhead, omdat statische bestanden alleen voor weergave zijn, er helemaal geen behoefte is om modules te verwerken, kleine sites maken niet uit, wanneer sommige grote PV-sites hetzelfde doen, veroorzaakt dat wat "druk" op de verwerking van IIS-modules programma's, en de conclusie die hierboven in een blogpost wordt samengevat is verspilling (verspilling... ) en potentieel (potentieel... )。

Laten we een test doen met Application_BeginRequest om te zien welke verzoeken worden gelogd voor verschillende configuraties van runAllManagedModulesForAllRequests, en de voorbeeldcode testen:


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_* De afbeelding is wat ik in de weergave heb toegevoegd, dit is gewoon een verzoek om een statische afbeelding te testen; als je op een grote site bent, voeg dan de aanvraagtestcode toe en ververs dan de pagina, dan zul je merken dat er veel zinloze verzoeken zijn. Misschien kijk je naar het testrecord hierboven, dat lijkt geen probleem te verklaren, maar stel je voor: een site met veel statische bestanden, het aantal bezoeken is tientallen miljoenen, en de site bevat veel pagina's, hoewel het een klein probleem is, het wordt oneindig vergroot, en uiteindelijk blijkt het gewoon een configuratieprobleem te zijn.

Dat is het, ik ga de code veranderen.





Vorig:C# woordenboeksleutel om te sorteren
Volgend:asp.net Toegang tot statische bronnen in MVC-routes
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com