2015-08-13 14 views
7

Sorgu sonucunu önbelleğe almak için Redis'i ve metacache için APC'yi kullanıyorum. Symfony belgelerine göre tek yapmam gereken şey.Symfony 2 uygulamasında doctrine sonucu önbelleğe almak için Redis'i kullanın

doctrine: 
    orm: 
     auto_mapping: true 
     metadata_cache_driver: apc 
     result_cache_driver: 
      type: redis 
      host: localhost 
      instance_class: Redis 

Bu, önbellek özelliğini doktrin için yapılandırmanın doğru yolu mu? Ayrıca "google ile redis kullan" diyenlere de SNCRedis paketini kullanmamı öneren sonuçlar elde ediyorum.

Symfony'de Redis for dokctrine kullanmak için SNCRedis paketinin kullanılması gerekli midir? Ayrıca Symfony varsayılanlarının üstünde ne yarar sağlar. Dokümantasyon, Symfony'de Doctrine ile ilgili önbellekleme söz konusu olduğunda seyrek olduğu için burada biraz kafam karıştı. Birisi bana bu konuda herhangi bir fikir verebilir.

cevap

11

Sonuç önbelleği için eklediğiniz yapılandırma, yalnızca kullanılacak stratejiyi yapılandırır. Hala açıkça belli sorgular için önbellek sonuçlarına doktrini anlatmak gerekir:

$query->useResultCache(true); 

Doktrini en Cache docs bu konuda daha fazla bilgi edinin. Symfony'de Belgeleme seyrek değildir, çünkü bu gerçekten Symfony özel bir şey değildir. Bunun yerine doktrin belgelerini okuyun. Doktrini yapılandırmayı öğrenmek için yalnızca Symfony belgelerini kullanın.

Redis önbellekleme stratejisi, doctrine/cache paketiyle doktrin tarafından uygulandığı için, herhangi bir Redis demetleri gerekmez. Bunu nasıl kullanacağın konusunda endişelenmene gerek yok. Önbelleği dokümanlarda açıklandığı şekilde yapılandırmanız yeterlidir.