Configurer les fronts du cache
Un cache frontal est une interface entre Commerce et le serveur principal de stockage du cache. Vous pouvez définir plusieurs fronts, chacun avec des paramètres de serveur principal différents, puis attribuer des types de cache spécifiques à chaque front-end.
Cela s’avère utile lorsque vous souhaitez utiliser différents serveurs principaux de cache ou des configurations pour différents types de données mises en cache. Par exemple, vous pouvez full_page la mise en cache sur une base de données Redis dédiée lors de l’utilisation d’une base de données distincte pour la mise en cache default.
Utiliser le serveur frontal par défaut
Commerce fournit une interface de cache default qui fonctionne pour tous les types de cache. Il étend Zend_Cache_Core en implémentant le cache frontal Magento\Framework\Cache\Core.
Dans la plupart des cas, vous n’avez pas besoin de personnaliser le serveur frontal. Il vous suffit de configurer le serveur principal. Voir Options du serveur principal de cache.
Définition d’un fichier frontal de cache personnalisé
Les étapes suivantes expliquent comment associer un serveur frontal de cache à un type de cache.
Étape 1 : définir un cache frontal et attribuer des types de cache
Pour définir un front-end de cache personnalisé, ajoutez la configuration à app/etc/env.php (qui remplace di.xml) :
'cache' => [
'frontend' => [
'<unique frontend id>' => [
<cache options>
],
],
'type' => [
<cache type 1> => [
'frontend' => '<unique frontend id>'
],
<cache type 2> => [
'frontend' => '<unique frontend id>'
],
],
],
Où :
<unique frontend id>: nom unique permettant d'identifier le serveur frontal (par exemple,default,page_cache,stale_cache_enabled)<cache options>: type de serveur principal et options de ce serveur frontal (voir Options de cache).<cache type>: type de cache Commerce à affecter à ce serveur frontal (par exemple,config,layout,block_html,full_page)
redis, valkey ou file avec l’implémentation moderne de Symfony Cache. Voir Utiliser Redis pour le cache par défaut et Utiliser Valkey pour le cache par défaut pour plus d’informations.Étape 2 : configurer les options frontales et principales
Vous pouvez spécifier les options de configuration du cache front-end et back-end dans env.php ou di.xml. Cette tâche est facultative. Si vous ne spécifiez pas d’options, Commerce utilise les paramètres frontaux et principaux par défaut.
env.php exemple :
'frontend' => <frontend_type>,
'frontend_options' => [
<frontend_option> => <frontend_option_value>,
...
],
'backend' => <backend_type>,
'backend_options' => [
<backend_option> => <backend_option_value>,
...
],
Où :
-
<frontend_type>: type de cache front-end de bas niveau. Spécifiez un nom de classe compatible avecZend\Cache\Core.
Si cet attribut est omis, 🔗 est utilisé. -
<frontend_option>,<frontend_option_value>: nom et valeur des options que le framework Commerce transmet sous forme de tableau associatif au cache front-end lors de la création. -
<backend_type>: type de cache du serveur principal de bas niveau. Vous pouvez spécifier les éléments suivants :- Modern Symfony Cache (2.4.9+, recommandé) : noms simplifiés tels que
redis,valkeyoufile - Hérité (basé sur Zend) : nom de classe complet compatible avec les
Zend_Cache_Backendqui implémententZend_Cache_Backend_Interface
- Modern Symfony Cache (2.4.9+, recommandé) : noms simplifiés tels que
-
<backend_option>,<backend_option_value>: le nom et la valeur des options que le framework Commerce transmet sous forme de tableau associatif au cache du serveur principal lors de la création.
- Hérité (basé sur Zend) :
'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis' - Moderne (cache Symfony) :
'backend' => 'redis'(recommandé pour Commerce 2.4.9+)
Voir la Documentation Laminas pour les options basées sur Zend, ou les guides modernes de Symfony Cache pour Redis et Valkey.