Doküman isteğiyle ilgili gecikme

Adam Raine
Adam Raine

Yayınlanma tarihi: 27 Mart 2025

Tüm ağ istekleri ve sayfa içeriği buna bağlı olduğundan, sayfa için yapılan ilk doküman isteği en önemlisidir. İlk doküman isteğini optimize etmek performansı artırır.

Analizin kontrol ettiği noktalar

Analiz, aşağıdaki koşullardan herhangi birinin ilk doküman isteğini etkileyip etkilemediğini kontrol eder:

  • Gezinme isteği bir veya daha fazla kez yönlendirildi.
  • Sunucunun isteğe yanıt vermesi 600 ms'den uzun sürdü.
  • Yanıt sıkıştırılmamış.
Geliştirici Araçları, yönlendirmeler ortadan kaldırılarak doküman gecikmesinin azaltılabileceğini bildiriyor.
DevTools, yönlendirmeler ortadan kaldırılarak doküman gecikmesinin azaltılabileceğini bildiriyor

Yönlendirmelerden kaçının

Yönlendirmeler, sayfa yükleme hızınızı yavaşlatır. Bir tarayıcı, yönlendirilmiş bir kaynak istediğinde sunucu genellikle şu gibi bir HTTP yanıtı döndürür:

HTTP/1.1 301 Moved Permanently
Location: /path/to/new/location

Tarayıcının, kaynağı almak için yeni konumda başka bir HTTP isteğinde bulunması gerekir. Ağ üzerinden yapılan bu ek yolculuk, kaynağın yüklenmesini geciktirebilir.

Bağlantıların, kaynağın mevcut konumunu gösterdiğinden emin olun. Mobil kullanıcıları sayfanızın mobil sürümüne yönlendirmek için yönlendirmeler kullanıyorsanız sitenizi duyarlı tasarım kullanacak şekilde yeniden tasarlamayı düşünebilirsiniz.

Sunucu yanıt sürelerini azaltma

Sunucu yanıt sürelerini iyileştirmenin ilk adımı, sunucunuzun sayfa içeriğini döndürmek için tamamlaması gereken temel kavramsal görevleri belirlemek ve ardından bu görevlerin her birinin ne kadar sürdüğünü ölçmektir. En uzun görevleri belirledikten sonra bunları hızlandırmanın yollarını bulun.

Yavaş sunucu yanıtlarının birçok olası nedeni ve iyileştirmenin birçok olası yolu vardır:

  • Sayfaları daha hızlı hazırlamak için sunucunun uygulama mantığını optimize edin. Bir sunucu çerçevesi kullanıyorsanız çerçevede bunu yapmayla ilgili öneriler olabilir.
  • Sunucunuzun veritabanlarına sorgu gönderme şeklini optimize edin veya daha hızlı veritabanı sistemlerine geçin.
  • Daha fazla bellek veya CPU'ya sahip olmak için sunucu donanımınızı yükseltin.
  • Ağ gecikmesini azaltmak için CDN kullanın. Bu, özellikle doküman CDN uç düğümünde önbelleğe alınabiliyorsa etkilidir.

Daha ayrıntılı bilgi için TTFB'yi optimize etme kılavuzuna bakın.

Sıkıştırmayı etkinleştirin

Metin sıkıştırma, ilk HTML belgesinin genel boyutunu küçültebilir. Bir tarayıcı kaynak istediğinde, hangi sıkıştırma algoritmalarını desteklediğini belirtmek için Accept-Encoding HTTP istek başlığını kullanır.

Accept-Encoding: gzip, compress, br, zstd

Ayrıca Metin tabanlı öğelerin kodlamasını ve aktarım boyutunu optimize etme başlıklı makaleyi de inceleyin.

Sunucunuz, hangi sıkıştırma algoritmasını kullandığını belirtmek için Content-Encoding HTTP yanıt üstbilgisini döndürmelidir.

Geliştirici Araçları, doküman isteğinin gzip sıkıştırması kullandığını bildiriyor.
Geliştirici Araçları, doküman isteğinin gzip sıkıştırması kullandığını bildiriyor

Yığına özel rehberlik

Bu analiz, aşağıdaki teknolojileri kullanan sayfalar için yığına özel rehberlik de sunar:

WordPress

  • Web sunucunuzun yapılandırmasında metin sıkıştırmayı etkinleştirin.
  • Hafif bir tema (ideal olarak blok tema) seçip tam sayfayı önbelleğe alma veya statik site çözümü uygulayın. Sunucu yükünü en aza indirmek için gereksiz eklentileri devre dışı bırakın.
  • Barındırma hizmetinizi, yönetilen veya özel hizmete yükseltebilirsiniz.

Drupal

  • Yönlendirme modülü yüklüyse gereksiz yönlendirmeleri inceleyip kaldırın.
  • Internal Page Cache, Internal Dynamic Page Cache ve BigPipe gibi bir veya daha fazla Drupal önbelleğe alma modülüyle trafiği azaltın. Yanıt süresini daha da iyileştirmek için bunları bir CDN ile birlikte kullanın. Barındırma sunucularınız, PHP OPcache kullanmalıdır.
  • Veritabanı sorgu sürelerini azaltmak için Redis veya Memcached gibi belleği önbelleğe alma tekniklerini kullanabilirsiniz.
  • Sunucu yanıt süresini azaltmak için yüksek performanslı temalar, modüller ve daha hızlı sunucular kullanın.

React

  • React Router kullanıyorsanız rota gezinmeleri için <Redirect> bileşeninin kullanımını en aza indirin.
  • Sunucu tarafında React bileşenleri oluşturuyorsanız istemcinin tüm işaretleme parçalarını bir defada alması yerine farklı parçaları alıp birleştirmesine izin vermek için renderToNodeStream() veya renderToStaticNodeStream() kullanmayı düşünün.

Joomla

  • Gzip Page Compression (Gzip Sayfa Sıkıştırma) ayarını etkinleştirin (System (Sistem) > Global configuration (Genel yapılandırma) > Server (Sunucu)).
  • Şablonlar, uzantılar ve sunucu özellikleri öğelerinin tümü sunucunun yanıt süresini etkiler. Bir optimizasyon uzantısını dikkatle seçerek veya sunucunuzu yeni sürüme geçirerek daha optimize bir şablon bulmayı değerlendirin.

Magento

Kaynaklar