PHP önbelleğe alma veri

4 Cevap php

Biraz karmaşık SQL sorguları vardır ve ben veritabanı yükü azaltmak için önbelleğe alma özelliği uygulamak istiyorum PHP bir site geliştiriyorum.

Ben sadece yazmak ve okumak HTML doğrudan bir dosyaya ya da belki de daha sonra kayıtları ayrı bir fonksiyonu ile HTML onu sarmak için bir sınırlayıcı bir YAML dosyası gibi bir şey oluşturmak için daha iyi olurdu merak ediyorum?

Benim düşüncem, bu kullanıcı seçenekleri isteğine uygulanan (örneğin, kayıtların sayısı görüntülemek için) izin verecek olmasıdır.

Herhangi bir tavsiye / önerileri takdir.

Teşekkürler.

4 Cevap

Backends önbelleğe için bunlardan herhangi birini kullanabilirsiniz:

ve onlara birleşik bir arayüz için Zend_Cache kullanın

Tam sayfa önbelleğe veya kısmi önbelleğe kullanmak ister özel UseCases bağlıdır. Genellikle, uygulama ikisinin bir karışımı olacak.

Ben şahsen daha önce hiç kullanmadım rağmen, bir ARMUT package önbelleğe alma için vardır. Zend_Cache gibi diğer seçenekler arasında onu düşünün.

Eğer uygulama birden fazla yerde önbelleğe alma uygulayabilirsiniz:

  • Eğer koşullu GET uygulayabilirsiniz (ETag ve Last-Modified HTTP başlıklarını)
  • Birden backendleri ile belirtilen çözümleri (Cache_Lite, Zend_Cache, APC) ile verileri önbelleğe alma yapmak (dosya, memcached, paylaşımlı bellek)
  • Dediğin gibi şablon dosyalarını önbelleğe (Smarty)

You might want to take a look at Zend Cache
http://framework.zend.com/manual/de/zend.cache.html

Ben genellikle bir yerde (siz, yani bazen) $ _SESSION ok (kullanıcılarla ilgili verileri de içinde önbelleğe arıyor ne bağlı olarak, bazen (kullanıcı bağımlı sorguları için büyük resultsets değil) ve sonra benim sınıf SQL sorguları sonucu depolamak önbellek var ve buna devam ederse sadece denetler.