Barniz de Trementina - Error al aplicar el VCL
-
13-12-2019 - |
Pregunta
He instalado el Barniz Turpintine en nuestro sitio de ensayo siguiendo las instrucciones que aparecen en la Magento-Turpintine wiki.
Nuestro sitio está en Ubuntu 14.04, NGINX, barniz-4.0.3 m, Trementina v0.6.5, Magento 1.9.2.
Estos son mis DAEMON_OPTS
en /etc/default/varnish
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-p cli_buffer=16384 \
-p feature=+esi_ignore_other_elements \
-p vcc_allow_inline_c=on \
-s malloc,256m"
He instalado la trementina módulo con éxito, sólo para realmente cambiar la config para el Secreto de Barniz Clave de Autenticación con el \n
anexa, de la dirección URL de la lista Negra y la habilitación de la información de depuración.
Cuando traté de guardar la configuración de mi tengo el bramido de error:
Failed to apply the VCL to 127.0.0.1:6082: Got unexpected response code from Varnish: 106 Message from VCC-compiler: directors are now in directors VMOD. ('input' Line 27 Pos 1) director default round-robin { ########---------------------- Running VCC-compiler failed, exited with 2 VCL compilation failed
Esto es lo que tengo en la Trementina generar var/default.vcl
archivo:
vcl 4.0;
C{
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <pthread.h>
static pthread_mutex_t lrand_mutex = PTHREAD_MUTEX_INITIALIZER;
void generate_uuid(char* buf) {
pthread_mutex_lock(&lrand_mutex);
long a = lrand48();
long b = lrand48();
long c = lrand48();
long d = lrand48();
pthread_mutex_unlock(&lrand_mutex);
sprintf(buf, "frontend=%08lx%04lx%04lx%04lx%04lx%08lx",
a,
b & 0xffff,
(b & ((long)0x0fff0000) >> 16) | 0x4000,
(c & 0x0fff) | 0x8000,
(c & (long)0xffff0000) >> 16,
d
);
return;
}
}C
import std;
director default round-robin {
{
.backend = {
.host = "127.0.0.1";
.port = "8080";
.first_byte_timeout = 300s;
.between_bytes_timeout = 300s;
}
}
}
director admin round-robin {
{
.backend = {
.host = "127.0.0.1";
.port = "8080";
.first_byte_timeout = 21600s;
.between_bytes_timeout = 21600s;
}
}
Yo, aparentemente, fue capaz de solucionar este problema mediante la creación de la custom_include.vcl
archivo de version-4.vcl
como era falta
cp app/code/community/Nexcessnet/Turpentine/misc/version-4.vcl app/code/community/Nexcessnet/Turpentine/misc/custom_include.vcl
Pero ahora cuando trato de guardar la configuración obtener un nuevo error:
Failed to apply the VCL to 127.0.0.1:6082: Varnish data to write over length limit by 749 characters
Esto parece estar relacionado con la -p cli_buffer=16384
que, en el DAEMON_OPTS
en /etc/default/varnish
.Cuando yo intente aumentar este todavía se me pone el mismo error pero con un límite diferentes.
Failed to apply the VCL to 127.0.0.1:6082: Varnish data to write over length limit by 8941 characters.
No tengo nada en magento/var/log/
o /var/log/varnish/
para el Barniz.Traté de chacking el Barniz Admin para ver si había algo mal con el cli_buffer pero no pude ver nada de la nota.
$ sudo varnishadm
varnish> param.show cli_buffer
200
cli_buffer
Value is: 16k [bytes]
Default is: 8k
Minimum is: 4k
Size of buffer for CLI command input.
You may need to increase this if you have big VCL files and use
the vcl.inline CLI command.
NB: Must be specified with -p to have effect.
Gracias de antemano por cualquier consejo sugerencias.
Solución 2
Me parece haber llegado a este trabajo mediante la aplicación de una solución que he encontrado de GitHub billete 915.
En primer lugar la revisión que he solicitado mi primer error fue engañosa, así que me quita el archivo que he creado.
rm app/code/community/Nexcessnet/Turpentine/misc/custom_include.vcl
A continuación, he fusionado el devel rama de Magento-Turpintine repo con mi proyecto de Magento como se sugiere en el GitHub Billete 915.
Ahora, cuando me guarde el Turpintine Config / aplicar el Barniz config no tengo mensajes de error.
Aunque el sitio no parece haber acelerado mucho, ¿cómo puedo asegurarme de barniz está funcionando como se supone.
ACTUALIZACIÓN Yo era capaz de asegurar el Barniz estaba trabajando mediante la ejecución de varnishstat, si el Hitrate avg es mayor que 0 significa que la caché está siendo golpeada.
Otros consejos
Gracias por compartir.Acabo de instalar la versión más reciente de la devel
rama de corregir una muy similar problema.Para comprobar si el Barniz es el almacenamiento en caché se podría utilizar cualquiera de los siguientes varnishtop comandos, si usted tiene acceso al servidor.
/usr/bin/varnishtop -i RxURL
/usr/bin/varnishtop -i RxHeader -C -I \^HOST