Interpretación del módulo memcached_module de Nginx

Tabla de contenido

introducción básica  

Instalar módulos adicionales 

Instrucciones de configuración del módulo 


introducción básica  

El módulo memcached_module de nginx puede leer directamente el contenido del servidor memcached y generarlo. La aplicación ya no procesa las solicitudes posteriores , como php-fpm y django, lo que mejora en gran medida la velocidad de las páginas dinámicas. nginx solo es responsable de leer datos del servidor Memcached. Escribir datos en Memcached requiere una aplicación en segundo plano. Almacena en caché activamente las páginas que se almacenarán en Memcached, que se pueden redirigir al backend a través de 404 para su procesamiento. 

 nginx solo es responsable de 'leer' los 'datos de caché' 'especificados' de memcached --> nginx solo es responsable de 'leer' de memcached

La 'aplicación' en segundo plano envía la 'página almacenada en caché' a Memcached a través de la 'lógica relacionada', lo cual es conveniente para que nginx 'llame' --> 'el programa en segundo plano es responsable de escribir'

 

El módulo ngx_http_memcached_module de Nginx en sí no proporciona funcionalidad de almacenamiento en caché, es solo un módulo proxy que reenvía las solicitudes de los usuarios al servidor Memcached. 

Instalar módulos adicionales 

Instale el módulo de terceros: ngx_http_php_memcache_standard_balancer-master

  • Descomprimir en ruta/ngx_module
  • Configuración:./configure --prefix=/xxx/xxx-add_module=path/ngx_module
  • Compile e instale:make && make install

Instrucciones de configuración del módulo 

server {
    location / {
        set            $memcached_key "$uri?$args";  # 设置Memcached缓存key
        memcached_pass 127.0.0.1:11211;              # 设置被代理Memcached地址
        error_page     404 502 504 = @fallback;      # 返回状态码404、502、504时跳入内部请求
    }

    location @fallback {
        proxy_pass     http://backend;               # 将请求转发给后端服务器
    }
}
Nombre del comando Formato de valor de comando valor por defecto Descripción de la instrucción
memcached_bind dirección [transparente]
o desactivada
-- Configure una conexión con el servidor Memcached desde la dirección IP y el puerto locales especificados. El valor del comando puede ser una variable. Cuando el parámetro del valor del comando es transparente, se permite que la IP real del cliente se transmita de forma transparente al servidor proxy, y la IP real del cliente se utiliza como la IP de origen para acceder al servidor proxy. Cuando el valor del comando está desactivado, el comando con se cancela el mismo nombre en el campo de comando de la capa superior.
memcached_buffer_size tamaño 4k u 8k Establezca el tamaño del búfer utilizado para leer el servidor Memcached y leer los datos de respuesta. Cuando Nginx reciba los datos de respuesta, se pasarán sincrónicamente al cliente.
memcached_connect_timeout tiempo años 60 El tiempo de espera para que Nginx establezca una conexión con el servidor Memcached normalmente no debe exceder los 75 segundos.
memcached_force_ranges Encendido o apagado apagado Habilita la compatibilidad con solicitudes de rango de bytes para respuestas almacenadas en caché y sin caché de servidores Memcached, independientemente del campo Accept-Ranges en estos encabezados de respuesta.
memcached_gzip_flag bandera -- Permite probar los indicadores de datos de caché del servidor Memcached. Los indicadores son indicadores personalizados cuando el cliente escribe en el caché. Esto se utiliza para determinar si los datos almacenados en caché están comprimidos y almacenados. Si los datos están comprimidos y almacenados, el campo de encabezado de respuesta Codificación de contenido está configurado para gzip
memcached_next_upstream error, tiempo de espera,
encabezado_inválido,
no encontrado o desactivado...
tiempo de espera de error Pase las solicitudes de los clientes que no devuelven una respuesta al siguiente servidor en sentido ascendente cuando se producen las condiciones especificadas en el valor de la directiva.
memcached_next_upstream_timeout tiempo 0 Establece el tiempo de espera para pasar solicitudes de clientes calificadas al siguiente servidor en sentido ascendente. 0 significa que no hay límite de tiempo de espera hasta que se atraviesen todos los servidores del grupo de servidores ascendentes.
memcached_next_upstream_tries número 0 Establece el número de intentos para que las solicitudes de clientes calificadas se pasen al siguiente servidor en el nivel ascendente, incluido el primer error. 0 significa que no hay límite en el número de intentos hasta que se atraviesen todos los servidores del grupo de servidores ascendentes.
memcached_pass DIRECCIÓN -- Establezca la dirección y el puerto del servidor Memcached. La dirección puede ser una IP, un nombre de dominio o un socket UNIX.
memcached_read_timeout tiempo años 60 Cuando el intervalo entre dos operaciones de lectura consecutivas para recibir datos del servidor Memcached excede el tiempo establecido, la conexión se cerrará
memcached_send_timeout tiempo años 60 Cuando el intervalo entre dos operaciones de escritura consecutivas enviadas al servidor Memcached excede el tiempo establecido, la conexión se cerrará
memcached_socket_keepalive Encendido o apagado apagado Configure el mecanismo de detección de latidos para el comportamiento de mantenimiento de TCP de los servidores Nginx y Memcached. De forma predeterminada, se utiliza la configuración de socket del sistema operativo. Si el valor del comando está activado, la opción SO_KEEPALIVE está habilitada para la detección de latidos.

 $memcached_key

Define la clave para obtener la respuesta del servidor Memcached.

Supongo que te gusta

Origin blog.csdn.net/m0_62436868/article/details/133201060
Recomendado
Clasificación