Merhabalar.
Yazıyı elimden geldiğince özet geçmeye çalışacağım.
Bir süredir tekrar internet işlerine, web sitesi işlerine dönme arayışındaydım. Almış olduğum reseller ları kullanarak yaptığım siteler kısa süre içerisinde hosting firmasının şikayetlerine dönüştü. Yani bu işleri bıraktığım 10 sene öncesinde ne ise bugün hala aynı şey olmaktaydı. O zaman geriye kalan tek yok, kendi sunucumu tasarlayıp kendi işlerim için kullanmam olacaktı. Yıllar öne bu yöntemi de denediğimde, Apache ve Mysql optimizasyonlarında tıkanıp kalmıştım ve bırakmıştım. Yani cevabını bulamadığım sorularla tekrar yüzleşmem gerekecekti.
Digital Ocean’dan kiraladığım 5$ lık sunucumla işe koyuldum.
Panelsiz kullanım pek bana göre olmadığından öncelikle kendime bir panel seçmem gerekiyordu. Aklınıza gelebilecek bir çok paneli denedim. Tabi ki ücretsizlerden bahsediyorum. Zira geliriniz yoksa, maliyetiniz de olmamalıydı.
Webuzo, CWP ve ismini hatırlayamadığım birkaç panel daha denedim. Hepsinin kendine göre avantajları ve dez avantajları bulunmaktaydı. Kaynak tüketimini ön plana koyarak seçim yaptığımdan dikkatli davranmam gerekiyordu. Tek tek panelleri deneyip memnun kalmadıktan sonra VestaCP ile tanıştım. VestaCP gerçekten aradığım paneldi. Eksikleri ve hataları yok mu? Tabi ki var. Fakat geliştiriciler düşünülerek tasarlanmış bir panel olduğunu söyleyebilirim. Evet belki son kullanıcıya pek hitap etmeyecektir fakat benim gibi Linux kurcalamayı seven, SSH önünde vakit geçirebilen birileri için biçilmiş kaftandı.
Sözü fazla uzatmadan Apache ile yaptığım çalışmalara gelelim.
Apache + Mysql kombinasyonu ile sitelerinizi çalıştırırsınız. Siteleriniz hitlendikten sonra sunucunuz kasmaya başlar. Bu durumda öncelikle mysql in durağan ram kullanımını düşürmeniz gerekir. my.cnf imdadınıza yetişir. tuning-primer scriptten de bu konuyla ilgili yardım alır ve mysql inizi birazcık hızından taviz vererek düşük ram kullanacak bir hale getirirsiniz. Ardından kısa bir süre sonra Apache sinyal vermeye başlar.
Aslına bakarsanız son sözü ilk başta söyleyim. 512 ramli bir makinada Apache kullanarak, anlık kullanıcı saysınız 5 in üzerine çıkarsa sistem gerçekten çok zorlanıyor. Ayrıca belirteyim, VestaCp kurulum aşamasında Apache ‘ye destek olması açısından Nginx kuruyor ve bunu reverse proxy olarak çalıştırmanıza olanak sağlıyor. Peki yardımı oluyor mu? Çok az.
Apache ‘ yi konfigure etmek için kendinizi httpd.conf içinde buluyorsunuz. Apache’nin ram kullanımını düşürmek için size birkaç tavsiye vereyim;
Child Process lerin yeniden oluşturulmaları için verecekleri hizmet sayısını oldukça düşük tutun. Zira Child process ler ne kadar uzun süre hizmet verirlerse RAM kullanımları o ölçüde artıyor.
MaxClient sayısını düşük tutun. Benim testlerime bakacak olursak 512 ramde 5 kullanıcı üzeri gerçekten büyük sıkıntılar yaratabiliyor.
OpCache, Memcached ve Varnish eklentilerinden yardım alın. Konfigurasyonlarına özen gösterin. Varnish kurarsanız varnish in gücünü ram den almasını değil disk ten almasını sağlayın. Ki bu son önerdiklerim size anlık kullanıcı sayısını artırmada yarar sağlamıyor, mevcut kullanıcı sayısına ayarlı sitelerinizin daha hızlı açılmasını sağlıyor.
Sonuç olarak;
Düşük kullanıcı sayısı seviyelerinde,
Apache + Nginx + Varnish + Opcache + Memcached kurulu bir sistem, Apache temelli çalışmak zorunda olan kişiler için en iyi sistem oluyor. Fakat anlık kaldırabileceği kullanıcı sayısını düşük tutmakla yükümlü olduğunuzdan fazla kullanıcı söz konusu olduğunda siteleriniz oldukça yavaş açılıyor. Bu da sizi pek memnun etmiyor. Peki ne öneriyorum?
Aynı kaynaklara sahip sunucunuz varsa önerim;
Nginx + PHP-FPM temelli bir sunucu kurmanız olacaktır. Şanslınız ki VestaCP son güncellemelerinden sonra bu kombinasyona da olanak sağlamıştır. Bu kurulumdan sonra php-fpm konfigurasyonunu titizlikle ayarlayın. Ayarlamalardan sonra sitelerinizin durumuna göre ram kullanımından ziyade bu sefer CPU kullanımı ile ilgili bir takım problemler yaşayabilirsiniz. Bu durumda da imdadınıza Opcache+Memcached eklentileri yetişecektir.
Bu 2 eklentiyi de kurduktan sonra sorunlarınız büyük ölçüde azalacaktır. Trafiğinizin çok artması durumunda yine Varnish’den destek alıp, varnish i disk temelli çalıştırarak kaynak kullanımınızı biraz daha düşürebilirsiniz. Yine de eklemiş olayım, Nginx temelli sunucularda Varnish olmazsa olmaz değildir. Yani bu konfigurasyonda büyük olasılıkla Varnish’e ihtiyacınız olmayacaktır.
Şu an benim sunucumda CPU load 1 lerin altında ve Ram kullanımı 140MB seviyelerindedir. Siteler gayet hızlı çalışmaktadır ve WordPress sitelerde henüz Cache sistemi kullanılmamaktadır.
Sizlerin de konuyla ilgili tecrübe, deneyim ve sıkıntılarınızı paylaşmanız, bilgi arayışında olan arkadaşlarımıza yardımcı olabilir. Yorum bölümünden paylaşımlarınızı yapabilirsiniz.
İyi çalışmalar dilerim.
Gelen Aramalar:
- culha net
Son Yorumlar