İşlemci kullanımında son çare statik HTML sayfalar

____________________________________________________________________

Tonla veri tabanı sorgusu kullanan bir siteniz varsa ve veri tabanı boyutlarınız da kendini aşmışsa, sunucunuzun işlemci kullanımı bazen dert olabiliyor. Bunun çaresi de sorgu sayısını azaltmak veya sorgu ile sayfa oluşturulması yerine sayfaları statik olarak yayınlamak.

Veri tabanı boyutu büyük olmasa da aşırı ziyaretçi alan sayfalar veri tabanı motoruna tonla sorgu gönderilmesine sebep olabilirler. Bu sorguların veri tabanı motoru tarafından işlenmesi ve istenilen verinin size verilmesi ise o sorguyu oluşturmaktan çok daha zor bir şeydir. Bunun için veri tabanı dosyalarının belleğe yüklenmesi işlemci tarafından istenilen indekslerdeki satırların ve buralardaki verilerin alınması, bir kritere göre sıralanması vs.  işlemler gereklidir. Sorgu sayısı arttıkça da bu işlemlerin yapılma sıklığı artar ve doğal olarak da işlemci kullanımı artar.

Veri tabanı sorgularını azaltmanın bir yolu sitedeki sorguların dönen değerlerinin ya da sayfaların önceden bir alanda önbellek amacıyla tutulmasıdır. Bunda amaç veri tabanına sorgu gönderip veri istemek yerine hazırda önceden düzenlenmiş ve sıralanmış veriyi kısayoldan belleğe yüklemektir. Bu işlem diğerine göre daha az işlemci kullanacaktır.

Ancak kullandığınız içerik yönetim sisteminde bunu kolay yoldan yapmanızı sağlayacak eklenti gibi öğeler olmayabilir ve bunu kendiniz de yapacak bilgiye ve tecrübeye sahip olmayabilirsiniz. Bu durumda da geriye en iyi çözüm sayfaları elle kaydedip bunları sitenizde yayınlamak kalıyor.

Bunun yolu da basit, her gezgin (tarayıcı değil) olur ama bazı IE sürümleri sayfaya kendi sürüm nosunu falan eklediğinden diğerlerini kullanmanızı tavsiye ederim. Yapmanız gereken gezgininizde çok ziyaretçiden rahatsız olduğunuz sayfayı açıp Farklı Kaydet butonuyla ya da Dosya > Farklı Kaydet (İngilizce ise File > Save As) yoluyla bilgisayarınıza bir yere kaydetmek.

Bundan sonra da bu dosyayı sunucunuzda rahatsız olduğunuz adrese girildiğinde gösterilecek şekilde sunucuya yüklemeniz gerekiyor. Bunun için sitenizdeki sayfanın adresine bakın. Örneğin yazının adresi “www.siteniz.kom/sayfa-adresi/” şeklindeyse sunucunuzda ana klasörde “sayfa-adresi” içinde bir klasör oluşturmanız ve kaydettiğiniz sayfayı bunun içine index.htm gibi bir isimle kopyalamanız gerekli. Eğer yazının adresi “www.siteniz.kom/sayfa-adresi.htm” şeklindeyse de kaydettiğiniz dosyanın ismini “sayfa-adresi” ismiyle değiştirip sunucunuza yüklemeniz gerekir. Uzantısı htm dışında php veya asp de olabilir bu durumda da dosyanızın uznatısını da uygun şekilde değiştirmeniz gerekir, sonuçta sayfanın html kodları aynı olduğu için gezgin sayfayı sorunsuz açacaktır.

Sayfanızı yükledikten sonra kullandığınız içerik yönetim sistemine oturum açıp o sayfanın yayından kaldırılması gerekli. Sayfa yayından kaldırılınca sunucu yazılımı bir istek geldiğinde statik sayfayı istemciye gönderecektir.

Bu şekilde sayfanın işlemci üzerindeki yükü neredeyse yok olur. İşlemci sadece sayfayı belleğe oradan da istemciye göndermekle meşgul olur. Ayrıca sayfada hiçbir PHP kodu kullanılmadığından PHP yazılımı da hiçbir fonksiyon çalıştırmayacağından bunun da işlemci kullanımınza olumlu etkisi olacaktır. Yalnız hatırlatmakta fayda var ki, bu yöntemin kullanımına etkisi olmayacaktır.

Yöntemin de birkaç dezavantajı var. Öncelikle sitede herhangi bir güncelleme olduğunda bu statik sayfa güncellenmeyecektir, yani yan menülerindeki yeni yazılar, bağlantılar, temalar vs. güncellenmeyecektir. Bu durumda bu statik sayfaları düzenli aralıklarla yeniden kaydedip sunucunuza koymalısınız. Ayrıca yazıya gönderilen yorumlar da yazı içerik yönetim sistemine göre yayında olmadığından veri tabanına işlenmeyebilir. Bu durumda bu yazınıza yorum yapılamayacaktır. Eğer içerik yönetim sistemi biraz aptalsa yazıya gelen yorumları yazının yayında olmamasına aldırmayarak veri tabanına girebilir. Bu durumda sayfayı arada yayınlatıp yine farklı kaydetme yöntemi ile güncellemek gerekecektir. Ayrıca farklı eklentiler ve istatistik yazılımları da sayfaya düzgün olarak içeriklerini koyamayacağından bazı sorunlarla karşılaşabilirsiniz. Örneğin bu sayfalarınıza gelen hitleri istatistik yazılımınız kaydetmeyebilir.

Sayfaları statik olarak yayınlayıp veri tabanı sorgu sayısını ve işlemci kullanımını düşürmek son çarelerden biridir. Ancak genellikle iyi sonuçlar verir, çünkü işlemcinin yükü çok büyük oranda üzerinden atılmış olur. Sadece dezavantajlarına biraz dikkat edilmeli, bunun dışında en az problemli  ve garanti yöntemdir. Hatta veri tabanında veya bir PHP fonksiyonundaki hata yüzünden diğer sayfalarınız açılmasa bile bu sayfa sapasağlam erişilebilir olacaktır.