Bu vaka çalışması, üçüncü taraf kaynaklarının performansını iyileştirmenin iş ölçümlerini nasıl artırabileceğini vurgulamaktadır. Önceki bir çalışma, eklenen reklam gecikmesinin maliyetini ölçerken, bu çalışma, gerçek dünyadaki performans iyileştirmesinin değerini gösteriyor:
0,5%
Yayıncılar için gelir artışı
2%
Erken reklam komut dosyası yüklemelerinde artış
Kaynak: Google Dahili Verileri, Haziran – Temmuz 2019.
Arka plan #
bu Google Yayıncı Etiketi (GPT) web’de görüntülü reklamlar isteyen ve görüntüleyen Google Ad Manager için reklam etiketleme komut dosyasıdır. Basit bir uygulama yaparak stale-while-revalidate
GPT için HTTP üst bilgisi olan GPT ekibi, yayıncı iş ortakları için Google görüntülü reklamlarının hızını ve performansını iyileştirmeyi başardı. Aynı teknik, betikleri olabildiğince çabuk yüklemenin en yeni kodu yüklemekten daha önemli olduğu diğer tüm senaryolara uygulanabilir.
Sorun #
GPT, bir önyükleme komut dosyası olarak dağıtılır, gpt.js
15 dakikalık kısa yaşam süresi (TTL) verilir. Bu kısa TTL, komut dosyasının hızlı bir şekilde güncellenmesini veya geri alınmasını sağlar. Bir kez yüklendiğinde, gpt.js
daha uzun bir TTL’ye sahip olan ek uygulama komut dosyalarını ister ve yükler.
15 dakikalık TTL’nin süresi dolduğunda, sürümü gpt.js
önbellekte eskir ve yeniden doğrulanması gerekir. Daha önce, bu yeniden doğrulama işlemi, komut dosyasının yeni bir kopyasını getirmek için senkronize bir ağ isteğinde bulunulmasını ve ilk reklam isteğine gecikme eklenmesini içeriyordu.
Çözüm #
bu stale-while-revalidate
öznitelik tarafından kullanılır Cache-Control
başlık ve varlık eşzamansız olarak yeniden doğrulanırken bir önbelleğin eski bir varlığı kullanabileceği fazladan bir zaman aralığı tanımlar. Bu, geliştiricilerin aciliyet arasında denge kurmasına yardımcı olur—önbelleğe alınmış içeriği hemen yükleme—ve tazelik—önbelleğe alınan içerik güncellemelerinin gelecekte kullanılmasını sağlamak.
Google görüntülü reklamlar vaka çalışması #
GPT ekibi bunu ekledi Cache-Control
başlıktaki gpt.js
2016’da HTTP yanıtı, tarayıcıların uygulanması beklentisiyle stale-while-revalidate
:
cache-control: private, max-age=900, stale-while-revalidate=3600
Bu ayar, eğer gpt.js
önceki önbelleğe alınan değerden 15 ila 60 dakika sonra istenirse, eski olmasına rağmen isteği yerine getirmek için önbelleğe alınan değer kullanılır. Aynı zamanda, önbelleği ileride kullanmak üzere yeni bir değerle doldurmak için arka planda bir yeniden doğrulama isteği yapılacaktır.
Chrome kullanıma sunuldu stale-while-revalidate
sürümde tüm trafiğin %75 ila 99’u, trafiğin %1’ini, etkisini ölçmek için özelliğin geçici olarak devre dışı bırakılmasıyla bırakır. GPT ekibi, bu %1’lik dilimden (deney grubu) ve özelliğin etkinleştirildiği bir trafik örneğinden (kontrol grubu) alınan metrikleri günlüğe kaydederek, stale-while-revalidate
reklam komut dosyaları için. Kontrol grubu, 5,2 milyar Google görüntülü reklam gösteriminden oluşan bir örneklem boyutundan günlüğe kaydedilen 2 haftalık ölçümler boyunca şunları gözlemledi:
- Reklam gösterimlerinde %0,3 artış.
- Gelirde %0,5 artış.
- Erken reklam komut dosyası yüklemelerinde %2 artış (sayfa yüklemesinin başlangıcından itibaren <500ms).
- Genel olarak başarılı reklam komut dosyası yüklemelerinde %1,1 artış.
Yukarıdaki grafikte gösterildiği gibi, bu deneyin sonuçları, çoğunluğu sayfa yükleme sürecinin başlarında olmak üzere, başarılı reklam komut dosyası yüklemelerindeki artışa bağlanabilir.
Stale-while-revalidate’i sitenize uygulama #
GPT ekibi, HTTP başlıklarında nispeten basit bir değişiklik yapmanın, stale-while-revalidate
hızı artırabilir ve iş ölçümlerini artırabilir. Uygulama hakkında daha fazla bilgi için Stale-while-revalidate gönderisine göz atın stale-while-revalidate
kendi sitenizde.