comunicación http en .net
DESCRIPTION
TRANSCRIPT
Comunicación HTTP en Comunicación HTTP en ASP.NETASP.NET
Ing. Juan Pablo Ibañez
www.knowii.com
Versiones:IIS5IIS6IIS7
Puerto 80
HTTP GET hacia el servidor solicitando un recurso
www.knowii.com
En la plataforma Windows la aplicación que escucha en el puerto 80 las peticiones HTTP de los clientes es el servidor Web Internet Information Server.
IIS mantiene un mapeo entre las extensiones de los recursos solicitados y las DLLs que pueden responder a esos pedidos. Estas DLLs se llaman Internet Services API (ISAPI) DLLs.
Cuando llega un request, IIS le la extensión y reenvia el request a la dll correspondiente.
IIS (Internet Information Service)IIS (Internet Information Service)www.knowii.com
IIS6IIS6
Si se está usando IIS6 para correr nuestro sitio. IIS tiene un driver llamado HTTP.SYS que escucha en el puerto 80 y rutea a la ISAPI DLL correcta.
Las extensiones de ASP.NET (.aspx, .asax, .asmx, .ashx, etc) son redireccionadas a aspnet_isapi.dll. En IIS6 esta DLL está dentro de un Worker Process.
www.knowii.com
ASP.NET Worker ProcessASP.NET Worker Process
ASP.NET Worker Process
HTTP Request
GET /foo/foo.aspx
HTTP Response
HTTP/1.1 200 OK ...
System Assemblies GAC Assemblies Local Assemblies
system.web.dll
system.data.dll
mscorsvr.dll
bargraph.dll
mygacutil.dll
acmeutil.dll
mypage.dll
32wie4kg.dll
myctrl.dll
AppDomain1
El ASP.NET Worker Process (w3wp.exe en IIS6 y asp-net_wp.exe en IIS5) administra el ASP.NET Pipeline (la ruta por la cual se comunica con ASP.NET). El mismo actúa como un proceso sustituto en el cual corren todas las instancias de los objetos ASP.NET.
www.knowii.com