Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 7562|Respuesta: 2

[.NET Core] ASP.NET Core aloja los modelos en proceso y fuera de proceso en IIS

[Copiar enlace]
Publicado el 14-05-2022 13:18:08 | | | |
Dado que .NET Core es multiplataforma, ASP.NET proyectos Core pueden ejecutarse tanto en Windows como en Linux, y si se despliegan en Windows, pueden desplegarse en IIS o ejecutarse directamente a través de la línea de comandos, independientemente de los servicios IIS, debido a la inclusión de contenedores Kestrel en ASP.NET Core.

Para más información sobre cómo desplegar ASP.NET aplicaciones Core en servicios IIS, puedes consultar lo siguiente:

Despliega ASP.NET núcleo en el servidor IIS
https://www.itsvse.com/thread-7838-1-1.html
ASP.NET Core está desplegado en IISEn procesoyFuera de procesoDos modelos de anfitriones

Recursos:

El inicio de sesión del hipervínculo es visible.
El inicio de sesión del hipervínculo es visible.


Modelo en proceso

Desde ASP.NET Core 3.0,El alojamiento en proceso está habilitado por defecto para todas las aplicaciones desplegadas en IIS, el archivo web.config se ve así:

se puede verhostingModel="inprocess", un modelo en procesoNo se utiliza cernícalo, pero en su lugar utiliza IISHttpServer() para implementar un nuevo servidor web alojado directamente dentro del pool de aplicaciones IIS, lo cual es algo similar a cómo se introdujo ASP.NET tradicional en IIS.

El siguiente diagrama ilustra la relación entre IIS, ASP.NET módulos Core y las aplicaciones alojadas en proceso:



Al intentar acceder a la web, puedes ver el servidor a través del encabezado de respuesta, como se muestra en la imagen de abajo:



Al observar los procesos a través del administrador de tareas, solo hay 2 procesos, como se muestra en la figura siguiente:



Modelo fuera de proceso

Este modelo IIS actúa como un proxy inverso y, cuando recibe una solicitud, debe reenviarla al servicio Kestrel, que es un servidor web multiplataforma integrado en ASP.NET aplicaciones Core.

El siguiente diagrama ilustra la relación entre IIS, ASP.NET módulos Core y aplicaciones alojadas fuera de proceso:



Modificamos el archivo web.config de la siguiente manera:

Cuando accedemos al sitio web a través de un navegador, podemos ver que el valor servidor del encabezado de respuesta se ha convertido en Kestrel, como se muestra en la figura siguiente:



Mirando el administrador de tareas al mismo tiempo, vi que hay 3 procesos, como se muestra en la figura de abajo:



resumen

En el modelo gestionado InProcess, las solicitudes y respuestas se proporcionan a través de w3wp.exe o IISExpress, mientras que en el proceso de trabajo OutOfProcess implicado, se dotnet.exe
En el modelo gestionado InProcess se utiliza un único servidor web, mientras que en el modelo gestionado OutOfProcess se pueden emplear dos servidores web.

La razón obvia para usar el nuevo modelo en proceso es que es más rápido y consume menos recursos,El modelo gestionado InProcess ofrece un mejor rendimientoPorque se ejecuta directamente en el proceso del pool de aplicaciones IIS. No hay tráfico HTTP interno ni sobrecarga, y las solicitudes se procesan inmediatamente.





Anterior:Nginx añade el protocolo HTTP/2 activado
Próximo:Usar HttpClient incorrectamente puede romper tu software
 Propietario| Publicado el 14-05-2022 13:20:23 |
ASP.NET Rendimiento dentro y fuera del proceso Core:http://blog.iis7.com/article/5958.html
ASP.NET Prueba de rendimiento del Core 5 bajo IIS, Nginx, Caddy:https://cloud.tencent.com/developer/article/1788073
Publicado el 14-05-2022 15:07:14 |
Aprende a aprender
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com