stringtranslate.com

Invalidación de caché

La invalidación de caché es un proceso en un sistema informático mediante el cual se reemplazan o eliminan las entradas de una caché .

Se puede hacer de forma explícita, como parte de un protocolo de coherencia de caché . En tal caso, un procesador cambia una ubicación de memoria y luego invalida los valores almacenados en caché de esa ubicación de memoria en el resto del sistema informático.

Invalidación explícita

La invalidación de la memoria caché se puede utilizar para enviar contenido nuevo a un cliente . Este método funciona como una alternativa a otros métodos de mostrar contenido nuevo a los clientes conectados. La invalidación se lleva a cabo modificando los datos de la aplicación, lo que a su vez marca la información recibida por el cliente como obsoleta. Una vez que se invalida la memoria caché, si el cliente la solicita, se le entrega una nueva versión. [1]

Métodos

Hay tres métodos específicos para invalidar un caché, pero no todos los servidores proxy de almacenamiento en caché admiten estos métodos.

Purga

Elimina el contenido del proxy de almacenamiento en caché inmediatamente. Cuando el cliente solicita los datos nuevamente, estos se recuperan de la aplicación y se almacenan en el proxy de almacenamiento en caché. Este método elimina todas las variantes del contenido almacenado en caché. [1]

Refrescar

Obtiene el contenido solicitado de la aplicación, incluso si el contenido almacenado en caché está disponible. El contenido almacenado previamente en caché se reemplaza con una nueva versión de la aplicación. Este método afecta solo a una variante del contenido almacenado en caché. [1]

Prohibición

Se agrega una referencia al contenido almacenado en caché a una lista negra (o lista de prohibición). Luego, las solicitudes de los clientes se comparan con esta lista negra y, si una solicitud coincide, se obtiene contenido nuevo de la aplicación, se devuelve al cliente y se agrega a la caché. [1]

Este método, a diferencia de la purga, no elimina inmediatamente el contenido almacenado en caché del proxy de almacenamiento en caché, sino que el contenido almacenado en caché se actualiza después de que un cliente solicita esa información específica.

Alternativas

Existen algunas alternativas a la invalidación de la memoria caché que aún ofrecen contenido actualizado al cliente. Una alternativa es hacer que el contenido en caché caduque rápidamente reduciendo el tiempo de vida (TTL) a un valor muy bajo. Otra alternativa es validar el contenido en caché en cada solicitud. Una tercera opción es no almacenar en caché el contenido volátil solicitado por el cliente. Estas alternativas pueden causar problemas, ya que generan una gran carga en la aplicación debido a solicitudes de información más frecuentes. [1]

Desventajas

El uso de la invalidación para transferir contenido nuevo puede resultar complicado cuando se invalidan varios objetos. La invalidación de varias representaciones añade un nivel de complejidad a la aplicación. La invalidación de la memoria caché debe realizarse a través de un proxy de almacenamiento en caché; estas solicitudes pueden afectar el rendimiento del proxy de almacenamiento en caché, lo que hace que la información se transfiera a un ritmo más lento a los clientes. [1]

Referencias

  1. ^ abcdef "Introducción a la invalidación de caché: documentación de FOSHttpCache". foshttpcache.readthedocs.org . Consultado el 2 de enero de 2016 .