Wordpress W3 Total Cache İle CPU Sorunundan Kurtulun! - SanalAlemci

WordPress W3 Total Cache İle CPU Sorunundan Kurtulun!

Pazartesi, Kasım 29, 2010 14:19
WordPress W3 Total Cache İle CPU Sorunundan Kurtulun! 4/5 (80%) 18 Oy

W3 Total Cache Eklentisi İndir-Wordpress’te aşırı CPU kullanımı-W3 Total Cache Eklentisi Hata Mesajları ve Çözümü-Wp İçin W3 Total Cache Eklentisi-Cache sisteminin faydaları ve dezavantajları nelerdir?

Blogunuz yaşlandıkça ve ziyaretçi kitlesi genişledikçe ihtiyaçları da aynı oranda artmaya başlar. Önceleri siz blogunuz için bir şeyler istiyorken bir de bakarsınız isteyen taraf o olmaya başlamıştır (ete kemiğe bürünüyorlar). Başlarda siz “şöyle şekilli bi mp3 player plug-ini kurayım, sosyal medya ikonları ekleyeyim, daha iyi bir ziyaretçi deneyimi için şunu yapayım” derken bir süre sonra bakarsınız ki blogunuz çıkıp “Fatal error: Out of memory, Internal Server Error” türü ifadelerle “bırak çiçeği böceği serverın canı çıktı bi el at” demeye başlar.

WordPress, her ne kadar piyasadaki en iyi blog yazılımı olarak ifade ediliyor olsa da siteniz belirli bir ziyaretçi seviyesine eriştiğinde (sunucuyu meşgul eden çok sayıda plugin ile birlikte 1.000+ tekil ziyaretçi diyelim) en süper sunucu düşmanı blog yazılımı olmaya başlar. Gerçi durum sadece WordPress için geçerli değil, bünyesinde bu kadar çok işlev ve veritabanı sorgusu bulunduran her yazılım kullanıcı sayısı arttıkça sunucuyu yormaya başlar.

Sistem kaynakları tüketimi

Siteniz için kullandığınız yazılıma bağlı olarak kullanıcı sayınız, hosting firmanızın size sunduğu özellikler ile idare edebilecek düzeydeyken durum kabaca şöyledir:

Kullanıcılar sitenize bağlanır, sunucu sitenizdeki sorguları her kullanıcı için ayrı ayrı çalıştırıp sonuçları yine her kullanıcı için ayrı ayrı anlık olarak döndürür. Yani kullanıcı bir yazıyı okumak için tıkladığında o yazının başlığı, tarihi, içeriği ve kaç kere okunduğu bilgileri depolandığı yer olan veritabanından anlık olarak çekilir. Bu işlemin kaç kullanıcıya kadar yapılabileceği hosting firmanızın sizin için ayırdığı hafıza ve işlemci limitlerine bağlıdır, eğer shared (paylaşımlı) bir hosting sahibiyseniz siteniz sizinki gibi onlarca farklı sitenin bulunduğu bir sunucuda barınıyor demektir ve işlemci ile hafıza kullanım limitleriniz en iyi ihtimalle toplam işlemci/hafıza limitlerinin %10- 15′i kadar ayarlanmıştır.

Site trafiğiniz artıp kullanıcı talepleri size ayrılan limitleri zorlamaya başladığında sunucunun işlem yapma/talepleri cevaplama süresi uzar (bunu kendi bilgisayarınızda sistemi yoran bir çok program açıkken başka bir program daha açmaya çalışıyor olduğunuz anla kıyasylayın, durağan haldeki bir bilgisayarda kısayoluna tıkladığınızda program aynı saniyede açılıyorsa sistem kaynakları farklı programlar tarafından kullanılıyorken 3 saniyede açılır)

Durum bir adım öteye gittiğinde, yani siteniz size ayrılan kaynakları halihazırda maksimum şekilde kullanıyorken yeni kullanıcıların tacizine uğrarsa sistem yöneticisi (otomatik veya manuel olarak) duruma el koyar ve site yayınınız durdurulur, işte web sitesi sahiplerinin tiksindiği o “Fatal Error: Out of memory, Internal Server Error” gibi hata mesajları böyle durumlarda ortaya çıkar.

Bu hata mesajları aslında bir yerde sonu olmayan bir yolun başladığına işaret eder. Yani eğer kullanıcı sayınız her geçen gün artıyorsa site altyapınızın ihtiyaçları da aynı oranda artar ve siteniz zamanla paylaşımlı hostingden sanal sunucuya, sanal sunucudan kiralık sunucuya ve ordan da kendi sunucusuna/sunucularına geçiş yapma ihtiyacı duyar. Bu gibi geçişlerin mali açıdan her babayiğidin harcı olmadığını ve ayrıca eğer siz WordPress yerine sistem kaynaklarını daha az tüketen bir yazılım kullanıyor olsaydınız böyle durumlara belki de çok daha ileride ihtiyaç duyacağınızı (WordPress 1.000 kullanıcı ile sistem kaynaklarınızın canına okuyorsa X yazılım belki de 5.000 kullanıcıya kadar sorun çıkartmayabilir) göz önünde bulundurarak geçici bir süre için farklı çözümlere başvurabilirsiniz, cache olayı gibi.

Cache sistemi ve W3 Total Cache

Cache sistemi bir nevi ara bellek (RAM) olarak düşünülebilir. Çalışma prensibi basittir; A kullanıcısı sitenize girer ve site altyapınız bu kullanıcı için ilgili veritabanı sorgularını gerçekleştirip cevabı döndürür ve bu cevabı ara belleğe bir nevi .html sayfası olarak kaydeder, bu kullanıcıdan sonra siteye X saniye içerisinde gelen B, C, D kullanıcıları için de ara belleğe kaydedilen .html sayfası gösterilir, herhangi bir veritabanı sorgusu gerçekleştirilmez. Yani site yöneticisinin “X saniye” olarak belirlediği süre içerisinde tüm kullanıcıların gördüğü sayfa aslında A kullanıcısının gördüğü sayfanın bir yansımasıdır, X saniye dolduğu zaman (mesela 30 saniye) siteye giren en son kişi yine A kullanıcısı muamelesi görür ve döngü bu şekilde devam eder. İşte WordPress için tasarlanan W3 Total Cache türü eklentiler tam olarak bu işi görürler. Mesela W3 Total Cache gerekli işlemleri yaptıktan sonra sayfa kaynağının en altına (Egonomik kaynağında da görülebileceği üzere) şuna benzer bir not bırakır: “Database Caching 131/164 queries in 2.402 seconds using disk” yani “164 veritabanı içeriğinden 131 tanesi 2.402 saniyede disk yöntemi kullanılarak cachelendi“.

Ben şahsen Egonomik.com ‘da biraz da eski hostumun zorlamasıyla WP Super Cache eklentisini kullanmıştım ve ne kadar popüler bir eklenti olursa olsun kesinlikle memnun kalmamıştım. Daha sonra kendi araştırmalarım sonucu şu an kullandığım W3 Total Cache ile tanıştım ve kendi alanında gelişmiş özelliklere sahip on numara eklentilerden biri olduğunu ve kısa zamanda WP Super Cache ‘in tahtını sallayabileceğini rahatlıkla söyleyebilirim.

Cache sisteminin avantajları / dezavantajları

Avantajları

Sitenize her 10 saniyede 5 ziyaretçi girdiğini ve sizin 10 saniyelik bir cache kaydı tuttuğunuzu varsayacak olursak; önceden dakikada 30 sorguya cevap vermeye çalışan sunucunuz cache sistemi sayesinde dakikada sadece 6 sorguya cevap vermek durumunda kalacaktır, bu da sitenizin sunucu üzerindeki yükününün %80 oranında azaldığı anlamına geleceği için Internal Server Error gibi bir hatayla karşılaşma riskiniz yine aynı oranda azalacaktır.

A kullanıcısı haricindeki diğer tüm ziyaretçiler için siteniz normalden hızlı çalışıyormuş gibi görünecektir (Bay A için durumun farklı olmasındaki sebep kendilerinin normalde sadece site sorgularının dönmesini bekleyen bir ziyaretçi olması gerekirken cache sistemi kullanılan sistemde ek olarak bir de çekilen sorguların ara belleğe kaydedilmesini ve html çıktısı olarak gösterilmesini beklemesi gerekmesinden kaynaklanmaktadır, bu da o anki sayfayı normalden 1-2 saniye daha geç görüntüleyeceği anlamına gelir).

W3 Total Cache için: Bu eklentide cache kaydını hem hafıza (Memory/RAM) hem de disk üzerinde tutma seçenekleri sunulmuş, bu özelliği Windows Vista ile beraber tanıştığımız USB flash diskler için “Bu aygıtı sistemimi hızlandırmak için kullan” özelliğine benzetebiliriz. Yani eğer size ayrılan işlemci limiti hafıza limitine kıyasla daha fazlaysa cache kaydını disk üzerinde tutabilir haliyle memory kullanımından ekstra tasarruf edebilirsiniz.

W3 Total Cache için: Dilerseniz çok önemli gördüğünüz bazı veritabanı sorgularını cache olayına dahil etmeyebilirsiniz, yani sitenize giren her ziyaretçi için herhangi bir sorgunun yine tek tek çalıştırılmasını sağlayabilirsiniz.

Yakın gelecekte daha komplike bir sunucuya geçmek zorunda kalmayacağınız için elinizi cebinize atma ihtimaliniz bir süre daha gündeme gelmeyecektir.

Dezavantajları

Cache kullanımındaki en büyük dezavantaj WordPress kaynaklı istatistik raporlarının gerçek trafiği takip edememesiyle alakalıdır. Yukarıdaki örnekte de bahsettiğimiz üzere sitenize 10 saniye içinde giren her 5 kişi için ayrı ayrı sorgu yaptırmayacağınızdan ve dakikada 30 kişi yerine sadece veritabanı sorgusu yapabilen Bay A’lar sayılabileceğinden (ki onlar dakika başına sadece 6 kişidirler) WordPress tabanlı bir istatistik eklentisi kullanmanın bir anlamı kalmayacaktır. Evet, dilerseniz istatistik kaydı tutan plug-inlere avantajlar kısmında bahsettiğimiz gibi ayrıcalıklar tanıyabilirsiniz fakat bu da zaten cache eklentisi kullanma nedeninizle çelişen bir durum oluşturacağından istatistik raporlarınızı daha “old school” yöntemler olan Awstats veya Webalizer ‘e danışmanız gerekecek.

Sitenizde yaptığınız değişikliklerin eş zamanlı (real-time) olarak görüntülenmesinden bir yerde feragat etmek durumunda kalacaksınız. Yani basitçe kullanmakta olduğunuz temada herhangi bir değişiklik yaptığınızda X saniye geçip yeni bir Bay A gelene kadar tüm kullanıcılar bu değişikliği aynı anda göremeyecekler. Gerçi W3 Total Cache plug-in’inde bu durum düşünülüp o anki tüm cache içeriğini manuel olarak temizleyebileceğiniz “Empty all cache” isimli fevkaladenin fevkinde bir buton ayarlanmış.

W3 Total Cache resmi web sayfası:
http://www.w3-edge.com/wordpress-plugins/w3-total-cache/

W3 Total Cache WordPress plug-in sayfası:
http://wordpress.org/extend/plugins/w3-total-cache/

Kaynak

Emeği geçen arkadaşımıza teşekkürler..Ellerine sağlık..

W3 Total Cache Kurulumu;

Önemli Not: Daha önce den WP Super Cache eklentisini kullananıyorsanız mutlaka W3 Total Cache kurmak için eklentiyi kaldırmalısınız.. ( wp-config.php dosyası ile herhangi oynama yapmanıza gerek yoktur.)

  • İlk olarak sitenizin anadizininde ( httpdocs ya da public_html klasörü) bulunan wp-content/ klasörüne 777 izinlerini (chmod) veriyorsunuz.
  • Sitenizin anadizinindeki .htaccess dosyasının da chmodunu 777 yapıyorsunuz.
  • Admin panelinde Eklentiler=>Yeni Ekle=>Yükle ve Gözat butonuna tıklayarak BURADAKİ linkten indirdiğiniz eklentiyi kuruyorsunuz.  (Ya da eklentileri Ftp programı ile sunucuya gönderiyoruz. Tavsiyem Filezilla‘dır)

  • Anadizinde bulunan( httpdocs klasörü) wp-config.php dosyasını notepad++  ile açıyoruz


?Txt olarak indir: download.txt
1
2
if ( !defined(‘ABSPATH’) )
define(‘ABSPATH’, dirname(__FILE__) . ‘/’);

Kodunu bulup hemen üzerine aşağıdaki kodları ekliyoruz;

?Txt olarak indir: download.txt
1
define(‘WP_CACHE’, true);

Yani örnek görünümü şöyle olacak;

?Txt olarak indir: download.txt
1
2
3
define(‘WP_CACHE’, true);
if ( !defined(‘ABSPATH’) )
define(‘ABSPATH’, dirname(__FILE__) . ‘/’);

Kodları ilgili yere ekledikten sonra değişiklikleri kaydediyoruz.

  • Admin panelinde Eklentiler kısmından eklentimizi aktifleştiriyoruz.
  • Eklentiler Sayfasında w3 total cache’nin Settings (Ayarlar) linkine tıklıyoruz.

W3 TOTAL CACHE AYARLARI RESİMLİ ANLATIM

Resimleri Büyütmek İçin Üzerlerine Tıklayınız!

SanalAlemci w3 total cache ayarları resimli anlatım
W3 Total Cache – Minify Ayarları Resimli Anlatım;
w3 total cache eklentisi ayarları Minify resimli anlatımı -SanalAlemci.Com
W3 Total Cache – Page Cache Ayarları Resimli Anlatım;
w3 total cache ayarları-page cache ayarı resimli anlatım
Şimdi güvenliğimiz için wp-content klasörünün chmodunu 755 .htaccess dosyasının chmodunu 644 yapıyoruz..

wordpress w3 total cache kurulumu ve ayarları

Yukarıdaki resimler ve anlatımın bir kısmı R10.net’ten alıntıdır.Emeği geçen arkadaşımıza teşekkürler..

W3 Total Cache Eklenti Kurulumu Esnasında Hata Mesajı Alanlar İçin..

Eklentiyi etkinleştirme esnasında bu hata mesajını alırsanız;

/var/www/vhosts/siteadı.com/httpdocs/wp-content/w3tc could not be created, please run following command:
chmod 777 /var/www/vhosts/siteadı.com/httpdocs/wp-content
then

yukarıda adı geçen klasörlerin ve dosya izinlerinin chmod ayarlarının 777 olup olmadığını kontrol ediniz.. Tüm bu söylenilenleri yaptığınız takdirde aşağıdakine benzer bir hata mesajı alıyorsanız;

/var/www/vhosts/siteadı.com.com/httpdocs/wp-config.php could not be written, please edit config and add:
define(‘WP_CACHE’, true); before require_once(ABSPATH . ‘wp-settings.php’);
then

Ftp’deki .config.php dosyası’nın chmod izinlerini 777 yapıp eklentiyi etkinleştiriniz.. Eklentiyi etkinleştirdikten sonra güvenlik için chmod ayarını eski haline getirmeyi unutmayınız..

w3 total cache eklentisinin çalışıp çalışmadığını nasıl anlarım diye soracak olursanız sayfa kaynağını görüntüleyip (Ctrl U) en altta görebilirsiniz.. (Örnek görünümü sitemizde görebilirsiniz.)

Kolay gelsin..

Bir önceki yazımız olan Kentgaz ''Denizli'' Doğalgaz başlıklı makalemizde borç sorgulama Denizli kentgaz, denizli kent gaz arıza ve Denizli kentgaz hakkında bilgiler verilmektedir.

Toplam Okunma: 1.857 (Önbellek Kullanılıyor) | Son Görüntülenme: 18.05.2019

Konuya Yorum Yapabilirsiniz.

5 Yorum Yapılmış “WordPress W3 Total Cache İle CPU Sorunundan Kurtulun!”

Yasal Uyarı: Bu bölümde yer alan kullanıcı yorumları sanalalemci.com ve sahiplerinin görüşlerini ifade etmez, bu yorumlardan sanalalemci.com ve sahipleri sorumlu tutulamaz. Her yorum o yorumu yazan kullanıcının sorumluluğundadır.
  1. murat Diyor ki:

    Temmuz 27th, 2012 at 01:16

    merhaba, emeğin için teşekkürler…özellikle anlatım tarzın çok iyi…
    benim bu eklenti ile yaşadığım bir sorun var. önceleri yoktu. eklenti aktifken http://www.siteadı.com/wp-admin/edit.php sayfası açılmıyor. açıkçası beyaz bir sayfa çıkıyor. ve kalıyor. eklentiyi etkisizleştirdiğimde ise bu sayfaya girebiliyorum. kodlarla uğraştım ama çözemedim senin bir önerin olacakmı?

  2. SanalAlemci Diyor ki:

    Temmuz 27th, 2012 at 09:18

    Merhaba Murat Bey
    Öncelikle yorumunuz için teşekkürler.Paylaşılan konu’nun büyük bir bölümü başka bir siteden alıntıdır ve konu içinde kaynağı belirtilmiştir.

    W3 Total Cache eklentisini şu an bende kullanıyorum fakat bahsettiğiniz sorunu yaşamadım çok şükür.Dolayısı ile çözümün de ne olduğunu bilmiyorum açıkcası.Fakat aklıma gelenleri söyleyeyim belki işe yarar.

    Saçma gelebilir fakat ilk aklıma gelen şey, wp-admin/edit.php dosyasını yenisi ile değiştirmeyi denemeniz.

    2. Eklentinin ayarlarından olabilir.
    3. Diğer kullandığınız tüm eklentileri etkisizleştirip deneyin.(Önceleri yoktu dediğinize göre sonradan eklediğiniz bir eklenti ile çakışma olabilir)
    4. Config.php dosyasının yedeğini alıp (mutlaka alın) ”notepad++” vb bir programla açıp; kodlamasını ”ANSI” olarak kaydedip deneyin.
    Sorun devam ederse bu kez Biçimi ”UTF-8” veya UTF8 (BOM’suz) olarak kaydedip deneyin.

    5. wp-admin klasörü’nün chmod ayarlarının 755 olup olmadığını kontrol edin
    6. Kullandığınız Wp sürümü ile kullandığınız eklentinin uyumlu olup olmadığını kontrol edin.
    7. W3 Total Cache eklentisi’nin eski sürümünü kullanıyorsanız, en son sürümü W3 Total Cache Version 0.9.2.4 ile değiştirmeyi deneyin.

    Aklıma gelen bunlar..İnşâAllah işe yarar..Kolay gelsin

  3. murat Diyor ki:

    Temmuz 31st, 2012 at 23:02

    ilgin için teşekkürler.

    önerilerini denedim ancak olmadı. ilgniç olan şu: w3 total cache dışında diğer tüm eklentileri etkişizleştiriyorum, edit.php açılıyor. sonrasında eklenitleri tek tek aktif/deaktif yaparak deniyorum olmuyor…:))) toplu halde etkisizleştirdiğimde açılıyorda , tek tek denediğim zaman neden olmuyor …düşün ara kurcala bulamıyorum. tüm eklentilerin son sürümü kurulu…ayrıca bu oalydan önce yeni bir eklentide kurmadım. aklıma gelen bir şey vardı, host sunucu amerikadan almanyaya taşındıktan 3-5 gün sonra yaşandı bu olayki, host yetkilisi bizzat arayıp oda hatayı bulmaya çalıştı ancak bir sonuç çıkmadı. sorun eklentilerden kaynaklanıyor ama tek bir eklenti nedeniyle değil. kodlarla alakalı bir olay. sence hangi php dosyalarına bakmalıyım…kolay gelsin…

  4. SanalAlemci Diyor ki:

    Ağustos 1st, 2012 at 13:39

    @murat

    Murat bey daha fazla yardımcı olmayı sorunun çözülmesini çok isterdim inanın.Fakat başka birşey gelmiyor aklıma. r10.net vb webmaster sitelerinden yardım isteyebilirsiniz.Sorunu çözerseniz buraya yazın lütfen olurmu.Bende çok merak ettim.

  5. برنامه نویس Diyor ki:

    Mart 30th, 2015 at 06:31

    Teşekkürler – ben iranliyim – sizin postiz cok iyi :) . thanks for good posts . :) Yaralandım, teşekkür ederim.

Yorum Yapabilirsiniz