Module 16: Configuring as ASP.NET Application

Download Report

Transcript Module 16: Configuring as ASP.NET Application

Configurar, optimizar e
implementar una
aplicación Web
Microsoft ASP.NET
Descripción

Uso del objeto Cache

Uso de la caché de resultados ASP.NET

Configurar una aplicación Web ASP.NET

Implementar una aplicación Web ASP.NET
Lección: uso del objeto Cache

¿Qué es el objeto Cache?

Ventajas de utilizar el objeto Cache

Cómo utilizar el objeto Cache

Eliminar elementos del objeto Cache

Demostración: utilizar el objeto Cache
¿Qué es el objeto Cache?

Un objeto utilizado para almacenar información

Un objeto Cache por aplicación Web

Una alternativa a las variables de aplicación


No se utiliza para almacenar información en variables
de sesión
Utiliza pares clave-valor para almacenar y recuperar
elementos
Cache("myKey") = myValue
Cache["myKey"] = myValue;
Ventajas de utilizar objeto Cache

Es más rápido que crear un nuevo objeto para cada
petición

Soporta el bloqueo interno

Administración automática de los recursos de caché

Soporta funciones callback

Soporta el borrado basado en dependencias
Cómo utilizar el objeto Cache

Escribir en el objeto Cache:
'Implicit method
Cache("myKey") = myValue
'Explicit method
Cache.Insert("myKey", myValue, Dependency, AbsoluteExpiration, _
SlidingExpiration, CacheItemPriority, CacheItemRemovedCallBack)
//Implicit method
Cache["myKey"] = myValue;
//Explicit method
Cache.Insert("myKey", myValue, Dependency, AbsoluteExpiration,
SlidingExpiration, CacheItemPriority, CacheItemRemovedCallBack);

Recuperar valores del objeto Cache:
myValue = Cache("myKey")
myValue = Cache["myKey"];
Eliminar elementos del objeto Cache

Tiempo AbsoluteExpiration
DateTime.Now.AddMinutes(5)

Tiempo SlidingExpiration
TimeSpan.FromSeconds(20)

Depende de un valor modificado
AddCacheItemDependency("Variable.Value")

Prioridad del elemento en caché
CacheItemPriority.High
Demostración: uso del objeto Cache

Ejecutar la página CacheTest.aspx sin el
objeto Cache habilitado

Ejecutar la página CacheTest.aspx con el
objeto Cache habilitado

Ejecutar la página CacheTest.aspx con el
objeto Cache habilitado y con una
dependencia
Lección: uso de la caché de resultados de ASP.NET

Multimedia: caché de resultados

Tipos de caché de resultados

Cómo utilizar la caché de resultados de páginas

Demostración: caché de resultados de páginas

Cómo utilizar la caché de fragmentos de páginas
Multimedia: caché de resultados
Tipos de caché de resultados

Almacenamiento en caché de páginas

Almacenamiento en caché de fragmentos de páginas
como controles de usuario

Almacenamiento en caché de servicios Web XML
Cómo utilizar la caché de resultados de páginas

El contenido de la caché se genera desde páginas
dinámicas

Toda la página Web está disponible en la caché

Establecer la duración de la caché en segundos

Establecer la propiedad VaryByParam para controlar el
número de variaciones de página en la caché
<%@ OutputCache Duration="900"
VaryByParam="none" %>
Demostración: caché de resultados de páginas

Mostrar cómo una página no almacenada
en la caché cambia con cada actualización

Mostrar cómo una página almacenada en
la caché no cambia con cada actualización

Mostrar cómo cambiar un parámetro puede
provocar que una nueva página se
almacene en la caché
Cómo utilizar la caché de fragmentos de páginas

Convertir el fragmento de página en un control de
usuario

Establecer las propiedades Duration y varyByParam
<%@ OutputCache Duration="120"
VaryByParam="none" %>
Lección: configurar una aplicación Web ASP.NET

Descripción de los métodos de configuración

Configurar un servidor Web utilizando Machine.config

Configurar una aplicación utilizando Web.config

Descripción de la herencia de configuración

Demostración: herencia de configuración

Práctica: determinar la herencia de configuración

Almacenar y recuperar datos en Web.config

Uso de propiedades dinámicas

Demostración: uso de propiedades dinámicas
Descripción de los métodos de configuración

Archivo Machine.config


Archivos Web.config


Configuración a nivel de equipo
Configuración a nivel de aplicación y directorio
Los archivos Machine.config y Web.config son:

XML con un formato correcto

Mayúsculas y minúsculas Camel

Extensibles
Configurar un servidor Web utilizando Machine.config

Las opciones de configuración en el archivo
Machine.config afectan a todas las aplicaciones Web
del servidor


Un único archivo Machine.config por servidor Web
La mayoría de opciones de configuración pueden
sobrecargarse a nivel de aplicación utilizando archivos
Web.config
Configurar una aplicación utilizando Web.config

Uno o más archivos Web.config por aplicación Web

Los archivos Web.config contienen toda la información
de configuración de la aplicación

Contienen una sección por cada categoría principal de
funcionalidad ASP.NET

Seguridad

Modo

Configuración general de la aplicación

Seguimiento
Descripción de la herencia de configuración

El archivo Web.config a
nivel de aplicación
hereda las opciones del
archivo Machine.config

Las opciones en el
archivo Web.config que
están en conflicto anulan
las opciones heredadas

Directorios individuales
pueden tener archivos
Web.config que heredan
de (y pueden anular) las
opciones a nivel de
aplicación
CONFIG
Machine.config
VirtualDir
Web.config
SubDir
Web.config
Demostración: herencia de configuración

Crear una subcarpeta que contenga un
archivo Web.config

Mostrar las diferencias entre el archivo
Web.config principal y el archivo
Web.config de la subcarpeta

Mostrar cómo el formulario Web Form lee
información de los archivos Web.config

Eliminar el archivo Web.config de la
subcarpeta y actualizar el formulario Web
Form
Práctica: determinar la herencia de configuración

Los estudiantes:


Determinar las opciones de configuración
de una aplicación Web basándonos en
distintas variables
Tiempo: 5 Minutos
Almacenar y recuperar datos en Web.config

Almacenar la configuración de la aplicación en un
archivo Web.config
<configuration>
<appSettings>
<add key="pubs" value="server=localhost;
integrated security=true; database=pubs"/>
</appSettings>
</configuration>

Recuperar la configuración de la aplicación de un
archivo Web.config
Dim strPubs As String = _
ConfigurationSettings.AppSettings("pubs")
AppSettingsReader App = new AppSettingsReader();
string strPubs = (string)App.GetValue("pubs",
typeof(string));
Uso de propiedades dinámicas

Almacenar los valores
de las propiedades en
archivos Web.config en
lugar de almacenarlos en
el código compilado de
la aplicación

Permite actualizaciones
sencillas sin recompilar
la aplicación

Habilitar y configurar las
propiedades en el objeto
Demostración: uso de propiedades dinámicas

Configurar un objeto SqlConnection para
utilizar propiedades dinámicas

Mostrar el código que acaba de
generarse en la página de código
subyacente

Abrir el archivo Web.config y mostrar la
clave SqlConnection1.ConnectionString
en la sección appSettings
Lección: implementar una aplicación Web ASP.NET

Implementar una aplicación Web

Preparar una aplicación Web para su implementación

Práctica: seleccionar los archivos necesarios

Compartir ensamblados en la caché de ensamblados
global

Actualizar la aplicación Web
Implementar una aplicación Web

Copiar archivos localmente o archivos FTP
remotamente

Configurar la carpeta de destino como un directorio
virtual en IIS

Copiar todos los archivos necesarios, incluyendo el
directorio \bin y su contenido

No es necesario registrar componentes
Preparar una aplicación Web para su implementación
1. Generar la aplicación Web
2. No seleccionar archivos innecesarios

Archivos de solución de Visual Studio .NET (.vbproj,
.vbproj.webinfo, .csproj, .csproj.webinfo, etc.)

Archivos de recursos (.resx)

Páginas de código subyacente (.vb, .cs)
3. Copiar o FTP archivos necesarios en el directorio de
producción
Práctica: seleccionar los archivos necesarios

Los estudiantes:


Seleccionarán los archivos necesarios
para una implementación
Tiempo: 5 Minutos
Compartir ensamblados en la caché de ensamblados global

La caché de ensamblados global proporciona el
almacenamiento para los ensamblados que deben
compartirse


Caché para código a nivel de equipo
Los archivos DLL no están registrados, por ello, no se
comparten fácilmente entre aplicaciones Web
Actualizar la aplicación Web

Copiar o FTP archivos para actualizar la aplicación
Web



No es necesario detener y volver a iniciar IIS
Los archivos .dll pueden actualizarse mientras el sitio
sigue ejecutándose
La caché de resultados protege a los usuarios
existentes