Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 7562|Răspunde: 2

[.NET Core] ASP.NET Core găzduiește modelele In-Process și Out-Of-Process în IIS

[Copiază linkul]
Postat la 2022-5-14 13:18:08 | | | |
Deoarece .NET Core este multiplatformă, proiectele ASP.NET Core pot rula atât pe Windows, cât și pe Linux, iar dacă sunt implementate pe Windows, pot fi implementate pe IIS sau pot fi rulate direct prin linia de comandă, independent de serviciile IIS, datorită includerii containerelor Kestrel în ASP.NET Core.

Pentru mai multe informații despre cum să implementezi aplicațiile ASP.NET Core în serviciile IIS, poți consulta următoarele:

Implementează ASP.NET Core pe serverul IIS
https://www.itsvse.com/thread-7838-1-1.html
ASP.NET Core este implementat în IISÎn curs de desfășurareșiIeșit din procesDouă modele gazdă

Resurse:

Autentificarea cu hyperlink este vizibilă.
Autentificarea cu hyperlink este vizibilă.


Modelul în proces

De la ASP.NET Core 3.0,Găzduirea în proces este activată implicit pentru toate aplicațiile implementate în IIS, fișierul web.config arată astfel:

Se poate vedeahostingModel="inprocess", un model în procesȘorecel nu este folosit, dar folosește în schimb IISHttpServer() pentru a implementa un nou server web găzduit direct în cadrul pool-ului de aplicații IIS, ceea ce este oarecum similar cu modul în care ASP.NET tradițional a fost introdus în IIS.

Diagrama următoare ilustrează relația dintre IIS, modulele ASP.NET Core și aplicațiile găzduite aflate în proces:



Încercând să accesezi site-ul, poți vedea serverul prin antetul de răspuns, așa cum se vede în imaginea de mai jos:



Privind procesele prin managerul de activități, există doar 2 procese, așa cum se vede în figura de mai jos:



Modelul Out-of-Process

Acest model IIS acționează ca un proxy invers, iar când primește o cerere, trebuie să o redirecționeze către serviciul Kestrel, care este un server web cross-platform integrat în aplicațiile ASP.NET Core.

Diagrama următoare ilustrează relația dintre IIS, modulele ASP.NET Core și aplicațiile găzduite în afara procesului:



Modificăm fișierul web.config astfel:

Când accesăm site-ul printr-un browser, putem vedea că valoarea serverului din antetul răspunsului a devenit Kestrel, așa cum se arată în figura de mai jos:



Privind managerul de sarcini în același timp, am descoperit că sunt 3 procese, așa cum se vede în figura de mai jos:



rezumat

În modelul gestionat InProcess, cererile și răspunsurile sunt furnizate prin w3wp.exe sau IISExpress, în timp ce în procesul de lucru OutOfProcess implicat, este dotnet.exe
În modelul gestionat InProcess, se folosește un singur server web, în timp ce în modelul gestionat OutOfProcess pot fi folosiți doi servere web.

Motivul evident pentru folosirea noului model In-Process este că este mai rapid și consumă mai puține resurse,Modelul gestionat InProcess oferă performanțe mai bunePentru că rulează direct în procesul pool-ului de aplicații IIS. Nu există trafic HTTP intern și overhead, iar cererile sunt procesate imediat.





Precedent:Nginx adaugă activarea protocolului HTTP/2
Următor:Folosirea incorectă a HttpClient poate strica software-ul tău
 Proprietarul| Postat pe 2022-5-14 13:20:23 |
ASP.NET Performanță în și în afara procesului de bază:http://blog.iis7.com/article/5958.html
ASP.NET Testul de performanță Core 5 sub IIS, Nginx, Caddy:https://cloud.tencent.com/developer/article/1788073
Postat la 2022-5-14 15:07:14 |
Învață să înveți
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com