Cache Kullanılmamasının Zararları
Cache (önbellekleme), yapılmadığı taktirde geçmiş zamandaki web sitelerinde de günümüzdeki az sayıda web sitesinde de göreceğiniz gibi 10 saniyeye yakın bir bekleme süresiyle karşı karşıya kalacaksınız. Bu kullanıcı açısından da sunucunuz için de çekilir çile değil. Sürekli htmlyi oluşturup yüklemesi zaman kaybına neden olacağından artık cache sizin için şart demektir. Evet basit bir html sayfası için bu geçerli değil ancak ön belleğe alınması gereken ancak alınmayan kodlar size sayfayı her yenilediğinizde ya da sayfalar arası geçişte sorun çıkarır.Cache Kullanım Faydaları
Yukarıda zararlarından bahsedildi şimdi de eğer örnek olarak bir web sitesinde cache kullanılmadığını, ardından cache sistemini kullanmaya geçişte ona sağlayacağı faydaları ele alabiliriz.- Ön bellekleme yapılacağı için oluşturulacak sayfalar bir kereye mahsus oluşturulur ve bundan sonra taş çatlasa yarım saniyelik bir süre zarfında sayfanız size yanıt verecektir.Bu önemli bir kriter.
- Açılıştaki hız, google sıralama kriterlerinde büyük önem arz ediyor. Dolayısıyla google amca sizi sıralamada daha yukarılara rahatça çıkarabilir sonuçta kullanıcı dostu bir web sitesi olmaya ilk adım , google’da kullanıcıyı düşünüyor düz mantık.
- Kullanıcılar yavaşlığa dayanamazlar , 2 saniye beklemez çıkarlar bir başka sitede istedikleri veri var ne de olsa. Bu sebeple kullanıcılar memnun kalacak hitiniz artacak.
- Sunucunuz için de güzel bir gelişim olacak cache kullanımı. Artık sunucu , ön bellek kullanımından önceki sayfa gösterim boyutunun on binlerce katı fazla sayfa gösterimi yapabilecek performansa gelecek. Sayfalar arası geçişin göz açıp kapama hızında olduğunu düşünürseniz hem size hem kullanıcıya faydası var.
Hazır Sistemlerde Cache (Ön Bellekleme)
Hazır sistemlerde bu işlem , saf programlama dillerine nazaran daha kolaydır.İşleyiş ve hız bakımından karşılaştırma yapmadım hiç 🙂 WordPress, Joomla gibi hazır sistemlerde oturup eklenti yazacak haliniz yok ,gidip wordpress’in eklenti odasından güzel bir eklenti seçecek ve sitenize kuracaksınız. Tavsiye edeceklerimden ilk sıradakini benim tavsiyemdir kendim kulladığım ise LiteSpeedCache. Cache oluşturma, silme ve kullanmada size büyük avantaj sağlıyor kullanımı basit.Wp SuperCache
Size 17 farklı dilde eklentiyi kullanma imkanı sunmasıyla açıklamaya başlayabiliriz.Bu eklenti, dinamik WordPress blogunuzdan statik HTML dosyaları oluşturur. Bir html dosyası oluşturulduktan sonra, web sunucunuz nispeten daha ağır ve daha pahalı WordPress PHP betiklerini işlemek yerine bu dosyaya hizmet edecektir. Statik html dosyaları, kullanıcılarınızın çoğuna sunulur:- Giriş yapmamış kullanıcılar.
- Blogunuzda yorum bırakmamış kullanıcılar.
- Veya şifre korumalı bir gönderiyi görmemiş olan kullanıcılar.
WP Fastest Cache (Türkçe)
Açıklama : Eklenti, dinamik olan wp blog’u static html dosya haline çevirir. Bir sayfa oluşturulurken php mve mysql kullanılır. Bu yüzden RAM ve CPU kullanımı yükselir. Eğer sayfaya çok ziyaretçi gelirse RAM ve CPU kullanımı çok yükselir ve bu yüzden sayfa yavaş oluşturulur. Bu durumda sayfayı tekrar tekrar oluşturmamak için bir cache eklentisine ihtiyacınız var. Cache sistemi statik html dosya oluşturur ve kaydeder. Sonraki kullanıcılar direk statik html dosyaya ulaşır. Eklentinin kurulumu oldukça kolaydır. htaccess dosyasını değiştirmenize gerek yok çünkü otomatik olarak değiştirilir. Bu eklenti de ikinci alternatifim ve Türkçe oluşu panelde de kullanım kolaylığı sağlasa da aslında ilki daha anlaşılabilir bir yapıda ve benim tercihimdir. Sonuçta mesleki olarak biraz ingilizce biliyorsanız ilk yazdığımı daha rahat kullanabilirsiniz. WordPress eklenti indirme linki : https://tr.wordpress.org/plugins/wp-fastest-cache/ Diğer eklentiler için https://tr.wordpress.org/plugins/ buradan arama yaparak dilediğinizi indirebilir ve kullanabilirsiniz.Kendi web siteniz için Cache (Ön bellekleme) işlemi
Php ile ön bellekleme yapacağız fakat başta temel anlamda mantık kavranmalı. Elimizde bir html yapısı tutacağız ve bunu hemen kullanıcıya sunmak değil amacımız bunu bir yerde ön bellekleyeceğiz. Aşağıdaki kodlarınızı eğer oluşturduysanız bir projenizin en başına ekleyiniz.< ?php if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) ob_start("ob_gzhandler"); else ob_start(); ?>Bu kod , bizim hazırladığımız kodu direkt karşıya göndermiyor haliyle performansta fayda sağlayacak. Bunları bir paket haline getirip tek seferde gönderme işlemi yapacağız. Kodun bize sağladığı şey elde ettiğimiz sayfanın tamamının kod bloğunu bizlere sunması. Sayfa tamamen çalıştığında bir kod üretecek ve bu kodu elde tutmak istiyorsak aşağıdaki kodları sayfanın en altına ekleyiniz.
< ?php $parse= trim(ob_get_flush()); echo $parse; ?>Bu sayede tüm kodu avuçlarımıza aldık. Kodları güzelce bir veritabanına ya da bir dosyaya kaydetmek de zor olmayacaktır.Bunun faydası ise şu olacak , dosyayı dilediğimiz zaman aralığında güncel halini sunabileceğiz. Bu cache işlemini yani 1 gün arayla tutmasını sağlayabiliriz ya da 3 saatte bir genelde günlük ve haftalık tercih edilmekte. En güzel yanı ise yeniden oluşturmak veya elimizdeki hazır kodları kullanmak bize seçenek olarak sunuluyor. Şimdi basit mantıkta bir kod bloğu oluşturacaksınız. Eğer dosyaya erişim zamanı belirlediğiniz zamandan (örn:1gün) düşük ise dosyayı okutacak , $parse değişkenine yazacaksınız.Ardından değişkeni ekrana yazdıracak ve exit ile bitireceksiniz.
Dosyaya erişim zamanı < 1 ise dosyayı oku, $parse değişkenine yaz. değişkeni ekrana bas ve bitir.Sizin için detaylı bir örneğe buraya tıklayarak ulaşabilirsiniz. Cache oluşturma işlemi de yukarıdaki işlemler ile halledilmekte , hazır sistemlerde bu işlem eklentiyi etkinleştirmekten öteye gitmiyor.