Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 7562|Odgovoriti: 2

[.NET Core] ASP.NET Core gosti modele In-Process in Out-Of-Process v IIS

[Kopiraj povezavo]
Objavljeno 14. 5. 2022 ob 13:18:08 | | | |
Ker je .NET Core večplatformski, lahko projekti ASP.NET Core tečejo tako na Windows kot na Linuxu, in če so nameščeni na Windows, jih je mogoče namestiti na IIS ali neposredno prek ukazne vrstice, neodvisno od IIS storitev, zaradi vključitve Kestrel kontejnerjev v ASP.NET Core.

Za več informacij o tem, kako namestiti ASP.NET Core aplikacije na IIS storitve, si lahko ogledate naslednje informacije:

Namestitev ASP.NET Core na IIS strežnik
https://www.itsvse.com/thread-7838-1-1.html
ASP.NET Core je nameščen v IISV procesuinIzven postopkaDva gostiteljska modela

Sredstva:

Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna.


Model med procesom

Od ASP.NET Core 3.0,Gostovanje v procesu je privzeto omogočeno za vse aplikacije, nameščene na IIS, datoteka web.config izgleda takole:

je mogoče videtihostingModel="v procesu", model v procesuKestrel se ne uporablja, vendar namesto tega uporablja IISHttpServer() za implementacijo novega spletnega strežnika, ki je gostovan neposredno znotraj IIS aplikacijskega bazena, kar je nekoliko podobno načinu, kako je bila tradicionalna ASP.NET uvedena v IIS.

Naslednji diagram prikazuje povezavo med IIS, ASP.NET jedrnimi moduli in aplikacijami, ki so gostovane v procesu:



Ko poskušate dostopati do spletne strani, lahko vidite strežnik skozi glavo odgovora, kot je prikazano na spodnji sliki:



Če procese pogledamo skozi upravitelja opravil, sta le 2 procesa, kot je prikazano na spodnji sliki:



Model izven procesa

Ta model IIS deluje kot obratni proxy, in ko prejme zahtevo, jo mora posredovati storitvi Kestrel, ki je večplatformski spletni strežnik, vgrajen v ASP.NET Core aplikacije.

Naslednji diagram prikazuje povezavo med IIS, ASP.NET jedrnimi moduli in aplikacijami, ki so gostovane izven procesa:



Datoteko web.config spreminjamo na naslednji način:

Ko dostopamo do spletne strani prek brskalnika, lahko vidimo, da je vrednost strežnika v glavi odgovora postala Kestrel, kot je prikazano na spodnji sliki:



Ko sem hkrati pogledal upravitelja opravil, sem ugotovil, da obstajajo trije procesi, kot je prikazano na spodnji sliki:



Povzetek

V modelu upravljanega InProcess se zahteve in odgovori zagotavljajo prek w3wp.exe ali IISExpress, medtem ko je v procesu OutOfProcess, ki je vključen, dotnet.exe
V upravljanem modelu InProcess se uporablja en spletni strežnik, medtem ko je v modelu upravljanega OutOfProcess mogoče uporabiti dva spletna strežnika.

Očiten razlog za uporabo novega modela v procesu je, da je hitrejši in porabi manj virov,Upravljani model InProcess zagotavlja boljšo zmogljivostKer teče neposredno v procesu IIS aplikacijskega bazena. Ni notranjega HTTP prometa in obremenitve, zahteve pa se obdelujejo takoj.





Prejšnji:Nginx doda omogočen protokol HTTP/2
Naslednji:Nepravilna uporaba HttpClient lahko pokvari vašo programsko opremo
 Najemodajalec| Objavljeno 14. 5. 2022 ob 13:20:23 |
ASP.NET Uspešnost v in izven osnovnega procesa:http://blog.iis7.com/article/5958.html
ASP.NET Core 5 test zmogljivosti pod IIS, Nginx, Caddy:https://cloud.tencent.com/developer/article/1788073
Objavljeno 14. 5. 2022 ob 15:07:14 |
Uči se učiti
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com