ASP.NET 2.0 proporciona algunas características técnicas nuevas para mejorar el rendimiento del programa. La tecnología de almacenamiento en caché es una característica muy importante. Proporciona un mecanismo de almacenamiento en caché de datos local muy bueno que se puede personalizar fácilmente.
El almacenamiento en caché tiene un inconveniente que no es fácil de superar: el problema de la caducidad de los datos. La situación más típica es que si el contenido de los datos de la tabla de la base de datos se almacena en caché en la memoria del servidor, es probable que la aplicación web muestre datos obsoletos e inexactos cuando cambian los registros de la tabla de la base de datos. Para algunos tipos de datos, incluso si la información mostrada está desactualizada, el impacto no será significativo. Sin embargo, para datos con requisitos estrictos en tiempo real, como precios de acciones, ofertas de subastas y otra información, es inaceptable mostrar datos ligeramente desactualizados.
ASP.NET 2.0 admite los siguientes tipos de caché de salida de página. La caché de salida de página es el mecanismo de almacenamiento en caché más simple. Este mecanismo guarda todo el contenido de la página ASP.NET en la memoria del servidor. Cuando el usuario solicita la página, el sistema genera los datos relevantes de la memoria hasta que caducan los datos almacenados en caché. En este proceso, el contenido almacenado en caché se envía directamente al usuario sin tener que pasar nuevamente por el ciclo de vida de procesamiento de la página. Normalmente, el almacenamiento en caché de resultados de página es particularmente útil para páginas que contienen contenido que no necesita modificarse con frecuencia, pero que requiere mucho procesamiento para compilarse hasta su finalización. Los lectores deben tener en cuenta que el caché de salida de la página almacena todo el contenido de la página en la memoria y se utiliza para completar las solicitudes de los clientes.
Caché parcial de página
El almacenamiento en caché parcial de la página significa que la salida almacena en caché ciertas partes de la página en lugar de almacenar en caché todo el contenido de la página. Hay dos mecanismos para implementar el almacenamiento en caché de páginas parciales: uno es colocar la parte de la página que debe almacenarse en caché en un control de usuario (archivo .ascx) y configurar la función de almacenamiento en caché para el control de usuario (la página que contiene el control de usuario). puede o no configurar el almacenamiento en caché). Esto se conoce comúnmente como "almacenamiento en caché de control". La esencia de configurar el caché de control es configurar el caché del control de usuario. Incluye principalmente los siguientes tres métodos: uno es usar la directiva @OutputCache para configurar de forma declarativa la función de caché para el control de usuario; el otro es usar la clase PartialCachingAttribute en el archivo de código subyacente para configurar el caché de control de usuario; es utilizar la clase ControlCachePolicy para especificar mediante programación la configuración de la caché de control de usuario. Alternativamente, existe un método llamado "reemplazar después del caché". Este método es todo lo contrario del almacenamiento en caché de control. Configura una determinada parte de la página para que no se almacene en caché. Por lo tanto, aunque se almacena en caché toda la página, cuando se solicita la página nuevamente, el contenido que no está configurado para almacenarse en caché. reprocesado.
Caché de datos de la aplicación La caché de datos de la aplicación proporciona una forma programática de almacenar datos arbitrarios en la memoria utilizando pares clave/valor. Usar el caché de la aplicación es similar a usar el estado de la aplicación. Sin embargo, a diferencia del estado de la aplicación, los datos en la caché de datos de la aplicación son volátiles, es decir, los datos no se almacenan en la memoria durante toda la vida útil de la aplicación. La ventaja del caché de datos de la aplicación es que ASP.NET administra el caché, lo que elimina elementos del caché cuando caducan, no son válidos o no tienen memoria. El caché de la aplicación también se puede configurar para notificar a la aplicación cuando se elimina un elemento. .
dependencia de caché
Las dependencias de caché personalizadas introducidas en Net 2.0, especialmente la función SqlCacheDependency basada en MS-SQL Server, nos permiten evitar el problema de "caducidad de datos". Puede notificar al caché y eliminar aquellos que han caducado en función de los cambios en los datos correspondientes. la base de datos. La
función de almacenamiento en caché de datos también tiene sus propias deficiencias. Por ejemplo, es posible que el contenido mostrado no sea el más reciente ni el más preciso y, por este motivo, se deben establecer políticas de almacenamiento en caché adecuadas. Como otro ejemplo, el almacenamiento en caché aumenta la complejidad del sistema y dificulta las pruebas y la depuración, por lo que se recomienda desarrollar y probar la aplicación sin almacenamiento en caché y luego habilitar la opción de almacenamiento en caché durante la fase de optimización del rendimiento.