Üçüncü taraf kaynaklarının daha hızlı yüklenmesinin geliri nasıl artırabileceğini öğrenin.
Bu örnek olay incelemesinde, üçüncü taraf kaynaklarının performansını iyileştirmenin işletme metriklerini nasıl artırabileceği ele alınmaktadır. Önceki bir çalışmada, eklenen reklam gecikmesinin maliyeti ölçülmüş olsa da bu çalışma, gerçek dünyadaki performans artışının değerini ortaya koymuştur:
%0,5
Yayıncılar için gelir artışı
%2
Erken reklam komut dosyası yüklemelerinde artış
Kaynak: Google'ın Kendi Verileri, Haziran-Temmuz 2019.
Arka plan
Google Yayıncı Etiketi (GPT) web'de görüntülü reklamlar isteyen ve oluşturan, Google Ad Manager için kullanılan reklam etiketleme komut dosyasıdır. GPT ekibi, GPT için basit bir stale-while-revalidate
HTTP üst bilgisi uygulayarak yayıncı iş ortakları için Google görüntülü reklamlarının hızını ve performansını artırmayı başardı. Aynı teknik, komut dosyalarını mümkün olduğunca hızlı yüklemenin, en yeni kodu yüklemekten daha önemli olduğu tüm diğer senaryolara uygulanabilir.
Sorun
GPT, gpt.js
adlı önyükleme komut dosyası olarak dağıtılır. Bu komut dosyası için 15 dakikalık kısa geçerlilik süresi (TTL) verilir. Bu kısa TTL, komut dosyasının hızlı bir şekilde güncellenmesini veya geri çekilmesini sağlar. Yüklendikten sonra, gpt.js
daha uzun bir TTL'ye sahip ek uygulama komut dosyalarını ister ve yükler.
15 dakikalık TTL dolduğunda önbellekteki gpt.js
sürümü eski hale gelir ve yeniden doğrulanması gerekir. Daha önce, bu yeniden doğrulama süreci, komut dosyasının yeni bir kopyasını getirmek için eşzamanlı bir ağ isteğinde bulunuluyor ve ilk reklam isteğine gecikme ekliyordu.
Çözüm
stale-while-revalidate
özelliği, Cache-Control
başlığı tarafından kullanılır ve bir önbelleğin, eşzamansız olarak yeniden doğrulanırken eski bir öğeyi kullanabileceği ek bir süreyi tanımlar. Bu, geliştiricilerin aciliyet (önbelleğe alınmış içeriği hemen yükleme) ve
güncellik: Önbelleğe alınan içerik güncellemelerinin gelecekte kullanılmasını sağlar.
Google görüntülü reklamlar örnek olayı
GPT ekibi, stale-while-revalidate
uygulayan tarayıcıların farkında olarak 2016'da gpt.js
HTTP yanıtına şu Cache-Control
üst bilgisini ekledi:
cache-control: private, max-age=900, stale-while-revalidate=3600
Bu ayara göre gpt.js
, önceki önbelleğe alınan değerden 15 ila 60 dakika sonra istenirse eski olsa bile isteği yerine getirmek için önbelleğe alınan değer kullanılır. Aynı zamanda, önbelleği gelecekte kullanılmak üzere yeni bir değerle doldurmak için arka planda bir yeniden doğrulama isteği yapılır.
Chrome, stale-while-revalidate
sürümünü tüm trafiğin %75'inden %99'una kullanıma sundu. Böylece, etkisini ölçmek için özellik geçici olarak devre dışı bırakıldı ve trafiğin %1'i geride kaldı. GPT ekibi, reklam komut dosyaları için stale-while-revalidate
ürününün etkinliğini test etmek amacıyla bu %1'lik dilim (deneme grubu) ve özelliğin etkin olduğu% 1'lik trafik örneğinin (kontrol grubu) metriklerini kaydetti. Kontrol grubu, 5,2 milyar Google görüntülü reklam gösteriminden oluşan örneklem boyutundan kaydedilen metriklerden oluşan 2 haftalık süre boyunca şunları gözlemledi:
- Reklam gösterimlerinde% 0,3 artış.
- Gelirde% 0,5 artış.
- Erken reklam komut dosyası yüklemelerinde% 2 artış (sayfa yüklemenin başlangıcından itibaren <500 ms).
- Toplam başarılı reklam komut dosyası yükleme sayısında% 1,1 artış.
Yukarıdaki grafikte gösterildiği gibi, bu denemenin sonuçları, çoğu sayfa yükleme sürecinin başında gerçekleşen başarılı reklam komut dosyası yüklemelerindeki artışla ilişkilendirilebilir.
Sitenizde eski durumu yeniden doğrulama özelliğini uygulama
GPT ekibi, stale-while-revalidate
kullanarak HTTP üstbilgilerinde nispeten basit bir değişiklik yapmanın hızı artırabileceğini ve iş metriklerini iyileştirebileceğini gördü. stale-while-revalidate
hizmetini kendi sitenizde uygulamayla ilgili daha fazla bilgi edinmek için Stale-while-re işlevi ile güncelliği sağlama başlıklı gönderiyi inceleyebilirsiniz.