Configurar front-end de caché
Un front-end de caché es una interfaz entre Commerce y el back-end de almacenamiento de caché. Puede definir varios front-end, cada uno con una configuración de back-end diferente, y luego asignar tipos de caché específicos a cada front-end.
Esto resulta útil cuando desea utilizar diferentes backends o configuraciones de caché para diferentes tipos de datos en caché. Por ejemplo, es posible que desee el almacenamiento en caché de full_page en una base de datos Redis dedicada mientras utiliza una base de datos independiente para el almacenamiento en caché de default.
Usar el front-end predeterminado
Commerce proporciona un front-end de caché default que funciona para todos los tipos de caché. Amplía Zend_Cache_Core al implementar la caché de front-end Magento\Framework\Cache\Core.
En la mayoría de los casos, no es necesario personalizar el front-end. Solo es necesario configurar el servidor. Consulte Opciones de servidor de caché.
Definir un front-end de caché personalizado
A continuación se describen los pasos para asociar un front-end de caché con un tipo de caché.
Paso 1: Definir un front-end de caché y asignar tipos de caché
Para definir un front-end de caché personalizado, agregue la configuración a app/etc/env.php (que invalida di.xml):
'cache' => [
'frontend' => [
'<unique frontend id>' => [
<cache options>
],
],
'type' => [
<cache type 1> => [
'frontend' => '<unique frontend id>'
],
<cache type 2> => [
'frontend' => '<unique frontend id>'
],
],
],
Donde:
<unique frontend id>: un nombre único para identificar el front-end (por ejemplo,default,page_cache,stale_cache_enabled)<cache options>: tipo de servidor y opciones para este front-end (consulte Opciones de caché)<cache type>: un tipo de caché de Commerce para asignar a este front-end (por ejemplo,config,layout,block_html,full_page)
redis, valkey o file con la implementación moderna de Symfony Cache. Consulte Usar Redis para la caché predeterminada y Usar Valkey para la caché predeterminada para obtener más información.Paso 2: Configurar las opciones de front-end y back-end
Puede especificar opciones de configuración de caché de front-end y back-end en env.php o di.xml. Esta tarea es opcional. Si no especifica opciones, Commerce utiliza la configuración predeterminada de front-end y back-end.
env.php ejemplo:
'frontend' => <frontend_type>,
'frontend_options' => [
<frontend_option> => <frontend_option_value>,
...
],
'backend' => <backend_type>,
'backend_options' => [
<backend_option> => <backend_option_value>,
...
],
Donde:
-
<frontend_type>: el tipo de caché de nivel inferior de front-end. Especifique un nombre de clase compatible conZend\Cache\Core.
Si se omite, se usa Magento\Framework\Cache\Core. -
<frontend_option>,<frontend_option_value>: el nombre y valor de las opciones que el marco de trabajo de Commerce pasa como una matriz asociativa a la caché de front-end en el momento de la creación. -
<backend_type>: el tipo de caché de servidor de nivel bajo. Puede especificar:- Caché Symfony moderna (2.4.9+, recomendada): Nombres simplificados como
redis,valkeyofile - Heredado (basado en Zend): Nombre de clase completo compatible con
Zend_Cache_Backendque implementaZend_Cache_Backend_Interface
- Caché Symfony moderna (2.4.9+, recomendada): Nombres simplificados como
-
<backend_option>,<backend_option_value>: nombre y valor de las opciones que el marco de trabajo de Commerce pasa como una matriz asociativa a la caché back-end al crearla.
- Heredado (basado en Zend):
'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis' - Moderno (caché de Symfony):
'backend' => 'redis'(recomendado para Commerce 2.4.9+)
Consulte la documentación de Laminas para ver las opciones basadas en Zend o las modernas guías de Symfony Cache para Redis y Valkey.