« Programmation PHP avec Symfony/Doctrine » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 325 :
cache:
pools:
doctrine.system_cache_poolmetadata_cache_pool:
adapter: cache.system
doctrine.query_cache_pool:
adapter: cache.appsystem
doctrine.result_cache_pool:
adapter: cache.app
doctrine.system_cache_pool:
adapter: cache.system
</syntaxhighlight>
 
Ligne 339 :
metadata_cache_driver:
type: pool
pool: doctrine.system_cache_poolmetadata_cache_pool
query_cache_driver:
type: pool
pool: doctrine.system_cache_poolquery_cache_pool
result_cache_driver:
type: pool
Ligne 348 :
</syntaxhighlight>
 
A partir de là le cache des métadatamétadonnées est utilisé partout.
 
Par contre pour ceux de requêtes et de résultats, il faut les définir pour chaque query builder de chaque repository :
Ligne 359 :
;
</syntaxhighlight>
 
Dans cet exemple, on n'utilise pas cache.system pour le cache de résultats pour ne pas saturer le serveur qui héberge le code. cache.app pointe donc vers une autre machine, par exemple Redis, ce qui nécessite un appel réseau supplémentaire, et n'améliore donc pas forcément les performances selon la requête.
 
==== Injection de dépendances ====