Hocam selamlar,
Bilgi paylaşımınız için çok teşekkür ederim.
Bir eticaret sitem var 600k civarında ürün var. Bu dediklerinizin hepsini hali hazırda kullanıyorum. Sizden de aynı şeyleri duyunca yaptığım çalışmanın yanlış olmadığını anladım.
Hatta buna ekstra olarak file cache sistemleri de kurdum. Her defasında yeni sorgu yapılmasına gerek kalmadan direk filecache basıyorum ekrana ve sql'e gidip gelmesi ile filecache okuması arasında yaklaşık 4-5 sn fark oluyor. (filecache çok hızlı çalışıyor)
Ancak hala ilk giriş gecikmesi denilen ilk istekte 4-9sn arası gereksiz bi takılma ile başım dertte. Nelere bakmam gerekir?
Tam olarak ilk giriş derken pagespeed ile alakalı bir kavram mı bu ilk giriş. Tam anlayamadım. Yoksa database'e ilk veri girerken mi? Eğer pagespeed ile alakalı sayfayı ilk yüklemeye calıştığı değerden bahsediyorsan. Oluşturmayı önleyici javascript ve style dosyalarını footer'a alıp. Tasarımın ilk görünüşte bozulmaması içinde en gereklilerini http header ile preload edebilirsin. PHP için örneğin wp kullanıyorsanız:
add_action('init','preloadHeaderAyarlarim');
function preloadHeaderAyarlarim() {
if (!is_admin()) header("Link: </wp-content/themes/temaadi/style.css>; rel=preload; as=style;");
}gibi.
Baştan sona okudum. R10'da bu tarz konular görmek çok güzel. Emeğinize sağlık o kadar yazmışsınız. Peki MysIsam ile InnoDB motorlarının arasındaki fark genellikle insert işlemlerinde mi ortaya çıkıyor. Mesela big datalarda gözlemlediğiniz durumlar nasıldır?
Sadece insert demek hatalı olur. Bunu tablonun lock olması olarak düşünelim. Anlık 5K online olan bir internet siteniz olduğunu düşünün. Bu bağlantılardan 300 ü sql'e insert veri girdiren bir işlem yapiyor olsun. Eğer tablo yapınız myisam ise 300 insert işlemi de tabloyu sırasıyla lock edecek anlamına gelir. Ve diğer geri kalan 4K istek query olsun. Lock olan tablodan query cekemeyecekleri için sıralarını bekleyecekler. Eğer bu bekleme olayı artarsa üst üste binecek anlamına gelir ve her beklenen mili saniye sunucuya daha fazla yük olarak geri döner ve sunucunun rahatlaması imkansız bir hale gelir.
Big datadan kastınız tam olarak nedir? Bunu neden soruyorum bazı arkadaşlar full text 3 5 sayfa tutacak yazıyı big data sanıyor o yuzden. Ciddi ciddi 1 verinin 300 500mb tuttuğu gerçek big datadan bahsediyorsanız örneğin video ses dosyaları gibi. Bunlar için mysql kullanmak büyük saçmalık olur. Hatta kendi x bir datacenter da bulunan server da tutmak dahi saçmalık olur.
Çünkü bu tür veriler sunucunun aylık kirasından cok daha değerlidir. Büyük veriye sahip oldukları için kaybolma ve yeniden oluşturma riskleri zaman ve esktra efor anlamına gelir. Buda çok büyük hamallık demek.Bu hamallığa düşmemek ve ekstra efor sarfetmeyip %100 güvenli hale getirmek adına ben olsam Google, AWS gibi bigdata hizmeti veren sistemlerde depolar kafam rahat ederdim.
Hem optimizaasyonla uğraşmazdım, hem de veriler bozulur mu, acaba kaybolur mu düşüncesi beni boğmamış olurdu.