Cloudflare anlık hakikaten 30 bin tekil hit geliyorsa etkili olur.
Sorun scriptte.
İki ay önce TR nin büyük bir firmasının sunucu yönetimini aldım, aylık olarak çalışıyorum...
SH de çalışıyor, 3 sunucu vardı= mysql + web + web ve bir tane netscaler ile loadblancing yapıyorlardı.
günlük tekil hiti 6 sitenin 5 milyon üzerindeydi ve sunucunun load seviyeleri %90 ları geçiyordu. yukarıdaki sununun çift cpulu 64 gb ramli ve 4 tane 15k rpm/d raid5 disklerde sistem kasılıyordu.
Sorun tamamen wordpressdeydi.
Sitenin biri tek başına 3 milyonu zorluyordu günlük. İlk o siteyi aldık ve 15 gün denedik bizim sanal sunucuda(16 GB ram, 8 Core cpu. Ana hostlar 2 X Dell r720, 128 GB ram ve her hostta 2 x e5-2650 cpu var ve vmware esx 5.5 ile vcenter sistemi failover yapıda tutuyor) + emc storage 24 x 15K 300 gb lık diskler. raid 6 var üzerinde.
Bu hostlarda şuan 23 tane sanal makina çalışıyor ve hepsi kurumsal. Durumu anlatıyorum ki bilin diye.
Ben ilk başta apache 2.4 mpm event worker sürümü derleyip fastcgi ile çalıştırmayı denedim. cpu ve ram kullanımı tavan yaptı. load %60 larda tek sitede.
litespeed aldık enterprise lisanslı, %45 lere düştü. Bunu yapılandırdım iyice ama hala yüksekti! load 8 üzerine çıkarsa demekki işletim sistemi işlemciye fazla iş yüklüyor demektir benim 8 core da.
Bunu da salladım nginx + php-fpm kullandım. gereksiz moduller hepsinde kapalıydı bunda da kapalı oldu. Hepsi derlenerek kuruldu.
load %20 lere düştü. Ama sayfalar açılırken 10 sn kadar bekletiyordu bu hoşuma gitmedi.
varnish i kurup configleri yapılandırıp nginx i oynayıp tekrar denedim ve load direkt 5 seviyesine indir.
sayfalar 1 sn gibi bir süreye geldi(varnish de browser cache vs etkinleştirmesini yaptım artı bütün statik içeriği ve sayfaları önbelleğe aldım(get istekleri! diğer istekler görmezden gelinsin diye belirttim. wp-admin i de kaldırdım)
mysql i elden geçirip percona mysql server kurdum! standart mysqlin performansı çok fazla yükte sapıtıyordu...
Perconanın kendi wizardı ile sunucu bilgilerini ve genelde okuma yoğunluk olduğu için o bilgileri verip bir config oluşturdum.
Percona karşılaştırması:
http://www.percona.com/software/perc...ver/benchmarks
(Ufak açıklama: sunucuda çok fazla veri okuma yazma yükü yoksa fark görünmüyor ama oltp işlemleri yüksek ise işte o zaman percona fark atıyor.)
Percona da tamam(cpu kullanımı mysql de %40 ları geçmiyordu).
Site çok iyi durumdaydı ama wordpress i elden geçirmem gerekiyordu tek site varnish ile 5 load seviyesi yüksekti ve geri kalan 5 site geldiğinde yine yükselecekti. Wordpress in gereksiz bütün pluginlerini kaldırdım, hiç wp cache plugini yok mesela kasıyorlar... total cache falan hava civa(denedim çünkü)
wp de şimdi söylemeyeceğim baya bir kod değişikliği ile temada bir çok değişiklik yaptım. php-fpm bana bütün debug verilerini verdi, mysql de yavaş kodları verdi. Bunları bir ayda bitirdim load seviyesi 0.6 ile 1 seviyelerinde gezdi son 10 gün.
Firma ile anlaştık ve bütün siteleri taşıdım. Hepsini oynadım. Aşağıda da resimleri:
Load:
Kendi geliştirdiğim panel

Freebsd 10 üzerinde çalışıyor bütün siteler ve servisler. bütün gereksiz sevisler kapalı. Kendim django+python+uwsgi ile çalışan bir panel geliştirdim. Bütün herşeyi izleyebiliyor. Site falan açıyor işte - firma kullansın kafamı ütülemesin diye)
Mysql 5.6 anlık kullanımlar:
Mysql sunucu kurulduğundan beri çekilen sorgular:
Sarıya dikkat, tamamen select sorgusu ve buna özel optimize edildi(selectler genelde innodb üzerinde ve innodb iyi optimize edilmezse sunucuyu ağlatabiliyor, bizzat yaşadım)
Buda toplam çekilmiş veri trafiği:
6 site şuanda yukarıdaki grafiklerde gördüldüğü üzere tıkır tıkır çalışıyor. Toplam hitleri sosyal medya, ve aktif seo ile şuan 12 milyona yaklaştı günlük.
İlk başta dediğim gibi sorun scriptte. Eğer başarısız olan olursa ulaş bana bir inceleyeyim sistemi. 15 dk lık loglama ile ben koddaki sorunları görür ve anlaşırsak düzenlerim.