Düzgün php dosyalarını önbelleğe nasıl

3 Cevap php

I ob_start() Ben bunu başarıyla önbelleğe mümkün duyuyorum PHP'nin kullanarak, bir yazı ve birden yorumlarla bir sayfa var.

Sonraki her yorum için bir kullanıcı adı ve geçerli mesajların ve itibar onun numarası var. Birisi sadece o ben önbellek dosyasını güncelleştirmek, yeni bir yorum katıyor kadar Şimdi bütün yazı ile sayfanın önbelleğini tutuyorum.

Şimdi sorun, bir kullanıcının sonrası numarası ve itibar diğer konularda o ileti / yorum olarak artacak ve onun post numarası ve itibar yaşlı mesajları üzerinde değişiklik olmayacak olmasıdır.

Ne bu sorunu çözmek için en iyi yöntem olacaktır.

3 Cevap

Ben tür yanlış kanıtlanmış umuyoruz, ama önbellek süresini sınırlayarak daha bu başka etrafında herhangi bir kolay yolu şu anda var olduğunu sanmıyorum.

Siz tabii ki AJAX ile ilgili itibarına, vb güncelleme olabilir ama oldukça mümkün olduğunu bağlantıları & Bu tükettiği sonuçta ilk etapta sayfayı önbelleğe yarar daha ağır olacağını bant genişliği.

Dolayısıyla ihtiyacını azaltarak - önbelleğe ana hedeflerinden biri (tüketimini bant genişliği aksine) işlem yükü azaltmak için ise, elbette, sadece sayfanın dinamik olmayan parçaları (statik bir metin dosyası veya benzeri gibi her mesaja düzleştirmek olabilir Sizin Markdown veya BBCode, vb) kullanılarak ve bunlar arasında eğer onlar düzenlenmiş eğer gerektiği gibi / güncelleme HTML yeniden-üretir.

Düşüncelerimi bazı:

Sen bir saat ya da 15 dakika gibi, belli bir süre için önbelleğe yazılan sayfaları tutmak için seçebilirsiniz. Bu sefer sayfada olsun ziyaretçi miktarı, ayrıntıları değiştirilebilir frekans ve kişisel tercihinize bağlıdır. O really, bir kullanıcı mesaj sayısı biraz modası geçmiş olup olmadığı önemli değil çünkü. Bu dönemden sonra önbelleğe alınmış sürümünü (aynı zamanda kaynak tasarrufu) kaldırmak ve sayfa tekrar ziyaret ise, bu güncellenmiş detayları ile yeniden önbelleğe olacak.

Zeki tarafından (yeniden) ob_start() Eğer sonrası parçası ve yorumlar parçası gibi, sayfanın birden çok parça tampon olabilir kullanarak. Ayrı ayrı bu parçaları saklamak ve sadece bir bölümünü yerine tam sayfa yeniden gerekir. Çoğu kez, sonrası kısmı çok sık değişiyor değildir.

(O yarattı ise, ya da sayfayı kendisi) da belirli bir kullanıcı yorum gönderdi sayfaları takip edin. Kullanıcı ayrıntılar değişiklikler üzerine (yani önbelleğe alınmış sürümünü kaldırmak) bu sayfalar eskimiş olun, (yeni yazı / yorum eklenmiştir). Eğer bir zaman küçük bir dönemde bir çok değişiklik varsa yeniden önbellek sayfaları için bazı arka plan süreci kullanmak ve web sunucusu duyarlı tutmak olabilir.

(% Kullanıcı gibi metin eşsiz parçalar,: 123, postcount%) takın belirteçleri sık değişen detayların başka bir olasılıktır. Sonra önbelleğe bu sürümünü saklamak ve bir sayfa isteği üzerine onların ayrıntıları ile belirteçleri değiştirebilirsiniz. Zaman dönem başına sayfa görüntüleme sayısı çok yüksek (veya en azından çok daha yüksek ayrıntı değişikliklerin frekansı sonra) ise, bu da, diğer önbelleğe alma teknikleri ile kombine edilebilir.