IIS 7.0

IIS 7.0 es uno de los productos en los que mi equipo está trabajando y el que más me interesa. Es la release más importante del servidor web desde la versión 1.0, e incorpora un gran numero de mejoras tanto para administradores como para desarrolladores.

Mike Volodarsky del equipo de IIS escribió un gran artículo para el número de Marzo del 2007 de MSDN Magazine, donde resumía alguna de las nuevas mejoras de IIS 7.0. Os recomiendo que lo leáis para ver un resumen de ellas.

IIS 7.0 viene con la versión release de Windows Vista, y ya está disponible en las versiones Home (a diferencia de IIS 5.1 que venía sólo con XP Professional). IIS 7.0 para servidores saldrá mas tarde con Windows Longhorn Server, y añadirá varias novedades para despliegue – incluyendo soporte para hosting más rico, soporte seguro de FTP y soporte para el despliegue de granjas de servidores web.

El soporte para granjas de servidores es una de las características más interesantes, y nos permitirá desplegar nuestras aplicaciones web en un archivo que contendrá todo el código, configuración, contenido, y las claves necesarias para ejecutar un servidor.  Con esto, podemos añadir cualquier número de servidores web a la granja y al añadirlo al servidor de archivos, se cargarán, dinámicamente, todas las configuracioens ( incluyendo enlaces de datos, directorios virtualles, configuraciones de pooling, etc) y el contenido de la aplicación. Esto hace que la escalación de nuestras aplicaciones sea algo trivial, quitándonos la tarea de tener que usar esquemas de replicación para la configuración y despliegue de las aplicaciones (basta con añadir los archivos necesarios y todas las máquinas de la granja se actualizarán con los nuevos cambios).

La Beta3 release de Windows Longhorn Server tendrá una licencia go-live, de forma que lo podréis ver dentro de poco. Actualmente la web www.microsoft.com está corriendo en un cluster con IIS 7.0 (así que estareis en buena compañia.)

ASP .NET y la integración IIS 7.0.

En versiones anteriores de IIS, los desarrolladores teníamos que escribir extensiones o filtros de ISAPI para ampliar el servidor. Pero la ISAPI también estaba limitada en cómo se añadía al servidor y en qué le permitia a los desarrolladores customizar. Por ejemplo, no podíamos implementar un código de sobreescritura de URL con una extensión de ISAPI (nota: ASP.NET está implemetado como una extensión ISAPI). Y al finla acabábamos jugeteando con los threads de entrada/salida del servidor web si quería escribir código para un filtro ISAPI (esta es la razón por la que no permitimos ejecutar código manegado en la fase de ejecución de un filtro ).

Uno de los mayores camibos arquitecturales que hemos hecho en el núcleo de proceso de IIS con esta nueva versión, ha sido habilitar muchisima más extensibilidad con la nueva arquitectura en pipeline para procesar las peticiones. Ahora podemos ecribir código en cualquier parte del tiempo de vida de cualquier petición HTTP registrando un módulo de Extensión HTTP en el servidor web. Estos módulos de extensión se pueden escribir usando C++ nativo o código manegado por .NET (podemos usar la interfaz System.Web.IHttpModule para implementar esto).

Toda esta funcionalidad de IIS7 (autenticación, autorización, servir archivos estáticos, soporte para el listado de directorios, ASP clásico, logging, etc) está ahora implementando usanto esta API pública. Esto significa que podeis eliminar cualquiera de estas nuevas características de IIS7 y sustituirlas o extenderla con vuestra propia implementación.

ASP.NET en IIS7 ha pasado de estar implementado como un ISAPI a estar echo con módulos dentro del pipeline de IIS7:

IIS6versusIIS7

Entre otras novedades tenemos:

1) Podemos usar la autenticación por formularios de  ASP.NET, MemberShip/Roles, y cualquier otra característica en cualquier petición al servidor: .htm, .php y .jsp

2) Podemos reescribir la url de cualquier petición y/o modificar las peticiones como queramos.

3)Podemos cambiar o ampliar cualquier característica de IIS con VB o C# (Por ejemplo: cambiar el módulo para listar directorios y poner el nuestro propio).

Esto le da un montón de nuevas posibilidades a los desarrolladores de ASP .NET.

IIS 7.0 Download Center.

Con motivo de facilitar a los desarrolladores poder compartir los módulos de extensión que creen, el equipo de IIS ha lanzado el «Download Center» en www.iis.net. Aquí los desarrolladores pueden navegar, descargarse, subir, etc… módulos de extensión para IIS.

Podéis verlo aquí.

Download Center

Además, podemos tener un historial para manegar la extensibilidad de los módulos Http, IIS7 también nos permite escribir extensiones de herramientas de administración gráficas (la herramienta de administración fué hecha con Windows Forms), así como el uso del namespace System.Configuration para trabajar con el sistema de configuración del IIS7.

Escenarios para desarrolladores ASP .NET

Hay un montón de nuevos mundos que se nos abren con IIS7.0 (tanto grandes como pequeños). Escribiré sobre esos «mundos» en las próximas semanas o meses, y os mostraré cómo aprovecharnos de ellos.

IIS72

Os recomiendo que os subscribáis al rss del equipo del IIS 7 aquí

Espero que os haya gustado.

Scott.

Traducido por: Juan María Laó Ramos. Microsoft Student Partner

0 comentarios sobre “IIS 7.0”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *