الطريقة التي اعتمدتها Google لتحسين أداء الإعلانات باستخدام ميزة "القديمة أثناء إعادة التحقق"

اكتشف كيف يمكن أن يؤدي تحميل الموارد التابعة لجهات خارجية بشكل أسرع إلى زيادة الأرباح.

توضح دراسة الحالة هذه كيف أن تحسين أداء الموارد الخارجية يمكن أن يعزز مقاييس الأعمال. على الرغم من أنّ دراسة سابقة تقيس تكلفة وقت استجابة الإعلانات الإضافية، توضّح هذه الدراسة قيمة تحسين الأداء في الوقت الفعلي:

زيادة بنسبة %0.5

زيادة الأرباح للناشرين

زيادة بنسبة %2

زيادة في عمليات تحميل النصوص البرمجية للإعلانات في وقت مبكر

المصدر: بيانات Google الداخلية، الفترة من حزيران (يونيو) إلى تموز (يوليو) 2019.

الخلفية

علامة "ناشر Google" هي النص البرمجي لوضع علامات على الإعلانات في "مدير إعلانات Google" الذي يطلب الإعلانات الصورية على الويب ويعرضها. من خلال استخدام عنوان HTTP بسيط stale-while-revalidate لعلامة GPT، تمكّن فريق GPT من تحسين سرعة وأداء الإعلانات الصورية من Google لشركائنا الناشرين. ويمكن تطبيق هذا الأسلوب نفسه على أي سيناريو آخر يكون فيه تحميل النصوص البرمجية بأسرع وقت ممكن أكثر أهمية من تحميل أحدث رمز.

المشكلة

تم نشر GPT كنص برمجي لبدء التشغيل، gpt.js، والذي يتم منحه وقتًا قصيرًا لمدة البقاء (TTL) لمدة 15 دقيقة. تسمح مدة البقاء (TTL) القصيرة هذه بتحديث النص البرمجي أو التراجع عنه سريعًا. بعد التحميل، يطلب gpt.js ويحمِّل نصوصًا برمجية إضافية للتنفيذ ذات مدة أطول من TTL.

بعد انتهاء مدة البقاء (TTL) التي تبلغ 15 دقيقة، يصبح إصدار gpt.js في ذاكرة التخزين المؤقت قديمًا ويجب إعادة التحقّق منه. في السابق، كانت عملية إعادة التحقّق هذه تتضمن تقديم طلب متزامن للشبكة لاسترجاع نسخة حديثة من النص البرمجي، وإضافة وقت استجابة لطلب الإعلان الأول.

الحل

يستخدم عنوان Cache-Control السمة stale-while-revalidate وتحدّد فترة زمنية إضافية يمكن خلالها لذاكرة التخزين المؤقت استخدام مادة عرض قديمة بينما تتم إعادة التحقق من صحة مادة العرض بشكل غير متزامن. يساعد ذلك المطوّرين في تحقيق التوازن بين الوقت المناسب، أي تحميل المحتوى المخزّن مؤقتًا على الفور والحداثة، وضمان استخدام التحديثات التي يتم إجراؤها على المحتوى المخزّن مؤقتًا في المستقبل.

دراسة حالة حول الإعلانات الصورية من Google

أضاف فريق GPT عنوان Cache-Control هذا في استجابة HTTP gpt.js في عام 2016، بحثًا عن متصفِّحات تطبّق stale-while-revalidate:

cache-control: private, max-age=900, stale-while-revalidate=3600

يعني هذا الإعداد أنّه في حال طلب gpt.js بعد مدة تتراوح بين 15 و60 دقيقة بعد القيمة السابقة المخزَّنة مؤقتًا، سيتم استخدام القيمة المخزَّنة مؤقتًا لتنفيذ الطلب حتى إذا كان قديمًا. في الوقت نفسه، سيتم إجراء طلب إعادة تحقُّق في الخلفية لتعبئة ذاكرة التخزين المؤقت بقيمة جديدة لاستخدامها في المستقبل.

طرح Chrome stale-while-revalidate في الإصدار 75 إلى 99% من جميع الزيارات، ما أدّى إلى إيقاف 1% من الزيارات مع إيقاف الميزة مؤقتًا لقياس تأثيرها. سجّل فريق GPT مقاييس من نسبة %1 (المجموعة التجريبية) بالإضافة إلى عيّنة بنسبة% 1 من الزيارات مع تفعيل الميزة (مجموعة التحكّم)، وذلك لاختبار فعالية stale-while-revalidate للنصوص البرمجية للإعلانات. على مدار أسبوعين من المقاييس المسجلة من حجم عينة تبلغ 5.2 مليار مرة ظهور للإعلانات الصورية في Google، لاحظت مجموعة التحكم ما يلي:

  • زيادة بنسبة 0.3% في عدد مرات ظهور الإعلانات
  • زيادة في الأرباح بنسبة 0.5%
  • زيادة بنسبة% 2 في عمليات تحميل النصوص البرمجية للإعلانات في مرحلة مبكرة (أقل من 500 ملي ثانية من بداية تحميل الصفحة).
  • زيادة بنسبة 1.1% في إجمالي تحميل النصوص البرمجية للإعلانات الناجحة.
النسبة المئوية للتغيير في عدد عمليات تحميل النصوص البرمجية للإعلان مقابل الوقت من بدء تحميل الصفحة إلى تحميل النص البرمجي للإعلان (بالمللي ثانية)
المصدر: بيانات Google الداخلية، من حزيران (يونيو) إلى تموز (يوليو) 2019.

كما هو موضّح في الرسم البياني أعلاه، يمكن أن ترجع نتائج هذه التجربة إلى زيادة في عمليات تحميل النصوص البرمجية للإعلانات الناجحة، مع حدوث معظمها في مرحلة مبكرة من عملية تحميل الصفحة.

تنفيذ ميزة "القديمة أثناء إعادة التحقق" على موقعك الإلكتروني

تبيّن لفريق GPT أنّ إجراء تغيير بسيط نسبيًا على عناوين HTTP باستخدام stale-while-revalidate يمكن أن يؤدي إلى تحسين السرعة وتعزيز مقاييس النشاط التجاري. يمكنك الاطّلاع على المشاركة الحفاظ على حداثة المحتوى واسترجاعه للحصول على مزيد من المعلومات عن كيفية تنفيذ stale-while-revalidate على موقعك الإلكتروني.

تصوير Kahica على Unسبلاش