| Artículos | 01 DIC 2000

Internet Information Services 5.0 y ASP 3.0

Tags: Histórico
José M. Alarcón.
La versión de los Servicios de Internet que se incluye en Windows 2000 ofrece bastantes novedades para desarrollar aplicaciones sobre Internet. Además de un notable aumento de rendimiento y escalabilidad existen ciertas características que han cambiado en el servidor Web, así como en el modelo de objetos de ASP, y que es muy interesante conocer.

A parte del cambio de nombre sufrido para evidenciar más todavía la integración existente entre el servidor de Internet y el Sistema Operativo (de Internet Information Server a Internet Information Services), IIS5 ofrece a los creadores de aplicaciones web una serie de ventajas que no se deben obviar. Algunas de ellas, así como el aumento de rendimiento del servidor, pueden ser motivo suficiente para migrar ciertas aplicaciones web a Windows 2000 e IIS5.
Existen cambios menores en los diálogos de configuración del servidor, multitud de novedades en programación ASP, gran cantidad de nuevos ajustes en los metadatos y algunas modificaciones significativas en lo que se refiere a seguridad. En este artículo se mostrarán todas estas novedades.

Novedades en la administración de IIS 5
Al abrir las propiedades del servicio Web por primera vez, el usuario experimentado de la versión anterior encontrará algunas novedades. Las diferencias existentes no destacan mucho, pero alguna de ellas reviste bastante importancia para comprender cómo funcionarán las aplicaciones web.
La pestaña que permite configurar el directorio particular de una aplicación o sitio web es la que ofrece más novedades (ver Figura 1). Lo primero que llama la atención aquí es la existencia de una nueva opción en los permisos de acceso que reza: Acceso al código fuente de secuencias de comandos. Si marcamos su casilla se otorgará permiso a los usuarios para leer o escribir en los archivos de comandos (ASP) que haya en el directorio (siempre y cuando éste tenga dichos permisos activados tanto en el propio IIS como en NTFS).
Sin embargo, la novedad más importante en cuanto a la administración la hallamos en la parte inferior del diálogo. Se trata de la lista desplegable Protección de la aplicación. En la versión 4 de IIS se podían ejecutar las aplicaciones en un proceso separado del servidor web, marcando para ello una casilla de verificación. Esto permitía que, ante el fallo de una aplicación concreta, el servidor no se viera afectado en su totalidad, lo cual actuaría en detrimento de las demás aplicaciones que se estaban ejecutando sobre él y que no habían fallado. De este modo se evitaba que una aplicación mal programada o problemática pudiera dar al traste con todas las demás. Si por el contrario esta casilla no estaba marcada, la aplicación se ejecutaba en el mismo proceso que el servidor web (mejorando su rendimiento) pero nos arriesgábamos a que un fallo en una de las aplicaciones afectara a las demás.
En IIS5 esta posibilidad se ha ampliado ofreciéndose tres niveles de protección en lugar de dos. Para simplificar la selección, y dado que son mutuamente excluyentes, se ofrecen a través de una lista desplegable. Las opciones del nivel de protección Alto (Aislado) y Bajo (proceso IIS) son equivalentes a cuando en IIS4 se marcaba o desmarcaba la casilla de verificación de proceso separado respectivamente. La tercera opción, Medio (Agrupado) (seleccionada en la Figura 1), es nueva y representa un compromiso entre las dos opciones que se acaban de mencionar. Con el aislamiento medio la aplicación se ejecuta en un proceso separado de IIS pero que está compartido con las demás aplicaciones que también se encuentren agrupadas. De este modo se obtiene un término medio entre las otras dos posibilidades que no penaliza tanto el rendimiento. Este término no está excesivamente bien documentado.
En cualquier caso, la consideración más importante respecto al aislamiento de aplicaciones es, a nuestro juicio, las diferencias existentes entre cada una de las opciones en lo referente a los permisos para usar componentes desde el código ASP. La regla básica en IIS 4.0 era que si la aplicación no se ejecutaba en un proceso separado a IIS (protección baja) entonces las DLL COM que se instanciasen desde código ASP se ejecutarían bajo el contexto IUSER_NombreMaquina, es decir, impersonando al usuario anónimo de Internet. Sin embargo, si nuestra aplicación se marcaba para ejecutarse en un proceso separado, todas las bibliotecas COM que se llamasen desde el código ASP se ejecutarían como si fueran el usuario IWAM_NombreMaquina. Esta diferencia era muy importante y suponía muchos quebraderos de cabeza en lo que se refiere a permisos si no era tenida en cuenta. En IIS 5.0 independientemente del nivel de protección de la aplicación todos los componentes se ejecutan bajo la cuenta del usuario anónimo de Internet a menos que no se habilite este tipo de acceso (si el usuario debe autenticarse entonces los componentes se ejecutan impersonando a la cuenta del usuario).
Si la DLL que se pretende instanciar se registra bajo los servicios COM+, se comportará del modo descrito si el paquete en el que se introduce es de tipo Aplicación de Biblioteca (Ver Figura 2). Sin embargo, si el paquete es de tipo Aplicación de Servidor, entonces su comportamiento dependerá del usuario que se haya especificado explícitamente en la pestaña de propiedades Identidad (Figura 3).
Otra posibilidad interesante consiste en limitar el porcentaje de tiempo de la CPU que utiliza cada sitio web. En IIS4 se introdujo la posibilidad de limitar el ancho de banda consumido por un sitio web (concepto conocido como Bandwidth Throttling). En IIS se amplía esta útil posibilidad para abarcar también al tiempo de procesador disponible. Ambos ajustes se pueden realizar desde la pestaña de Rendimiento de las propiedades de un sitio web o bien mediante código. El uso de ambas magnitudes se puede añadir al archivo de registro (Log) estándar del servidor desde la herramienta de administración, de forma que se conozca el historial de uso de ancho de banda y procesador, ayudando de este modo a determinar posibles limitaciones.

Novedades en Programación ASP
En lo que se refiere a la programación ASP, aparte de la inclusión de la versión 5 de los motores de interpretación de Scripts (JavaScript y VBScript), se han incluido una serie de características y objetos nuevos que facilitan el desarrollo en cierta medida.
La versión 5 de los motores de Script ofrece algunas novedades interesantes. Tal vez la más destacable sea que en VBScript ahora es posible definir clases y hacer una programación pseudo-orientada a objetos. Otra funcionalidad interesante en VBScript 5 es que se puede utilizar la palabra clave With de forma que no es necesario escribir el nombre de los objetos continuamente y se gana en rendimiento al no obligar al motor del lenguaje a resolver continuamente los nombres de los métodos y propiedades:
<%
With Response
.Write(“PCWorld<BR>”)
.Write(“la mejor revista para el usuario de ordenadores personales”)
End With
%>
En JavaScript la novedad más interesante se refiere a la gestión estructurada de errores mediante bloques try-catch.
El modelo de objetos ASP de IIS5 agrega algunos métodos a los objetos tradicionales e introduce objetos y componentes nuevos además de mejorar otros. Por ejemplo, el componente Browser Capabilities se ha mejorado bastante ofreciendo más posibilidades de cono

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información