Sunucu Yanıt Süresi Nedir? Nasıl Kısaltılır?
Sunucu yanıt süresi (TTFB) nedir, sunucu yanıt süresi nasıl kısaltılır sorularının cevapları ve hız testi araçlarındaki 'ilk sunucu yanıt süresini kısaltın' hatasının çözümü hakkında detaylı bir şekilde açıklanmış çeşitli öneriler işte bu yazıda!
Sunucu Yanıt Süresi Nedir (TTFB): İnternet sunucusuna belirli bir istek gönderen bir internet tarayıcısı ile sunucunun gönderilen isteği yanıtlaması arasında geçen süreyi belirtir. Kısaltması olan TTFB, İngilizce “time to first byte” kelimelerinin baş harflerinden oluşmaktadır.
Sunucu yanıt süresi sitenin trafiğine, kullandığı temaya, sitenin kaynak kullanımına, kullandığınız sunucuya ve sunucunun çeşitli özelliklerine bağlıdır. İşte bu yazıda sunucu yanıt süresi nasıl kısaltılır sorunu hakkında sebepleriyle açıklanmış detaylı çözüm önerileri bulacaksınız.
Çeşitli araştırmalara göre sunucu yanıt süresi 3 saniyeyi geçtikten sonra kullanıcıların %40’ı siteye girmeden terk ediyor. Bu hem itibar zedelenmesine, hem kalite düşüşüne, hem de (maddi bir amaç taşıyorsanız) kazançlarda ciddi bir düşüşe sebep olabiliyor.
Ünlü arama motoru Google’a göre ideal sunucu yanıt süresi 0.2 saniyeden yani 200 milisaniyeden kısadır. Sunucu yanıt süresinin uzaması internet sayfalarının yüklenme süresinin doğrudan uzattığı için normalden uzun sunucu yanıt süreleri kısaltılmalıdır.
Sunucu Yanıt Süresi Nasıl Kısaltılır?
1- Sunucunuzu Değiştirin veya Optimize Edin
1.1 – Sunucu Optimizasyonu
Kullanıcıların cihazlarında internet sayfalarının yüklenebilmesi için sunucudan gerekli olan dosyaları indirmeleri gerekir. Eğer bu dosyalar sayıca ve boyutça fazla ise, hepsi aynı anda yükleniyorsa bu durum sorgu sayısını ve kaynak kullanım miktarını arttırdığı için sunucu yanıt süresinin uzamasına sebep olacaktır.
Çözüm:
✅ Sunucudaki yazılım güncellemeleri düzenli olarak yapılmalıdır. Güncellemeler genellikle hem uyumluluğu hem de performansı arttırır.
✅ Sunucudaki görsellerin boyutları küçültülmeli ve yeni nesil formatlarla (WebP, JPEG 2000 vb.) sunulmalıdır.
(Ayrıca Bakınız: Görsel SEO Nasıl Yapılır? [Resim İçin SEO])
✅ Sunucuda kurulu olan eklenti sayısı azaltılmalıdır. Önem arz eden güvenlik, spam, filtreleme, SEO vb. amaçlarla kullanılan eklentiler kaldırılmamalıdır!
✅ Sunucu dosyaların boyutlarını küçülten GZIP ve Brotli gibi metin sıkıştırma özellikleri aktifleştirilmelidir. GZIP daha çok tarayıcı tarafından desteklense de Brotli daha iyi bir sıkıştırma yapmaktadır.
✅ Sunucudaki HTML, CSS, JS ve yazı tipi gibi dosyalar sıkıştırılarak toplam dosya sayısı azaltılmalı ve bu dosyaların da boyutları küçülmelidir.
✅ Ayrıca önbellek kullanımı
1.2 – Yönlendirmeleri Azaltın
Yönlendirmeler sunucu yanıt süresini doğrudan uzatmaktadırlar. Çünkü sunucudan istekte bulunan kullanıcılara sunucu tarafından herhangi bir veri gönderilmeden önce, isteğe nasıl cevap verileceğini anlamak için sunucunun yönlendirme ayarlarını bünyesinde bulunduran “.htaccess” dosya yönergelerini okuması gerekir.
Örneğin kırılan bağlantıları ana sayfaya yönlendirmek, kırık bağlantılara tıklayan kişiler için açılış süresini uzatacaktır. Aynı sayfanın yönlendirme içeren ve içermeyen halinin sunucu yanıt süresi ve sayfa yüklenme süresi arasındaki fark aşağıdaki görseldeki gibidir:
Çözüm:
✅ Sitenizdeki yönlendirmelerin sayısını en aza indirin. (Eğer varsa)
✅ Yeni yönlendirmeler kullanmaktan olabildiğince kaçının.
✅ “.htaccess” dosyasındaki ayarları optimize edin.
1.3 – Daha Kaliteli Bir Sunucu Kullanın
.#. Kaliteli sunucular gerek sorgu limitlerinin yüksek olması, gerek de daha iyi donanımsal işlem yapabilme özelliklerine sahip olabilmeleri sebebiyle daha düşük sunucu yanıt sürelerine sahiptirler. Peki sunucu seçimi ile sunucu yanıt süresi nasıl kısaltılır?
Kaliteli, yeni nesil ve gelişmiş donanımlara sahip, olabildiğince güncel yazılımlar ile çalışan, bünyesinde ilgili optimizasyonları barındıran, çeşitli konularda (sorgu, I/O vb.) limitleri yüksek olan ve yakın konumdaki sunucular tercih edilmelidir.
(Ayrıca Bakınız: Sunucu Seçimi Nasıl Yapılır? [Dev Rehber])
Çözüm:
✅ Sunucuda %100 CPU, %100 RAM gibi sorunların olmadığına emin olun.
✅ Daha üst düzey donanımsal özelliklere sahip sunucular tercih edin.
✅ SQL sorgu limiti daha yüksek olan sunucuları tercih edin.
✅ Paylaşımlı sunucular yerine, VDS ve VPS gibi sunucuları tercih edin.
✅ Sunucuda metin sıkıştırmanın (gzip, brotli…) aktif olduğuna emin olun.
✅ Sunucudaki JS ve CSS optimizasyonlarını (sıkıştırma, erteleme…) yaptığınıza emin olun.
Örneğin pek çok sitenin ortak olarak barındığı paylaşımlı sunucular ucuz olmakla beraber dezavantajlıdır. Örneğin sizinle aynı sunucuda olan birisi saldırı yer, aynı sunucuda bulunuyorsunuz diye siz de etkilenirsiniz. Bu sebeple VPS ve özellikle de VDS gibi günümüz teknolojisine uygun ve yüksek performansla çalışan sunucular tercih etmelisiniz.
2- Sunucu ve Tarayıcı Önbelleği (Cache) Kullanın
Önbellek Nedir (Cache): Her seferinde sunucu veritabanının sorgulanarak sunucuların yavaşlamasına engel olmak sebebiyle siteye ait verilerin kopyalandığı yerdir. Önbellek (cache) kullanımıyla önemli dosyaların önbelleğe alınması sağlanarak sunucu üzerindeki sorgu yükü önemli ölçüde azaltılır. Ayrıca önbellek kullanımı sayesinde sunucudaki işlemci (CPU) ve bant genişliği kullanımı miktarı önemli ölçüde azaltılabilir.
Özellikle çok fazla anlık aktif (online) kullanıcı içeren internet sitelerinde sunucu bazında aşırı yükleme olur. Üst kalite sunuculara geçmek yerine size uygun bir önbellek uygulaması kullanarak sunucu yüklerini ciddi şekilde azaltmanızı sağlar. Peki ön bellek ile sunucu yanıt süresi nasıl kısaltılır?
Çözüm:
✅ Ön bellek uygulaması, eklentisi vb. kullanabilirsiniz.
✅ Ön bellek boyutunun aşırı büyümediğine emin olun.
✅ Ön bellek boyutunun aşırı büyümemesi için sadece en çok ziyaretçi alan sayfalara ön bellekleme yapabilirsiniz.
✅ Ön bellek boyutunun aşırı büyümemesi için düzenli olarak ön belleğin temizlenmesini sağlayın.
3- Önceden Oluşturulan Statik HTML Sayfalarını Sunun
Sunucu tabanlı oluşturma (içeriğin kullanıcıdan önce sunucuda oluşturulması) ve ön oluşturma (sayfaların statik HTML dosyalarının önceden oluşturulması) da LCP süresinin önemli ölçüde kısaltılmasını sağlar.
Service worker’ler tekrarlanan isteklerde tarayıcıya sunulabilen herhangi bir statik kaynağı önbelleğe almak için de kullanılabilirler. İşte service worker kullanılan bir önbellekleme hem sunucu yanıt süresini hem de site açılış süresini önemli ölçüde kısaltacaktır.
Profesyonel İpucu: Wordpress gibi içerik yönetim sistemlerini kullananlar sunucu ile uyumlu olarak ve yukarıdaki görseldeki prensiple çalışan önbellek eklentileri kullanarak sunucu yanıt süresi ve LCP sorununu çözebilirler. (Yazının 1.3.4 bölümünde anlatılanın özeti budur.)
4- Doğru Konumlarda İçerik Dağıtım Ağı (CDN) Kullanın
İçerik Dağıtım Ağı (CDN): Dünya üzerinde pek çok veri merkezinde bulunan ve internet sitelerine ait içeriklerin teslim edilmesini sağlayan global sunucular topluluğuna verilen isimdir. Kısaltması olan CDN, İngilizce “content delivery network” kelimelerinin baş harflerinden oluşmaktadır.
Sunucu yanıt süresi nasıl kısaltılır sorusunun bir diğer cevabı da CDN kullanılarak ana sunucunun yükü azaltılmasıdır. Bu sayede kullanıcıların istekleri daha hızlı karşılanır ve site trafiği daha iyi şekilde yönetilerek daha iyi bir kullanıcı deneyimi sunulur.
(Ayrıca Bakınız: Kullanıcı Deneyimi (UX) Nedir? Nasıl Geliştirilir?)
Küresel içerik dağıtım ağı (CDN) kullanımı ile dünyanın farklı noktalarındaki sunucularda site verileri depolanarak uzak konumlarda bulunan kullanıcılar için sunucu yanıt süresi kısaltılır.
Çözüm:
✅ CDN kullanarak ana sunucunuzun yükünü azaltarak sunucu yanıt süresini kısaltmak mümkündür.
✅ Özellikle uluslararası alanda hizmet veren sitelerin CDN kullanmaları önerilmektedir.
5- Veritabanını Optimize Edin
.#. Yaptığımız her işlem sonucunda veri tabanında kaydedilen, zamanla boyutları büyüyen kayıtlar ve dosyalar zamanla ciddi ölçüde yavaşlığa sebep olabilirler. Peki veritabanı iyileştirmeleri ile şişme azaltılarak sunucu yanıt süresi nasıl kısaltılır?
Çözüm:
✅ Periyodik olarak (mesela 3 ayda bir kez) sitenizi kontrol edip, ihtiyaç duyulmayan eski yüklerin temizlenmeleri gerekir.
✅ Veritabanı kayıtları kaldırılmadan önce yedek alınmalı, çok dikkatli olunmalıdır. Zira hatalı bir işlem çok ciddi bir dosya kaybına yol açabilir.
✅ İsterseniz veritabanı temizleyicileri kullanabilirsiniz.
✅ Veri tabanı temizliğinde düzeltmeler, otomatik taslaklar, çöp kutuları, istenmeyen yorumlar, geçici ayarlar silinir ve tablolar iyileştirilerek sunucuya getirilen ek yük azaltılır.
6- Temiz Kodlanmış ve Optimize Edilmiş Temalar Kullanın
Sitede kullanılan tema temiz kod ilkesine bağlı olarak hız ve performans odaklı olarak kodlanmış olmalıdır. Eğer kullandığınız tema gelişigüzel bir şekilde kodlanmış ise sitenin performansı konusunda uzun sunucu yanıt süresi gibi pek çok sorunla karşılaşabilirsiniz. Bu konuda bilgi almak için şu yazımıza bakabilirsiniz.
(Ayrıca Bakınız: En İyi Wordpress Tema Seçimi Nasıl Yapılır?)
Hız konusunda optimize edilmiş bir temanın özellikleri şunlardır:
• Sunucu işlemcisine ve bant kullanımına getirdiği yük düşüktür.
• Sunucuda düşük sayıda ek istek oluştururlar.
• Akıllı JS ve CSS dosya yönetimi ile hızlı açılırlar.
• DOM boyutları ve sayfa boyutları küçüktür.
• İlgili diğer optimizasyonları bünyelerinde barındırırlar.
Çözüm:
✅ Kullandığınız temanın iyi ve performans odaklı mı yoksa kötü ve gelişigüzel bir şekilde mi kodlanmış olduğunu öğrenin. Bu konuda webmaster platformlarında uzmanlardan destek alabilirsiniz.
✅ Şayet kullandığınız temanın kodlaması kötü durumda ise temanın kodlarını performans odaklı olarak optimize ettirin veya tıpkı şu örnekteki gibi performans odaklı olarak kodlanmış bir temaya geçin:
7- Dış Sorguları Optimize Edin (SQL)
.#. Harici (dış) sorgular sitenin olduğu sunucunun başka bir siteden veya başka bir sunucudan bilgi almak için yaptığı ek sorgulamalardır. Bu sorgulamaların sayısı arttıkça sunucunun verileri hazırlaması ve göndermesi için gerekli süre artacağı için sunucu yanıt süresi artar.
Çözüm:
✅ Sitedeki harici sorgu sayısını arttıran unsurları azaltın. Mesela RSS beslemeleri, sosyal medya gönderileri, gömülü içerikler ve başka platformlardan yüklenen video benzeri içerikler sorgu sayısını arttırır.
✅ Önbellek kullanmak SQL sorgu sayısını azaltmanın en kolay yoludur.
✅ İşinin ehli olan birisine sitedeki kaynakların öncelik sıralamasına göre çağrılmasını sağlayan sağlam bir SQL sorgusu yazdırın veya var olan SQL’in optimize edilmesini sağlayın.
✅ İşlem süresinin kısalması için JS, CSS ve görsel dosyalarının boyutlarını küçültün, gereksiz dosyaları erteleyin (defer) ve lazy load kullanın.
(Ayrıca Bakınız: Lazy Load Nedir? Ne İşe Yarar?)
💡 Profesyonel İpucu: SQL’de yüksek performans için optimizasyon yaparken şu uygulamaları tercih etmeniz önerilir:
➽ Algoritma kompleksliğini azaltın. Mesela çalılık dallanmaları (bush tree) yerine sol derinlikli dallanmalar (left deep tree) kullanın.
➽ İlerleyen zamanlarda kod işleyişinde hatalara sebep olmamak için veriyi kilitlemeyin (nolock) ve mümkün mertebe veri birleştirmekten kaçının.
➽ İşleyiş süresini kısaltmak için sıkça yürütülen sorgularda sürekli derleme yapmayın (no recompile).
➽ Sorguyu optimize ederken performansı kontrol etmek için parametre kullanın.
➽ Diğer optimizasyon tekniklerini araştırın, öğrenin ve uygulayın.
Sunucu Yanıt Süresi Hakkında Sıkça Sorulan Sorular
Soru: Sunucu yanıt süresi nedir? Sunucu yanıt süresi nasıl hesaplanır?
• Kullanıcının isteğinin sunucuya ulaşma süresi
• Sunucunun cevabı oluşturma süresi
• Cevabın sunucudan kullanıcıya ulaşma süresi
Soru: Sunucu yanıt süresini nasıl test edebilirim?
Soru: Sunucu yanıt süresi nasıl kısaltılır?
➽ Sunucuyu optimize etmek veya daha kaliteli bir sunucu kullanmak
➽ Kullanıcılara yakın konumlarda içerik dağıtım ağı (CDN) kullanmak
➽ Sunucu önbelleği ve tarayıcı önbelleği kullanmak
➽ Önceden oluşturulmuş HTML sayfalarını önbellek ile sunmak (service worker)
➽ Üçüncü taraf kaynaklara erkenden bağlanmak (preconnect ve prefetch)
➽ Temiz kodlanmış ve optimize edilmiş temalar kullanmak
Soru: Google Pagespeed (Lighthouse) 'ilk sunucu yanıt süresini azaltın' hatası nedir?
İlk Sunucu Yanıt Süresini Azaltın (TTFB): Diğer tüm istekler sunucu yanıt süresine bağlı olduğundan ana doküman için sunucu yanıt süresini kısa tutun. Temalar, eklentiler ve sunucu özellikleri ögelerinin tümü sunucunun yanıt süresini etkiler. Bir optimizayon eklentisini dikkatle seçerek ve/veya sunucunuzu yeni sürüme geçirerek, daha ileri düzeyde optimize edilmiş bir tema bulmayı düşünün.
(Ayrıca Bakınız: Google Pagespeed İle Site Hızlandırma Rehberi)
Soru: Sunucu yanıt süresi neden azaltılmalıdır?
Bu örnekte de görüleceği üzere, uzun sunucu yanıt süreleri kazançları, SEO’yu ve kullanıcı deneyimi olumsuz olarak etkilediği için kısaltılmalıdır.
(Ayrıca Bakınız: SEO Nedir? Nasıl Yapılır? [Rehber])
(Ayrıca Bakınız: Kullanıcı Deneyimi (UX) Nedir? Nasıl Geliştirilir?)
WordPress internet sitemde sunucu yanıt süresini kısaltın hatası alıp duruyordum, sayenizde sorunu çözdüm. Sunucu yanıt süresi nedir ve sunucu yanıt süresi nasıl kısaltılır çok güzel açıklamışsınız 🙂
Senin sitenin durumu hiç iç açıcı değil kanka
Sebep? Bence gayet güzel durumda, hatta bu yazı Google’da snippet bile almış 🙂
Merhaba.
Yazının tamamını okumadım. Çünkü yazının başındaki “brotli” tavsiyesi sorunumu çözdü. 😀
Teşekkür ederim.
Rica ederiz 🙂