1. Neden CMS Performansı Önemli?

CMS performansı, sadece editörün panelde sayfa açma hızını değil; esas olarak ziyaretçinin sayfayı ne kadar hızlı gördüğünü belirler. Headless mimaride kullanıcı, sayfanın HTML’ini almak için çoğu zaman CMS API’si, edge/CDN, uygulama sunucusu ve revalidation mantığı gibi bir zincire bağlıdır. Zincirin herhangi bir halkası yavaşsa; TTFB artar, LCP gecikir, kullanıcı “site ağır” hisseder. Otellerde bu etki daha görünürdür: Antalya/Belek gibi sezon yoğunluğunda trafik artarken performans düşerse, dönüşüm kaybı hızlanır.
Burada kritik olan şu: performans bir “tek seferlik optimizasyon” değil, politikadır. Hangi sayfa türü ne kadar sık değişir, hangi içerik “kritik”tir, güncelleme sitede ne kadar hızlı görünmelidir? Bu soruların cevabı, SSG/ISR/SSR seçimleri ve cache stratejisini belirler.
“Hız” ile “güncellik” neden çatışır?
Statik üretim (SSG) ve agresif cache, hızı artırır; ancak içerik güncellemeleri “hemen” görünmeyebilir. Tam tersi, her istekte SSR ile API çağrısı yapmak içerik güncel tutar; fakat maliyet ve latency artar. İyi tasarım; sayfa türlerine göre farklı strateji uygular ve publish sonrası kontrollü revalidation ile güncelliği korur.
Key statistic / veri noktası (yumuşatılmış)
Performans ve cache stratejisi iyi planlanan headless projelerde, genelde hem Lighthouse/CWV skorları hem de gerçek kullanıcı hız algısı (RUM) belirgin şekilde daha iyi olur. Buradaki farkı yaratan; yalnız “front-end minify” değil, cache hit oranı ve publish→live süresinin öngörülebilir hale gelmesidir.
- •En çok trafik alan sayfalarınız (oda, kampanya, blog) için ayrı strateji var mı?
- •“Publish → canlı” sürenizi ölçüyor musunuz?
- •API yanıt süresi (p95) ve cache hit rate takip ediliyor mu?
Ne yapmalıyım? (SXO – aksiyon listesi)
- • Sayfaları “değişim sıklığı”na göre sınıflandır (seyrek / orta / sık).
- • En kritik 10 sayfa için hedef “publish→live” süresi belirle.
- • API latency + cache hit rate için basit ölçüm paneli kur.
- • SSG/ISR/SSR kararını içerik tipine bağla (rastgele değil).
- • Revalidation/purge akışını “yayın sürecinin parçası” yap.
2. Headless CMS + Next.js’de Veri Alma Stratejileri (SSG, ISR, SSR)

Next.js tarafında temel soru şudur: Bu sayfanın HTML’i ne zaman üretilecek? • SSG: Build-time’da üretilir, çok hızlıdır. • ISR: SSG gibi hızlıdır, ancak belirli aralıklarla veya tetikle yenilenir. • SSR: Her istekte üretilir, günceldir ama daha pahalı ve daha yavaştır. Burada “doğru” tek seçenek yoktur; doğru olan, sayfa türüne ve iş ihtiyacına göre politika tanımlamaktır. Otel fiyat/kampanya gibi sık değişen alanlar ile “Hakkımızda” gibi seyrek değişen içerikler aynı stratejiyi taşımaz.
SSG/ISR/SSR’i hangi sayfalarda kullanmalıyım? (AEO – Soru formatı)
Kısa cevap: Seyrek değişen içerikler SSG, orta sıklıkta değişen içerikler ISR, gerçek zamanlı güncelleme gereken kritik içerikler kontrollü SSR veya event-driven ISR ile yönetilmelidir.
Tek tabloyla karar matrisi (Media Pack tabloyu burada kullanıyoruz)
Not: “otel sitesi için ssg ssr isr kararı” gibi predictive ihtiyaçlar, bu tabloyla pratik karşılık bulur.
| Sayfa tipi | Değişim sıklığı | Öneri | Neden | Risk |
|---|---|---|---|---|
| Kurumsal sayfalar (Hakkımızda) | Seyrek | SSG | Maksimum hız, minimum maliyet | Bayat içerik düşük risk |
| Blog / rehber içerik | Orta | ISR | Hız + güncelleme dengesi | Revalidation eksikse gecikme |
| Oda/destinasyon içerikleri | Orta | ISR | SEO + hız, düzenli yenileme | Çok sık değişirse aralık kısa olmalı |
| Kampanya landing | Orta–Sık | ISR (event-driven) | Publish sonrası hızlı yansıma | CDN purge yoksa bayat kalır |
| Fiyat/availability kritik | Sık | Kontrollü SSR / Edge + cache | Güncellik öncelikli | TTFB artabilir, maliyet artar |
Not: "otel sitesi için ssg ssr isr kararı" gibi predictive ihtiyaçlar, bu tabloyla pratik karşılık bulur.
SSG/ISR ile içerik sayfalarını build-time’da üretme
SSG, özellikle kurumsal sayfalar ve ağır trafikli statik içeriklerde çok etkilidir. Ancak SSG’nin zayıf noktası, build süresi ve yayın döngüsüdür. İçerik sayısı büyüdükçe (çok sayıda blog/oda), build süreleri uzar. Bu yüzden büyük içerik hacminde SSG’yi ISR ile tamamlamak daha sürdürülebilir olur.
Sık değişen sayfalar için SSR/ISR tercihleri
“Fiyat, kampanya koşulu, stok/ürün dokümanı” gibi alanlarda güncellik kritikse iki yaklaşım öne çıkar: • Event-driven ISR: Publish tetikleyince ilgili sayfayı revalidate etmek • Kontrollü SSR: Sadece kritik alanları SSR ile güncellemek (tam sayfayı değil, parçalı strateji)
- •“Her şeyi SSR yapalım” gibi refleks karar verdiniz mi? (genelde pahalı)
- •ISR aralığınız içerik değişim hızına uygun mu?
- •Kritik sayfalar için event-driven revalidation var mı?
Ne yapmalıyım? (SXO – aksiyon listesi)
- • Sayfa tiplerini tabloya göre sınıflandırıp varsayılan strateji ata.
- • Kampanya ve kritik sayfalarda “publish tetikleyici” kurgula.
- • ISR aralıklarını trafik ve değişim sıklığına göre farklılaştır.
- • SSR’i “her sayfa” değil “kritik ihtiyaç” için kullan.
- • Ölç: TTFB, LCP ve publish→live sürelerini strateji bazında karşılaştır.
3. API Cache ve CDN Kullanımı

Headless mimaride sayfayı hızlandırmanın ana anahtarı, “API çağrısını azaltmak” ve “cache hit’i artırmak”tır. Cache tek katman değildir; genellikle üç katman birlikte çalışır: 1. Next.js veri cache’i / fetch cache mantığı (uygulama katmanı) 2. API cache (CMS’in veya araya koyduğunuz cache layer’ın cevabı) 3. CDN/edge cache (sayfa ve asset katmanı) En sık hata: CDN’i açıp her şeyi cache’lemek ve sonra “içerik güncellenmiyor” diye şaşırmak. Doğru yaklaşım; cache’i içerik türü ve kritik alan bazında yönetmektir.
API response süresi ve cache layer
CMS API’niz yavaşsa (özellikle p95), SSG/ISR bile zorlanır; çünkü revalidation anında yine API’ye gidersiniz. Bu yüzden API cache layer iki iş yapar: • Sık kullanılan içerikleri hızlı döndürür (cache hit) • Origin’e yükü azaltır (stabilite)
CDN cache politikası nasıl düşünülmeli?
CDN’de iki temel varlık vardır: • Statik asset (görsel, font, js/css) → uzun TTL uygundur • HTML / sayfa içeriği → stratejiye göre TTL + purge/revalidate gerekir Otel kampanya sayfalarında (özellikle sezon yoğunluğu) CDN doğru kurgulanırsa hem hız hem dayanıklılık artar. Ancak kampanya koşulu değiştiğinde CDN’de bayat içerik kalmaması için purge veya revalidation tetiklenmelidir.
AIO paragrafı (entity’leri tek modelde bağlama)
Headless CMS, Next.js, ISR/SSG/SSR, CDN cache ve revalidation; tek başına ayrı başlıklar değil, birlikte çalışan bir “performans & cache modeli”dir. CMS verisi (entity) Next.js’te seçilen stratejiyle HTML’e dönüşür; bu HTML CDN/edge’de hızlanır; içerik yayınlandığında revalidation/purge tetiklenerek freshness korunur. Bu modeli kurarken amaç; content delivery speed ile freshness vs speed balance arasında ölçülebilir bir denge yakalamaktır.
- •CDN cache’i açtığınızda içerik güncellemeleri gecikiyor mu?
- •Cache hit rate ölçülüyor mu?
- •“Purge/revalidate” tetikleyici mekanizmanız var mı?
Ne yapmalıyım? (SXO – aksiyon listesi)
- • Cache katmanlarını ayrı ayrı tanımla (app/API/CDN).
- • HTML ve asset için farklı TTL politikası belirle.
- • API cache layer ile p95 yanıt süresini stabilize et.
- • Kampanya ve kritik sayfalar için purge/revalidate akışı kurgula.
- • Cache hit rate ve origin load metriklerini takip et.
4. Panelde İçerik Güncelleme → Front-end’te Yansıma Süreci

Kullanıcıların en sık yaşadığı problem: “CMS’te publish yaptım ama site hâlâ eski.” Bu, genellikle üç nedenden biridir: 1. ISR/revalidation tetiklenmiyordur, 2. CDN/edge bayat içeriği servis ediyordur, 3. API cache layer yanlış TTL ile eski cevabı döndürüyordur. Bu yüzden “publish” işlemini yalnız bir içerik olayı değil, aynı zamanda cache kontrol olayı olarak ele almak gerekir.
CMS’de içerik güncellemesi front-end’e nasıl hızlı yansır? (AEO – Soru formatı)
Kısa cevap: Publish sonrası ilgili sayfalar için revalidation tetikleyin; CDN/edge cache varsa purge edin; API cache TTL’ini içerik türüne göre ayarlayın.
“Publish → cache flush” akışı nasıl kurgulanır?
En pratik yaklaşım: CMS publish event’i bir webhook üretir. Bu webhook; • İlgili sayfa path’lerini belirler (blog/oda/kampanya) • Next.js revalidate endpoint’ini çağırır • CDN purge gerekiyorsa purge tetikler • Log/izleme kaydı düşer (hangi içerik, ne zaman, kaç saniyede canlı) Bu akış doğru kurulduğunda “publish→live” süresi öngörülebilir olur; ekip içi tartışma azalır.
Revalidation aralıkları nasıl seçilmeli?
Revalidation’ı “tek sayı” yapmayın. Blog için 6–24 saat, oda/destinasyon için 1–6 saat, kampanya için daha kısa veya event-driven gibi. En doğrusu: içerik değişim sıklığı + trafik pattern’i ile karar vermek.
- •Publish event’inden sonra otomatik revalidate var mı?
- •CDN purge yapmanız gereken sayfalar listeli mi?
- •“Publish→live” süresi loglanıyor mu?
Ne yapmalıyım? (SXO – aksiyon listesi)
- • Publish event → revalidate/purge zincirini kur (webhook).
- • Sayfa tipine göre revalidation politikası tanımla (tek sayı değil).
- • “Bayat içerik” şikâyetlerini cache katmanı bazında teşhis et.
- • Publish→live süresini ölç ve hedef SLA koy.
- • Kritik içeriklerde rollback (geri alma) prosedürü ekle.
5. Otel ve B2B İçin Performans Senaryoları


Aynı teknik altyapı, farklı iş modellerinde farklı risk üretir. Otelde en kritik konu; kampanya ve fiyat gibi dönüşüm etkileyen alanlarda freshness. B2B’de ise ürün/doküman güncellemeleri ve içerik hacmi arttıkça “build ve cache yönetimi” zorlaşır. İki senaryoda da çözüm, sayfa bazlı politika ve ölçümdür.
Otel senaryosu — fiyat/kampanya değişikliği
• Kampanya landing: ISR + event-driven revalidation • Oda sayfaları: ISR (daha uzun aralık) • Fiyat/availability kritik alan: kontrollü SSR veya API cache + kısa TTL • CDN: kampanya sayfalarında purge tetikleyici şart Mini örnek: Side veya Kemer’de “son dakika” kampanyası koşulu güncellendiğinde, publish sonrası 1–2 dakika içinde canlıya yansıması hedeflenir; aksi halde “yanlış teklif” riski doğar.
B2B senaryosu — ürün/doküman güncellemeleri
• Ürün/hizmet sayfaları: ISR • Döküman/resource sayfaları: CDN ile agresif asset cache, sayfa için kontrollü revalidate • Blog/referans: daha uzun revalidation • API cache: katalog büyüdükçe origin yükünü stabil tutar
Teknik SEO uyumu (kritik sayfalar ve CWV)
SEO tarafında “taze içerik” (özellikle blog, oda, kampanya) ve CWV optimizasyonu birlikte planlanmalıdır. Revalidation aralıkları ve kritik sayfalar, /tr/seo/teknik-seo yaklaşımıyla uyumlu olmalı; aksi halde ya indekslenen içerik bayatlar ya da performans skorları düşer. İç link (Internal Link Targets): • https://dgtlface.com/tr/seo/teknik-seo • https://dgtlface.com/tr/yazilim/web-sitesi-gelistirme • https://dgtlface.com/tr/yazilim/sunucu-guvenlik • https://dgtlface.com/tr/yazilim/cms-entegrasyonu
Rakip açığını kapatan mini bölüm (AI Competitor Gap)
Pek çok rehber “SSG/ISR/SSR nedir?” anlatır ama kritik noktayı atlar: publish sonrası cache flush ve sayfa bazlı revalidation politikası. Buradaki fark; teknik terimleri bilmek değil, içerik operasyonunu “tıkla yayınla”dan “tıkla → revalidate/purge → ölç” döngüsüne taşımaktır. Bu döngü kurulduğunda hem CWV hem de kullanıcı algısı daha öngörülebilir hale gelir.
- •Otelde kampanya değişince purge/revalidate otomatik mi?
- •B2B’de doküman güncellemesi “hemen” mi yoksa “planlı” mı yansıyor?
- •Teknik SEO ekibiyle revalidation politikası ortak mı?
Ne yapmalıyım? (SXO – aksiyon listesi)
- • Otel için kampanya/fiyat alanlarını “kritik” ilan edip event-driven akış kur.
- • B2B’de resource/doküman sayfalarında asset cache’i agresif, sayfa cache’ini kontrollü yönet.
- • Revalidation politikalarını /tr/seo/teknik-seo ile uyumlu dokümante et.
- • Sunucu/CDN güvenliği ve cache purge izinlerini /tr/yazilim/sunucu-guvenlik ile hizala.
- • Ölçümle yönet: cache hit, p95 API latency, publish→live, CWV.
6. Sonuç: Hız–Güncellik Dengesi “Politika + Akış + Ölçüm”dür
Headless CMS + Next.js projelerinde performans, “sayfayı bir kez hızlandır” işi değildir. SSG/ISR/SSR kararlarıyla üretim stratejisini belirler; API cache + CDN ile dağıtım hızını artırır; publish sonrası revalidation/purge akışıyla güncelliği korursunuz. Bu üç katman birlikte çalıştığında, hem Lighthouse/CWV tarafında hem de gerçek kullanıcı hız algısında genelde belirgin iyileşme görülür.
7. Headless + Next.js Performans & Cache Planlama Şablonunu İndir — Yazılım / Performans & Caching (v1.0)
Headless + Next.js Performans & Cache Planlama Şablonunu İndir — Yazılım / Performans & Caching (v1.0)
Bu şablon, Headless CMS + Next.js projelerinde SSG/ISR/SSR kararlarını ve cache/revalidation politikasını sayfa tiplerine göre hızlıca planlamanıza yardımcı olur. Otel ve B2B sitelerinde “publish→live” süresini öngörülebilir hale getirerek hem hız hem güncellik hedeflerini birlikte yönetmeyi amaçlar.
Kim Kullanır?
Teknik lider, ürün sahibi, ajans teknik ekibi, performans/SEO sorumlusu.
Nasıl Kullanılır?
- Sayfa tiplerini ve değişim sıklıklarını doldurun.
- Her sayfa tipi için SSG/ISR/SSR ve TTL/revalidate kuralını seçin.
- Publish sonrası revalidation/purge akışını ve ölçüm KPI’larını ekleyin.
Ölçüm & Önceliklendirme (Kısa sürüm)
- ▢ ✅ Bayat içerik test senaryosu var
- ▢ ✅ Revalidate çalışıyor (log ile)
- ▢ ✅ CDN purge doğrulandı
- ▢ ✅ Kritik sayfalar /tr/seo/teknik-seo planına uyumlu
- ▢ ✅ Sunucu/CDN izinleri /tr/yazilim/sunucu-guvenlik ile uyumlu
PDF içinde: Problem→Kök Neden→Çözüm tablosu + 14 gün sprint planı + önce/sonra KPI tablosu
Bir Sonraki Adım
Headless CMS + Next.js kullanan otel ve B2B sitelerinde hız–güncellik dengesini ölçülebilir hale getirin.
