You are on page 1of 7

IIS presenta 6 versiones distintas: desde IIS 1 en 1996 sobre Windows NT 3.51 Server.

hasta IIS 6 sobre Windows 2003. Importantes cambios en arquitectura y rendimiento en las distintas versiones.

Arquitectura monoltica: ejecucin en un nico proceso llamado inetinfo.exe Aplicaciones web con DLLs va ISAPI (Internet Services Application Programming Interface), como alternativa a CGI (Common Gateway Interface).

ISAPI DLLs en C Ejecucin in-process Una instancia puede bloquear todo el servidor. Se crean instancias bajo demanda Una instancia puede atender mltiples peticiones Mayor rendimiento

CGI Scripts en PERL Ejecucin out-of-process El fallo en una instancia se restringe a su proceso. Se crean instancias bajo demanda Una instancia atiende una nica peticin Mayor fiabilidad

Aislamiento de procesos (process isolation) Permite la ejecucin out-of-process. Aparece la metabase como repositorio de la configuracin de IIS en lugar del registro de Windows. Mayor rendimiento al poder estar residente en memoria. IIS Admin Service: proceso que controla los dems servicios de IIS y gestiona la metabase. Se rompe la estructura monoltica, con lo que el colapso de una aplicacin ejecutndose en un proceso aislado no afecta a todo el servidor. Un proceso aislado puede ser detenido o reiniciado independientemente del resto. Se pueden reiniciar automticamente los procesos aislados. Los procesos aislados presentan un menor rendimiento en ejecucin. Se consumen ms recursos. No hay comunicacin entre procesos aislados.

Se refina el concepto de aislamiento de procesos, convirtindose en 3 niveles de Proteccin de Aplicacin: Low (IIS Process): La aplicacin se ejecuta in-process como parte de inetinfo.exe (como en la arquitectura monoltica inicial). Medium (Pooled): Es el nivel por defecto, en el que la aplicacin se ejecuta out-of-process en un proceso anfitrin independiente llamado dllhost.exe, junto con las dems aplicaciones que tengan este mismo nivel de proteccin (aislamiento). High (Isolated): La aplicacin se ejecuta out-of-process en un proceso dllhost.exe propio y exclusivo.

Se asla la ejecucin de aplicaciones del proceso principal del servidor, sin sobrecargar la demanda de recursos. Las aplicaciones con nivel de proteccin medio (pooled) pueden comunicarse entre s. Reinicio automtico de procesos aislados. Concentracin de un elevado nmero de aplicaciones en un mismo proceso. La consulta de variables ISAPI a nivel de servidor son lentas.

Diferencias principales con respecto a IIS 5: Gestin de peticiones HTTP en el kernel. Modo de aislamiento de procesos de trabajo (Worker process isolation mode) O BIEN modo aislado de IIS 5.0 Se admiten mltiples pools de aplicaciones configurables de forma independiente.

Se incluye el WAS (Web Administration Service), que gestiona y configura el servicio WWW. HTTP.sys o Gestiona las conexiones. o Recibe y enruta las peticiones, asignndolas a la cola de ejecucin correspondiente. o Se ejecuta en el kernel del S.O. Mayor rendimiento. Mayor fiabilidad (no ejecuta cdigo de usuario). Mayor capacidad de respuesta (puede almacenar peticiones aunque la aplicacin destino est inactiva). o Gestiona una cach en modo kernel.

WAS o IIS Admin gestiona FTP, NNTP, y SMTP, pero no HTTP. o No se permiten aplicaciones web in-process: todas se ejecutan en pools de aplicaciones. o Configuration Manager: Almacena y recupera la informacin de sitios web de la metabase. Inicializa y actualiza la tabla de enrutamiento de peticiones. o Application Pool Manager: Gestiona los worker processes asociados a los pools de aplicaciones. o Se ejecuta como una instancia de svchost.exe

Procesos de trabajo (worker processes) o Atienden las peticiones en las colas de los grupos de aplicaciones. o Se ejecutan como instancias de w3wp.exe o Aslan aplicaciones entre s y de los procesos crticos de IIS. o El WAS monitoriza su estado, los recicla peridicamente y puede reiniciarlos automticamente.

Grupos de aplicaciones (application pools) o Un grupo de aplicaciones consiste en: Una cola de peticiones en modo kernel Uno o ms procesos de trabajo o De aqu surgen los 3 modelos que se pueden configurar en IIS 6: 1 proceso de trabajo con 1 aplicacin web 1 proceso de trabajo con varias aplicaciones web Varios procesos de trabajo con una o varias aplicaciones web.

Figura 1: Similar a las aplicaciones out-of-process de IIS 4 o a los procesos aislados de IIS 5, pero con mejor rendimiento ya que no hay trasiego de datos entre procesos distintos en modo usuario. Figura 2: Similar a las aplicaciones con un nivel de proteccin medio (pooled) en IIS 5, pero en IIS 6 podemos crear tantas como sean necesarias. Figura 3: Web garden Permite que una o ms aplicaciones web estn atendidas por varios procesos de trabajo y dar soporte a aplicaciones crticas. Ventajas de los grupos de aplicaciones: o Permiten aislar aplicaciones entre s o Se requieren menos recursos que con los modelos de arquitecturas previas de IIS, permitiendo aumentar el nmero de aplicaciones web atendidas con un rendimiento aceptable. o Permiten agrupar aplicaciones segn criterios de afinidad o rendimiento.

Esquema global del modo de aislamiento de procesos de trabajo

Esquema global del modo aislado de IIS 5

You might also like