-
13-12-2019 - |
문제
나는에 지침에 따라 우리의 준비 사이트에 바니시 터 핀틴을 설치했습니다 마젠토-터핀틴 위키.
우리 사이트는 우분투 14.04,닉스,닉스-4.0.3 미터,테레빈 유 0.6.5,젠토 1.9.2 에 있습니다.
이건 내 거야 DAEMON_OPTS
그 안에 /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"
나는 테레빈 유 모듈을 성공적으로 설치했으며,비밀 광택 인증 키에 대한 구성 만 실제로 변경했습니다. \n
디버그 정보를 활성화합니다.
내 구성을 저장하려고 할 때 울부 짖는 오류가 발생했습니다:
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
이것은 내가 테레빈 생성에서 가지고있는 것입니다 var/default.vcl
파일:
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;
}
}
나는 겉으로는 생성하여이 문제를 해결할 수 있었다 custom_include.vcl
파일 출처 version-4.vcl
사라졌기 때문에
cp app/code/community/Nexcessnet/Turpentine/misc/version-4.vcl app/code/community/Nexcessnet/Turpentine/misc/custom_include.vcl
하지만 지금은 구성을 저장하려고 할 때 새로운 오류가 발생합니다:
Failed to apply the VCL to 127.0.0.1:6082: Varnish data to write over length limit by 749 characters
이것은 -p cli_buffer=16384
내가 설정 한 DAEMON_OPTS
아트 /etc/default/varnish
.내가 이것을 증가 시키려고 할 때 나는 여전히 동일한 오류를 얻지 만 다른 한계가 있습니다.
Failed to apply the VCL to 127.0.0.1:6082: Varnish data to write over length limit by 8941 characters.
난 아무것도 없어 magento/var/log/
또는 /var/log/varnish/
바니시 용.나는 니스을 차킹 시도 관리자 클리에 문제가 있다면 볼 수_버퍼하지만 노트의 아무것도 볼 수 없었다.
$ 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.
어떤 조언 제안을 사전에 감사합니다.
해결책 2
나는 내가 발견 한 수정 사항을 적용하여 이 작업을 얻은 것 같습니다 기트허브 티켓 915.
먼저 내 첫 번째 오류에 적용 수정 오프 오해의 소지가 있었다 그래서 내가 만든 파일을 제거.
rm app/code/community/Nexcessnet/Turpentine/misc/custom_include.vcl
그런 다음 나는 마젠토-터핀틴 레포의 데벨 지점 에서 제안 내 젠토 프로젝트 기트허브 티켓 915.
이제 터핀틴 구성을 저장/바니시 구성을 적용 할 때 오류 메시지가 없습니다.
이 사이트는 큰 거래를 가속화 한 것 같지 않지만,어떻게 바니시가 작동하도록 보장 할 수 있습니까?
업데이트 나는 바니시를 실행하여 바니시가 작동하는지 확인할 수 있었다.이 경우 히트 레이트 평균이 0 보다 크면 캐시가 충돌한다는 것을 의미합니다.
다른 팁
공유 주셔서 감사합니다.난 그냥 최신 버전을 설치 devel
분기 매우 유사한 문제를 해결합니다.서버에 액세스할 수 있는 경우 바니시 캐싱 여부를 확인하려면 다음 바니시 상단 명령 중 하나를 사용할 수 있습니다.
/usr/bin/varnishtop -i RxURL
/usr/bin/varnishtop -i RxHeader -C -I \^HOST