سؤال

لقد قمت بتثبيت الورنيش توربينتين على موقع التدريج لدينا باتباع الإرشادات الموجودة على الماجنتو-توربينتين ويكي.

موقعنا على أوبونتو 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
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى magento.stackexchange
scroll top