Cuando ha habilitado el almacenamiento en caché en NGINX Plus, almacena las respuestas en un disco de caché, y se utilizan aún más para responder a los clientes sin tener una solicitud de proxy para cada vez con el mismo contenido. El almacenamiento en caché de Nginx Plus tiene más capacidades en las que se incluyen las características más útiles, como la purga de caché, el almacenamiento en caché tardío y el almacenamiento en caché de contenido dinámico.
En este artículo, aprenderemos más sobre el almacenamiento en caché, como cómo habilitar y deshabilitar el almacenamiento en caché en un servidor NGINX en un sistema Linux.
Cómo habilitar el almacenamiento en caché?
En el nivel superior del contexto http , incluya una directiva el proxy_cache_path para habilitar el almacenamiento en caché. El primer parámetro, que es la ruta del sistema de archivos local para el contenido en caché, y el parámetro Keys_zone que define el tamaño y el nombre de la zona de memoria compartida, son obligatorios. El último parámetro, Keys_zone, almacena los metadatos de los elementos en caché:
httpDebe incluir la directiva proxy_cache para definir los elementos como (tipo de protocolo y ubicación o dirección de servidor virtual) en el contexto HTTP. A través de la cual desea almacenar en caché las respuestas del servidor, mencione el nombre de la zona, que se define por un parámetro el Keys_zone a la directiva proxy_cache_path (que es uno en este caso):
httpSe observa que la cantidad total de respuesta en caché no se ve afectada por el tamaño, que se define en el parámetro Keys_zone. Todas las respuestas en caché por separado se guardan en archivos específicos con una copia de los metadatos en su sistema de archivos. Sin embargo, si desea limitar la cantidad total de datos de respuesta en caché, puede incluir el parámetro max_size a la directiva en proxy_cache_path.
Cómo hacer limitar o deshabilitar el almacenamiento en caché?
Todas las respuestas permanecen almacenadas en el caché indefinidamente. Estas respuestas solo se eliminan cuando excede el tamaño máximo definido y el tiempo de longitud desde la última vez que se solicitaron. Pero, puede establecer de acuerdo con su conveniencia medias para cuánto tiempo estas respuestas almacenadas en caché se consideran válidas o incluso si son utilizadas por diferentes directivas en el servidor , http o en el contexto de la ubicación . Sin embargo, para limitar las respuestas en caché consideradas como válidas, debe incluir una directiva con el nombre proxy_cache_valid.
Definamos el concepto limitante de caché con un ejemplo. En el siguiente ejemplo dado, las respuestas del código 200 o 302 se consideran válidas durante 10 minutos, y 404 respuestas son válidas hasta 1 minuto.
proxy_cache_valid 200 302 10m;Por lo tanto, también puede definir la validez de las respuestas en caché del tiempo para todos los códigos de estado para definir un parámetro 'cualquiera' que también pueda ver en la línea de código a continuación:
proxy_cache_valid cualquier 5m;Hay algunos conjuntos de condiciones bajo las cuales Nginx no envía respuestas en caché a los clientes, por lo que incluya una directiva proxy_cache_bypass. Cada parámetro en el siguiente ejemplo define las condiciones y tiene una serie de variables. Si al menos un parámetro no es igual a cero '0' o no está vacío, Nginx no encuentra la respuesta en el caché y solicita inmediatamente hacia adelante al servidor de backend.
proxy_cache_bypass $ cookie_nocache $ arg_nocache $ arg_comment;En la condición donde desea que Nginx no almacene en caché una respuesta. Luego, incluirá la directiva proxy_no_cache y definirá todos los siguientes parámetros:
proxy_no_cache $ http_pragma $ http_authorization;Conclusión
El almacenamiento en caché proporciona más funciones en un servidor NGINX. También hemos explorado en este artículo cómo podemos habilitar o deshabilitar el almacenamiento en caché, incluidas todas las directivas y parámetros. Para explorar más, puede obtener más ayuda de los recursos en línea. Espero que el artículo de caché anterior sea informativo para usted.