Configurare i front-end della cache
Un front-end della cache è un’interfaccia tra Commerce e il back-end di archiviazione della cache. È possibile definire più front-end, ciascuno con impostazioni di back-end diverse, quindi assegnare tipi di cache specifici a ogni front-end.
Questa funzione è utile quando si desidera utilizzare back-end o configurazioni di cache diversi per tipi diversi di dati memorizzati nella cache. Ad esempio, potrebbe essere necessario memorizzare full_page nella cache di un database Redis dedicato mentre si utilizza un database separato per la memorizzazione nella cache di default.
Usa front-end predefinito
Commerce fornisce una cache front-end default che funziona per tutti i tipi di cache. Estende Zend_Cache_Core implementando la cache front-end Magento\Framework\Cache\Core.
Nella maggior parte dei casi, non è necessario personalizzare il front-end. Devi solo configurare il backend. Consulta Opzioni di back-end della cache.
Definire un front-end di cache personalizzato
I passaggi seguenti descrivono come associare una cache front-end a un tipo di cache.
Passaggio 1: definire un front-end della cache e assegnare tipi di cache
Per definire una cache front-end personalizzata, aggiungere la configurazione a app/etc/env.php (che sostituisce di.xml):
'cache' => [
'frontend' => [
'<unique frontend id>' => [
<cache options>
],
],
'type' => [
<cache type 1> => [
'frontend' => '<unique frontend id>'
],
<cache type 2> => [
'frontend' => '<unique frontend id>'
],
],
],
Dove:
<unique frontend id>— Nome univoco per identificare il front-end (ad esempiodefault,page_cache,stale_cache_enabled)<cache options>— Tipo di back-end e opzioni per questo front-end (vedere Opzioni cache)<cache type>: tipo di cache di Commerce da assegnare a questo front-end (ad esempio,config,layout,block_html,full_page)
redis, valkey o file con la moderna implementazione di Symfony Cache. Per ulteriori dettagli, vedere Utilizzare Redis per la cache predefinita e Utilizzare Valkey per la cache predefinita.Passaggio 2: configurare le opzioni front-end e back-end
È possibile specificare le opzioni di configurazione della cache front-end e back-end in env.php o di.xml. Questa attività è facoltativa. Se non si specificano opzioni, Commerce utilizza le impostazioni predefinite front-end e back-end.
env.php esempio:
'frontend' => <frontend_type>,
'frontend_options' => [
<frontend_option> => <frontend_option_value>,
...
],
'backend' => <backend_type>,
'backend_options' => [
<backend_option> => <backend_option_value>,
...
],
Dove:
-
<frontend_type>: tipo di cache front-end di basso livello. Specificare un nome di classe compatibile conZend\Cache\Core.
Se omesso, verrà utilizzato Magento\Framework\Cache\Core. -
<frontend_option>,<frontend_option_value>- Nome e valore delle opzioni passate dal framework Commerce come array associativo alla cache front-end durante la creazione. -
<backend_type>: tipo di cache di back-end di basso livello. Puoi specificare:- Cache Symfony moderna (2.4.9+, consigliata): nomi semplificati come
redis,valkeyofile - Legacy (basato su Zend): nome completo della classe compatibile con
Zend_Cache_Backendche implementaZend_Cache_Backend_Interface
- Cache Symfony moderna (2.4.9+, consigliata): nomi semplificati come
-
<backend_option>,<backend_option_value>: nome e valore delle opzioni passate dal framework Commerce come array associativo alla cache back-end durante la creazione.
- Legacy (basato su Zend):
'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis' - Moderno (cache Symfony):
'backend' => 'redis'(consigliato per Commerce 2.4.9+)
Consulta la documentazione Laminas per le opzioni basate su Zend o le guide moderne di Symfony Cache per Redis e Valkey.