Mivel a .NET Core crossplatform, ASP.NET Core projektek futhatnak Windowson és Linuxon is, és ha Windowson telepítik, telepíthetők IIS-en vagy közvetlenül a parancssoron keresztül futtathatók, függetlenül az IIS szolgáltatásoktól, mivel a Kestrel konténerek beépíthetők ASP.NET Core-ba.
További információért ASP.NET Core alkalmazások telepítéséről IIS szolgáltatásokba az alábbiakhoz fordulhat:
ASP.NET Core IIS-ben van telepítveFolyamatbanésFolyamaton kívüliKét hárasztó modell
Erőforrások:
A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.
Folyamatban lévő modell
ASP.NET Core 3.0 óta,Az in-process hosztolás alapértelmezés szerint engedélyezett minden IIS-re telepített alkalmazás számára, a web.config fájl így néz ki:
láthatóhostingModel="inprocess", egy folyamatban lévő modellKertrel nem használatos, de helyette az IISHttpServer() segítségével egy új webszervert valósít meg, amely közvetlenül az IIS alkalmazási poolban található, ami némileg hasonlít ahhoz, ahogyan a hagyományos ASP.NET bevezették az IIS-be.
Az alábbi ábra az IIS, ASP.NET Core modulok és a folyamatban lévő hosztolt alkalmazások közötti kapcsolatot mutatja be:
A weboldal elérésének lehetősége után a válaszfejlécen keresztül láthatod a szervert, ahogy az alábbi képen is látható:
A folyamatokat a feladatkezelőn keresztül nézve csak 2 folyamat van, ahogy az alábbi ábrán látható:
Folyamaton kívüli modell
Ez a modell IIS fordított proxyként működik, és amikor kérést kap, továbbítania kell azt a Kestrel szolgáltatásnak, amely egy ASP.NET Core alkalmazásokba beágyazott platformos webszerver.
Az alábbi ábra az IIS, ASP.NET Core modulok és a folyamaton kívüli hosztolt alkalmazások közötti kapcsolatot mutatja be:
A web.config fájlt a következőképpen módosítjuk:
Amikor böngészőn keresztül érjük el a weboldalt, láthatjuk, hogy a válaszfejléc szerverértéke Kestrel-re változott, ahogy az alábbi ábrán is látható:
Ugyanakkora feladatkezelőt nézve azt találtam, hogy három folyamat van, ahogy az alábbi ábrán látható:
összefoglalás
Az InProcess menedzsett modellben a kéréseket és válaszokat w3wp.exe vagy IISExpress biztosítja, míg az OutOfProcess munkafolyamatban ez dotnet.exe Az InProcess menedzselt modellben egyetlen webszervert használnak, míg az OutOfProcess menedzselt modellben két webszerver használható.
Az új In-Process modell használatának nyilvánvaló oka, hogy gyorsabb és kevesebb erőforrást használ,Az InProcess menedzselt modellje jobb teljesítményt nyújtMert közvetlenül az IIS alkalmazáskészlet folyamatában fut. Nincs belső HTTP forgalom és egyéb terhelés, a kéréseket azonnal feldolgozják.
|