App Router’da ürün verisini nerede ve ne kadar süre önbelleğe alıyorsunuz?

0 Yanıt 0 Görüntülenme
Puanlayanlar
Katılımcılar
Konuyu Açan #1
Bir ürün listeleme sayfasında aynı veriye hem Server Component’lerden hem de istemci tarafındaki etkileşimlerden ihtiyaç duyunca önbellek kararları biraz karışabiliyor. Özellikle “Bu veri neden güncellenmedi?” sorusunun kaynağı bazen tarayıcı değil, sunucu tarafındaki fetch önbelleği oluyor.

Örneğin sık değişmeyen bir katalog için süreli önbellek ve etiket kullanmak anlaşılır bir başlangıç:

KOD
1234567
const response = await fetch("https://api.ornek.com/products", {
  next: {
    revalidate: 60,
    tags: ["products"],
  },
});


Ben burada üç şeyi ayrı düşünmeye çalışıyorum: verinin ne sıklıkla değiştiği, güncelleme sonrası ne kadar çabuk görünmesi gerektiği ve aynı verinin başka hangi sayfalarda kullanıldığı. Süreli yenileme katalog gibi içeriklerde yeterli olabilir; yönetim panelinden ürün güncellenince ilgili önbelleği geçersiz kılmak ise daha tutarlı sonuç veriyor. Etiketlemenin faydası da tam burada ortaya çıkıyor.

Bir de önbellek davranışını yalnızca geliştirme ortamında test etmemek gerektiğini düşünüyorum; yerel geliştirme ile üretimdeki davranış her zaman aynı hissettirmeyebiliyor. Geçersiz kılma API’sinin kullanımı Next.js sürümüne göre değişebildiği için sürüm dokümantasyonunu kontrol etmek iyi oluyor.

Siz ürün, blog veya katalog verilerinde süreli yenileme mi kullanıyorsunuz, yoksa güncelleme anında etiket bazlı geçersiz kılmayı mı tercih ediyorsunuz?

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi