Time to First Byte (TTFB) Nedir?

DursunKaptan

Astsubay Kıdemli Başçavuş
Katılım
23 Haz 2025
Mesajlar
273
Tepkime puanı
75
Puan
462
Konum
İkizdere/Rize
Web sitesi
53r.com.tr
images


Time to First Byte (TTFB) Nedir?

Time to First Byte (TTFB), bir web sayfasının yüklenmeye başladığı anda tarayıcının sunucudan ilk baytı (first byte) alana kadar geçen süreyi ölçen temel bir performans metriğidir. Bu süre, kullanıcının isteğiyle sunucunun yanıt vermesi arasındaki toplam gecikmeyi ifade eder ve arka uç performansının kritik bir göstergesidir.


TTFB Neden Önemli?

  • Kullanıcı Deneyimi: Yüksek TTFB, sayfanın "donmuş" gibi görünmesine neden olur.
  • SEO Etkisi: Google, TTFB'yi dolaylı bir sıralama faktörü olarak değerlendirir (yavaş TTFB, diğer Core Web Vitals metriklerini olumsuz etkiler).
  • Performans Zinciri: TTFB, FCP (First Contentful Paint) ve LCP (Largest Contentful Paint) gibi diğer metrikleri doğrudan etkiler.

Örnek Senaryo:

Kullanıcı bir URL'yi tıklar → Tarayıcı sunucuya istek gönderir → Sunucu işlemi tamamlar ve yanıtın ilk baytını gönderir. Bu süre TTFB'dir.


İyi ve Kötü TTFB Değerleri

  • İyi (Good): 200 ms (0.2 saniye) altı
  • Kabul Edilebilir: 200-500 ms
  • Kötü (Poor): 500 ms üzeri
⚠️ Not: TTFB tek başına sayfa hızını belirlemez, ancak optimizasyon için bir uyarı işaretidir.

TTFB'yi Etkileyen Faktörler

1.​

  • Yavaş backend kodu (PHP, Node.js, Python),
  • Veritabanı sorgularının optimize edilmemesi,
  • Yetersiz sunucu kaynakları (CPU/RAM).

2.​

  • Kullanıcı ile sunucu arasındaki fiziksel mesafe,
  • DNS çözümleme süresi,
  • Yavaş CDN veya proxy katmanları.

3.​

  • Dinamik içeriklerin önbelleklenmemesi,
  • Statik kaynakların yanlış yapılandırılması.

4.​

  • Çok sayıda yönlendirme (redirect),
  • HTTPS el sıkışmasının (TLS) yavaş olması.

TTFB Nasıl Ölçülür?

  1. Gerçek Kullanıcı Verisi (RUM):
    • Chrome User Experience Report (CrUX),
    • web-vitals.js:
    • JavaScript:
      import { getTTFB } from 'web-vitals';
      getTTFB(console.log);
Lab Verisi:

  • Chrome DevTools > Network sekmesi (isteğin "Waiting (TTFB)" sütunu),
  • WebPageTest veya Lighthouse.

TTFB Optimizasyonu İçin 5 Pratik Çözüm

1.​

  • Backend kodunu optimize edin (gereksiz sorguları kaldırın),
  • Veritabanı indeksleri ekleyin,
  • Sunucu ölçeklendirme (scaling) yapın.

2.​

  • Statik ve dinamik içerikleri CDN ile dağıtın (Cloudflare, Fastly),
  • Edge caching ile kullanıcıya yakın sunuculardan yanıt verin.

3.​

  • Sayfa önbelleği için:
  • NGINX:
    # Nginx örneği
    location / {
      proxy_cache my_cache;
      proxy_cache_valid 200 1h;
    }
  • HTTP başlıklarını ayarlayın (Cache-Control, Expires).

DNS ve Ağ Optimizasyonu

  • DNS çözümleme süresini düşürmek için DNS-prefetch ekleyin:
HTML:
<link rel="dns-prefetch" href="https://example.com">

  • HTTP/2 veya HTTP/3 kullanın.

5.​

  • Gereksiz yönlendirmeleri (redirect) kaldırın,
  • TLS 1.3'e geçin,
  • Brotli/Gzip sıkıştırması kullanın.


TTFB vs Diğer Metrikler

MetrikÖlçtüğü Şeyİdeal Süre
TTFBSunucunun ilk baytı gönderme süresi<200 ms
FCPİlk içeriğin görünme süresi<1.8 s
LCPAna içeriğin görünme süresi<2.5 s




Örnek TTFB İyileştirmesi

Sorun: Bir e-ticaret sitesinde ürün sayfasının TTFB'si 1200 ms.
Neden: Veritabanı sorguları optimize edilmemiş + önbellek yok.
Çözüm:

  • Sorgulara indeks eklendi,
  • Redis ile önbellek yapıldı,
  • CDN entegre edildi.
    Sonuç: TTFB 1200 ms → 180 ms düştü.

Sonuç

TTFB, sunucu tarafı performansının en temel göstergesidir. Optimizasyon için:
✅ Backend ve veritabanını optimize edin,
✅ CDN ve önbellek mekanizmalarını kullanın,
✅ Ağ gecikmesini azaltın.
 
Son düzenleme:

Benzer Konular

Forum istatistikleri

Konular
855
Mesajlar
1,264
Kullanıcılar
20
Son üye
DamianNann
Geri
Üst