Kuna .NET Core on platvormideülene, saavad ASP.NET Core projektid töötada nii Windowsis kui Linuxis ning kui neid juurutatakse Windowsis, saab neid juurutada IIS-is või käivitada otse käsurea kaudu, sõltumatult IIS-teenustest, tänu Kestrel konteinerid ASP.NET Core'is.
Lisateabe saamiseks ASP.NET Core rakenduste juurutamise kohta IIS-teenustesse saate vaadata järgmist:
ASP.NET Core on kasutusel IIS-isProtsessisjaProtsessist väljasKaks hostimudelit
Ressursse:
Hüperlingi sisselogimine on nähtav.
Hüperlingi sisselogimine on nähtav.
Protsessis mudel
Alates ASP.NET Core 3.0-st,Protsessisisene hostimine on vaikimisi lubatud kõigile IIS-ile juurutatud rakendustele, web.config fail näeb välja selline:
on nähahostingModel="inprocess", protsessis olev mudelTuvikut ei kasutata, kuid kasutab selle asemel IISHttpServer(), et rakendada uut veebiserverit, mis on otse IIS-i rakenduste basseinis, mis sarnaneb traditsioonilise ASP.NET kasutuselevõtuga IIS-is.
Järgmine diagramm illustreerib seost IIS-i, ASP.NET Core moodulite ja protsessis olevate hostitud rakenduste vahel:
Veebilehele pääsedes näed serverit vastuste päise kaudu, nagu alloleval pildil näha:
Vaadates protsesse läbi tegumihalduri, on ainult 2 protsessi, nagu alloleval joonisel näidatud:
Protsessist väljas mudel
See mudel IIS toimib pöördproksina ning kui ta saab päringu, peab ta selle edastama Kestrel teenusele, mis on platvormideülene veebiserver, mis on integreeritud ASP.NET Core rakendustesse.
Järgmine diagramm illustreerib seost IIS-i, ASP.NET Core moodulite ja protsessiväliste hostitud rakenduste vahel:
Muudame web.config faili järgmiselt:
Kui pääseme veebilehele brauseri kaudu ligi, näeme, et vastuse päise serveriväärtus on muutunud Kestreliks, nagu alloleval joonisel näidatud:
Vaadates samal ajal tegumihaldurit, leidsin, et seal on kolm protsessi, nagu alloleval joonisel näidatud:
Kokkuvõte
InProcessi hallatud mudelis esitatakse päringud ja vastused w3wp.exe või IISExpressi kaudu, samas kui OutOfProcess töötaja protsessis on see dotnet.exe InProcessi hallataval mudelil kasutatakse ühte veebiserverit, samas kui OutOfProcess hallataval mudelil saab kasutada kahte veebiserverit.
Ilmselge põhjus uue protsessis mudeli kasutamiseks on see, et see on kiirem ja kasutab vähem ressursse,InProcessi hallatav mudel tagab parema jõudluseSest see töötab otse IIS-i rakenduste basseini protsessis. Sisemist HTTP-liiklust ega üldkulusid ei ole, ning päringud töödeldakse koheselt.
|