300 likes | 425 Views
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?
E N D
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: • Recuperar valores del 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); myValue = Cache("myKey") myValue = Cache["myKey"];
Eliminar elementos del objeto Cache • Tiempo AbsoluteExpiration • Tiempo SlidingExpiration • Depende de un valor modificado • Prioridad del elemento en caché DateTime.Now.AddMinutes(5) TimeSpan.FromSeconds(20) AddCacheItemDependency("Variable.Value") 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
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 • Configuración a nivel de equipo • Archivos Web.config • 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 • Recuperar la configuración de la aplicación de un archivo Web.config <configuration> <appSettings> <add key="pubs" value="server=localhost; integrated security=true; database=pubs"/> </appSettings> </configuration> 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 • Generar la aplicación Web • 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) • 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