Site Hızı & Performans

    NVMe ve SATA SSD Hız Farkı

    NVMe ile SATA SSD arasındaki gerçek fark ve bu farkın hangi iş yükünde hissedildiği.

    11 dk okuma Güncellendi: 25 Ağustos 2026

    NVMe ve SATA SSD hız farkı, hosting pazarlamasında en çok abartılan ama teknik olarak en yanlış anlaşılan konulardan biri. Kâğıt üzerindeki rakamlar çarpıcıdır: SATA arayüzü kabaca 550 MB/s'de tıkanırken NVMe rahatlıkla birkaç gigabaytı geçer. Buradan hareketle "NVMe altı kat hızlı" sonucuna varmak kolaydır ve bu sonuç, bir web sunucusu bağlamında neredeyse tamamen yanıltıcıdır.

    Sebebi şu: bir web sunucusunun disk iş yükü büyük dosya kopyalamaya değil, çok sayıda küçük ve rastgele okuma-yazmaya benzer. Bu profilde belirleyici olan şey aktarım hızı değil, gecikme ve eşzamanlı işlem kapasitesidir. Bu yazıda iki teknolojinin gerçekten nerede ayrıştığını, farkın hangi iş yükünde hissedilip hangisinde hiç hissedilmediğini ve kendi sunucunda bunu nasıl ölçeceğini anlatacağım.

    İki Arayüz Arasındaki Gerçek Mimari Fark#

    SATA, mekanik disk çağında tasarlanmış bir arayüzdür ve o mirası taşır. Verinin diskten işlemciye ulaşması için AHCI adlı bir protokol katmanından geçmesi gerekir ve bu katman, dönen bir plakanın yavaşlığı varsayımıyla tasarlandığı için tek bir komut kuyruğu ve o kuyrukta en fazla 32 komut taşır. Yani disk fiziksel olarak daha fazlasını yapabilse bile, arayüz bir seferde 32 işten fazlasını sıraya koyamaz.

    NVMe bu katmanı tamamen atlar ve doğrudan PCI Express hattına bağlanır. Protokol, flash belleğin paralel doğası düşünülerek yazılmıştır: 64 binden fazla kuyruk ve her kuyrukta on binlerce komut taşıyabilir. Ayrıca her komutun işlenmesi için gereken işlemci talimatı sayısı daha azdır, yani sürücü katmanının kendisi de daha ucuzdur.

    ÖzellikSATA SSDNVMe SSDPratik anlamı
    ArayüzSATA III (6 Gbps)PCIe (x4 hat)Bant genişliği tavanı
    ProtokolAHCINVMeKomut başına işlemci maliyeti
    Komut kuyruğu1 kuyruk, 32 derinlikBinlerce kuyrukEşzamanlılık kapasitesi
    Tipik sıralı okuma500-550 MB/s2000-7000 MB/sBüyük dosya aktarımı
    Tipik rastgele okuma gecikmesi80-150 mikrosaniye20-80 mikrosaniyeWeb yükünde belirleyici olan

    Bu tablodaki son satır, web sunucusu bağlamında diğer hepsinden önemlidir. Bir sayfa yüklemesi sırasında sunucu yüzlerce küçük okuma yapar: PHP dosyaları, şablonlar, yapılandırma, oturum verisi, veritabanı sayfaları. Bunların her biri ayrı bir gidiş-dönüştür ve toplam süre, tek okumanın gecikmesi çarpı okuma sayısıdır. Aktarım hızının burada neredeyse hiç rolü yoktur; çünkü tek bir 4 KB'lik okumada 550 MB/s ile 3000 MB/s arasında ölçülebilir bir fark oluşmaz — dosya zaten mikrosaniyeler içinde okunur, süreyi belirleyen gecikmedir.

    Kuyruk Derinliği: Farkın Asıl Ortaya Çıktığı Yer#

    Tek kullanıcılı bir testte NVMe ile iyi bir SATA SSD arasındaki fark şaşırtıcı derecede küçüktür. Fark, eşzamanlılık arttıkça açılır ve bu, paylaşımlı bir sunucuda ya da yoğun bir mağazada tam olarak yaşanan durumdur.

    Şöyle düşün: sunucuda aynı anda 40 istek işleniyor. Her biri diske iş gönderiyor. SATA arayüzünde bu işler 32'lik tek bir kuyruğa girer; 32'yi aşan her istek sırada bekler. NVMe'de aynı işler paralel kuyruklara dağılır ve disk hepsini aynı anda işlemeye başlar. Yani NVMe'nin üstünlüğü "daha hızlı okuma" değil, **"kuyruk oluşmaması"**dır.

    Bu, ölçümlerde şöyle görünür: düşük kuyruk derinliğinde (tek işlem) iki disk birbirine yakın çıkar, kuyruk derinliği arttıkça SATA doyuma ulaşıp bekleme süresi tırmanmaya başlarken NVMe ölçeklenmeye devam eder. Sunucunda bu davranışı doğrudan görebilirsin:

    # fio ile rastgele okuma testi - önce tek işlem (düşük eşzamanlılık)
    fio --name=tek --filename=/tmp/fiotest --size=1G --rw=randread \
        --bs=4k --iodepth=1 --numjobs=1 --runtime=30 --time_based \
        --direct=1 --group_reporting
    
    # Sonra yüksek eşzamanlılık - gerçek sunucu yüküne benzer
    fio --name=cok --filename=/tmp/fiotest --size=1G --rw=randread \
        --bs=4k --iodepth=32 --numjobs=4 --runtime=30 --time_based \
        --direct=1 --group_reporting
    
    rm -f /tmp/fiotest
    

    Çıktıda bakman gereken iki satır var: IOPS ve clat (tamamlanma gecikmesi) yüzdelikleri. iodepth=1 testinde iki disk arasında belki iki kat fark görürsün; iodepth=32, numjobs=4 testinde fark beş kata, on kata çıkabilir. Asıl bakman gereken ise clat içindeki 99. yüzdelik değerdir — ortalama gecikme değil. Ortalama iyi görünürken 99. yüzdelik yüksekse, ziyaretçilerinin yüzde biri düzenli olarak kötü deneyim yaşıyor demektir ve bu, "site bazen takılıyor" şikâyetinin sayısal karşılığıdır.

    Hangi Site Profilinde Fark Hissedilir#

    Burası en pratik bölüm: NVMe'ye para vermek ne zaman mantıklı, ne zaman değil.

    Fark hissedilmediği durumlar: statik ya da tamamen önbelleklenmiş bir tanıtım sitesi, düşük trafikli bir blog, ağırlıklı olarak görsel servis eden bir portfolyo sitesi. Sebep basittir — bu sitelerde sık okunan dosyalar zaten işletim sisteminin bellek önbelleğindedir (page cache) ve diske hiç gidilmez. Sunucun 8 GB belleğe sahipse ve sitenin toplam sıcak veri kümesi 500 MB ise, disk türünün sayfa süresine katkısı ölçülemeyecek kadar küçüktür.

    Fark belirgin biçimde hissedildiği durumlar:

    1. Veritabanı yoğun siteler. Mağaza, forum, üyelik sitesi, çok yazarlı büyük içerik siteleri. Veri kümesi bellekten büyükse veritabanı sürekli diske gider ve her sorgu disk gecikmesini öder.
    2. Çok siteli sunucular. Paylaşımlı bir sunucuda yüzlerce sitenin sıcak verisi belleğe sığmaz; disk sürekli çalışır ve kuyruk derinliği yüksek kalır.
    3. Yoğun yazma yapan işler. Günlük dosyaları, oturum yazımı, sipariş kaydı, yedekleme sırasında sürekli disk yazımı.
    4. Yedekleme ve geri yükleme pencereleri. Büyük bir veritabanının içe aktarılması NVMe'de dakikalar, yavaş bir SATA dizisinde saatler sürebilir.
    İş yüküDisk türü etkisiNeden
    Önbellekli tanıtım sitesiİhmal edilebilirDosyalar bellek önbelleğinde
    Blog, orta trafikDüşükSıcak veri küçük
    E-ticaret, sepetli trafikYüksekHer istek veritabanına gider
    Forum / üyelik sitesiYüksekİçerik kişiye özel, önbelleklenemez
    Paylaşımlı sunucu (çok site)Çok yüksekSıcak veri belleğe sığmaz
    Yedekleme / geri yüklemeÇok yüksekSıralı ve yoğun aktarım

    Kendi sitende hangi kategoride olduğunu anlamanın kestirme yolu, bellek önbelleği isabet oranına bakmaktır. Disk aktivitesi sürekli yüksekse ve iowait sıfırdan belirgin biçimde büyükse, sıcak verin belleğe sığmıyordur ve disk türü senin için önemlidir. Bu teşhisin adım adım anlatımı disk I/O darboğazı tespiti yazısında.

    Kendi Sunucunda Nasıl Ölçersin#

    Ölçüme başlamadan önce hangi disk türüne sahip olduğunu doğrula. Sağlayıcının "SSD" demesi NVMe olduğu anlamına gelmez:

    # Blok cihazları listele: nvme0n1 gibi bir ad NVMe demektir, sda ise SATA/SAS
    lsblk -d -o NAME,ROTA,SIZE,MODEL
    # ROTA=0 katı hal (SSD), ROTA=1 dönen disk (HDD)
    
    # NVMe cihazları ayrıca doğrudan listelenebilir
    nvme list 2>/dev/null || echo "nvme aracı yok ya da NVMe cihaz yok"
    

    lsblk çıktısında cihaz adı nvme0n1 biçimindeyse NVMe kullanıyorsun; sda, vda gibi bir addaysa SATA ya da sanallaştırılmış bir disk üzerindesin. Sanal sunucuda vda görmen NVMe olmadığı anlamına gelmez — hipervizör alttaki NVMe'yi sanal blok cihaz olarak sunuyor olabilir. O yüzden asıl kanıt isim değil, ölçümdür.

    Hızlı ve pratik bir gecikme testi:

    # Senkron küçük yazma: veritabanı taahhüt (commit) davranışına en yakın test
    dd if=/dev/zero of=/tmp/synctest bs=4k count=5000 oflag=dsync 2>&1 | tail -1
    # NVMe'de tipik olarak birkaç saniye
    # Yavaş bir SATA ya da aşırı yüklü paylaşımlı diskte onlarca saniye
    
    rm -f /tmp/synctest
    
    # Anlık disk baskısı: %util ve await sütunlarına bak
    iostat -xz 1 5
    

    oflag=dsync burada kritiktir; bu bayrak olmadan yazma işletim sistemi önbelleğine gider ve gerçek disk performansını değil bellek hızını ölçersin. Bu, disk testlerinde en sık yapılan hatadır.

    Ölçümü yaparken sunucunun boş olmadığından emin ol — asıl merak ettiğin şey yoğun saatteki davranıştır. Ayrıca paylaşımlı bir pakette bu testleri çalıştırmadan önce sağlayıcının kullanım şartlarını kontrol et; yoğun disk testleri komşu siteleri etkileyebilir ve kaynak sınırı uyarısı alabilirsin.

    Fiyat, Kapasite ve Dayanıklılık Dengesi#

    NVMe her açıdan üstün değildir ve seçimi tek boyuta indirmek yanlış olur. Üç pratik denge noktası var.

    Birincisi gigabayt başına maliyet. NVMe sürücüler genellikle aynı kapasitedeki SATA SSD'lerden pahalıdır; bu yüzden aynı bütçeyle daha az alan alırsın. Arşiv, yedek ya da medya dosyaları gibi büyük ama nadiren erişilen verileri NVMe üzerinde tutmak israftır. Yaygın ve doğru mimari şudur: veritabanı ve uygulama dosyaları NVMe'de, büyük statik arşiv ise daha ucuz ve geniş bir depolamada.

    İkincisi ısı ve sürdürülebilir performans. NVMe sürücüler yüksek yük altında ısınır ve yeterli soğutma yoksa kendilerini yavaşlatır (thermal throttling). İyi kurgulanmış sunucularda bu bir sorun değildir ama uzun süreli ağır yazma testlerinde ilk dakikadaki rakamla otuzuncu dakikadaki rakamın farklı olabileceğini bilmelisin. Bu yüzden fio testlerinde --runtime değerini kısa tutmak yanıltıcı sonuç verir.

    Üçüncüsü dayanıklılık sınıfı. Hem SATA hem NVMe sürücülerde tüketici ve veri merkezi sınıfı modeller vardır ve aralarındaki yazma dayanıklılığı farkı, arayüz farkından daha önemli olabilir. Veri merkezi sınıfı bir SATA SSD, tüketici sınıfı bir NVMe'den daha kararlı ve öngörülebilir gecikme verebilir. Yani "NVMe mi SATA mı" sorusu, "hangi sınıf sürücü" sorusundan sonra gelir.

    Bir de yedeklilik boyutu var: disk türü ne olursa olsun tek disk tek arıza noktasıdır. RAID kurulumu ya da düzenli dış yedek olmadan hiçbir disk teknolojisi seni veri kaybından korumaz. Yedekleme stratejisi için yedekleme hizmetimize göz atabilirsin.

    Diskin Yerine Belleği Kullanmak#

    Disk tartışmasının çoğu zaman atlanan tarafı şudur: en hızlı disk erişimi, hiç yapılmayan disk erişimidir. Bellek, en hızlı NVMe'den bile kat kat hızlıdır; dolayısıyla disk baskısını azaltmanın en etkili yolu daha hızlı disk almak değil, diske daha az gitmektir.

    Üç katmanda bunu yapabilirsin. Birincisi tam sayfa önbelleği: sayfa hazır üretilmiş olarak servis edilir, PHP hiç çalışmaz, veritabanına hiç gidilmez. Kurulum için Nginx FastCGI cache yapılandırma ya da LiteSpeed kullanıyorsan LiteSpeed Cache yazılarına bakabilirsin.

    İkincisi nesne önbelleği: sorgu sonuçları ve hesaplanmış değerler bellekte tutulur, aynı bilgi için tekrar tekrar diske gidilmez. Memcached nedir yazısı bu katmanın mantığını anlatıyor.

    Üçüncüsü veritabanının kendi bellek havuzu. InnoDB tampon havuzu (buffer pool), sık erişilen veritabanı sayfalarını bellekte tutar. Bu değer varsayılan ayarlarda çoğu zaman çok küçüktür:

    -- Mevcut tampon havuzu boyutu (bayt cinsinden)
    SHOW VARIABLES LIKE 'innodb_buffer_pool_size';
    
    -- Havuzdan okuma vs diskten okuma oranı: isabet oranını gösterir
    SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_read%';
    

    Innodb_buffer_pool_reads (diskten okuma) değeri Innodb_buffer_pool_read_requests (toplam okuma isteği) değerine göre belirgin biçimde yüksekse, havuzun küçüktür ve veritabanı sürekli diske gidiyordur. Adanmış bir veritabanı sunucusunda bu değeri toplam belleğin yaklaşık yüzde 60-70'ine çıkarmak yaygın bir başlangıç noktasıdır; paylaşımlı bir makinede ise diğer servislere yer bırakacak şekilde daha ölçülü davranmalısın. Bu tek ayar, çoğu durumda disk yükseltmesinden daha büyük kazanç sağlar.

    Sık Yapılan Hatalar#

    Aktarım hızına bakarak karar vermek. Pazarlama malzemesindeki "7000 MB/s" rakamı sıralı okuma içindir ve web sunucusu iş yükünde bu senaryo neredeyse hiç oluşmaz. Bakman gereken şey rastgele 4K okuma IOPS'u ve gecikme yüzdelikleridir.

    dsync olmadan disk testi yapmak. Bayrağı unutursan yazma işletim sistemi önbelleğine gider ve inanılmaz rakamlar görürsün; ölçtüğün şey disk değil bellektir.

    Tek işlemli test sonucunu genellemek. iodepth=1 ile yapılan test iki diski birbirine yakın gösterir. Gerçek fark eşzamanlılıkta ortaya çıkar; testini yoğun saatteki gerçek yüke benzet.

    Ortalama gecikmeye bakıp 99. yüzdeliği atlamak. Kullanıcı deneyimini bozan şey ortalama değil, uzun kuyruktaki kötü isteklerdir.

    Disk yükseltmesini önbellek kurulumunun yerine koymak. Doğru kurulmuş bir önbellek, disk yükseltmesinden çok daha ucuza çok daha büyük kazanç verir. Önce önbelleği kur, sonra kalan darboğaza bak.

    Sanal sunucuda cihaz adına bakarak karar vermek. vda görmen alttaki donanımın SATA olduğunu kanıtlamaz; hipervizör katmanı ismi değiştirir. Kanıt ölçümdür.

    Sıkça Sorulan Sorular#

    NVMe SATA SSD'den kaç kat hızlı#

    Ölçtüğün şeye bağlı. Sıralı aktarım hızında beş ila on kat fark görürsün, ama bu rakamın web sunucusu performansıyla ilgisi yoktur. Web yükünde belirleyici olan rastgele küçük okuma gecikmesidir ve orada fark tipik olarak iki ila üç kattır — eşzamanlılık arttıkça bu fark açılır, çünkü SATA'nın 32'lik tek kuyruğu dolar ve istekler beklemeye başlar.

    Sitem için NVMe gerçekten gerekli mi#

    Sitenin ne kadarının önbellekten servis edildiğine bak. Sayfalarının çoğu anonim ziyaretçiye gösteriliyor ve önbellekleniyorsa disk türü neredeyse hiç fark etmez; dosyalar zaten bellektedir. Buna karşılık mağaza, forum ya da üyelik sitesi gibi her isteğin veritabanına gittiği bir yapı işletiyorsan NVMe ölçülebilir fark yaratır.

    Paylaşımlı hostingde NVMe farkı hissedilir mi#

    Genellikle evet ve sebebi tek kullanıcı performansı değil, eşzamanlılıktır. Paylaşımlı bir sunucuda yüzlerce sitenin verisi belleğe sığmaz, disk sürekli çalışır ve kuyruk derinliği yüksek kalır. NVMe'nin asıl üstünlüğü tam olarak bu koşulda ortaya çıkar. Yine de sunucunun ne kadar yoğun satıldığı, disk türünden daha belirleyici olabilir.

    Disk hızımı nasıl test ederim#

    En pratik yol fio ile rastgele 4K okuma testi çalıştırmaktır; hem düşük hem yüksek kuyruk derinliğinde ölç ve clat yüzdeliklerine bak. Hızlı bir ön kontrol istiyorsan dd if=/dev/zero of=/tmp/test bs=4k count=5000 oflag=dsync komutu senkron yazma gecikmesini gösterir. oflag=dsync bayrağını unutma, yoksa disk yerine belleği ölçersin.

    NVMe sürücüler daha mı çabuk bozulur#

    Arayüz türünün dayanıklılıkla doğrudan ilişkisi yok; belirleyici olan sürücünün sınıfı ve flash tipidir. Veri merkezi sınıfı sürücüler, tüketici sınıfına göre kat kat daha yüksek yazma dayanıklılığına sahiptir ve bu fark, NVMe ile SATA arasındaki farktan çok daha önemlidir. Hangi arayüzü kullanırsan kullan, yedekleme stratejisi zorunludur.

    Disk yerine RAM eklemek daha mı mantıklı#

    Çoğu durumda evet. Bellek, en hızlı NVMe'den bile kat kat hızlıdır ve eklediğin her gigabayt, işletim sisteminin ve veritabanının daha fazla sıcak veriyi bellekte tutması demektir; yani diske hiç gidilmez. Veritabanı tampon havuzunu büyütmek ya da nesne önbelleği kurmak, genellikle disk yükseltmesinden daha ucuz ve daha etkili bir adımdır.

    Kapanış#

    NVMe ve SATA SSD karşılaştırmasında akılda tutman gereken dört alışkanlık var. Birincisi, aktarım hızı rakamlarını yok say; web yükünde belirleyici olan rastgele okuma gecikmesi ve kuyruk davranışıdır. İkincisi, testlerini gerçek yüke benzet — yüksek kuyruk derinliğinde ölç ve ortalamaya değil 99. yüzdeliğe bak. Üçüncüsü, disk yükseltmesinden önce önbellek ve bellek katmanını doğru kur; hiç yapılmayan disk erişimi her zaman en hızlısıdır. Dördüncüsü, arayüzden önce sürücü sınıfına ve yedekleme stratejine bak.

    Altyapı tarafında bu dengeyi hazır kurulmuş halde almak istersen Clou.TR paketleri NVMe depolama üzerine kuruludur. Veritabanı yoğun siteler için e-ticaret hosting ve WordPress hosting paketleri; ayrılmış kaynak ve kendi disk düzenini kurmak isteyenler için VDS sunucu ile dedicated sunucu seçenekleri var. Verinin disk türünden bağımsız olarak güvende olması içinse yedekleme hizmetimizi devreye alabilir, sunucu tarafı ayarlarını sunucu yönetimi ekibimize bırakabilirsin.

    NVMeSSDDonanım

    Uygulamaya geçmeye hazır mısınız?

    NVMe SSD, ücretsiz SSL ve %99.9 uptime garantisiyle Clou.TR hosting ve sunucu çözümleriyle projenizi hayata geçirin.