[On-Premises]{class="badge informative" title="Applicabile solo ai progetti locali di Adobe Commerce."}

Opzioni di back-end della cache e riferimento archiviazione

NOTE
Questa pagina documenta la configurazione di app/etc/env.php locale.
Per i progetti Adobe Commerce on Cloud, il pacchetto ece-tools genera la configurazione app/etc/env.php risultante durante la distribuzione in base alla configurazione della variabile di distribuzione in .magento.env.yaml. Non si modifica il file env.php. Consulta Best practice per la configurazione di Valkey e Redis Service e distribuire le variabili.

L’applicazione Commerce utilizza una cache di basso livello front-end e back-end per fornire accesso allo storage della cache. Commerce supporta diversi back-end e strategie di caching, ciascuno adatto a casi d’uso diversi. Questa pagina descrive i backend disponibili e le loro differenze.

NOTE
Varnish gestisce il caching a pagina intera a livello HTTP per le distribuzioni locali. Il Fastly Service lo gestisce per le distribuzioni Cloud. Nessuna delle due soluzioni utilizza il back-end della cache di basso livello.

Opzioni cache back-end

Nella tabella seguente sono riepilogate le cache back-end disponibili:

Back-end
Descrizione
Guida alla configurazione
File system
Impostazione predefinita. Memorizza i dati della cache nei file in var/cache/. Nessuna configurazione richiesta.
N/D
Redis
Archivio dati in memoria per il caching ad alte prestazioni.
Usa Redis per la cache predefinita
Valkey
Alternativa open-source compatibile con Redis.
Usa Valkey per la cache predefinita
Database
Motore di cache personalizzato supportato da un database
Creare motori di cache personalizzati (documentazione di Adobe Developer)
IMPORTANT
La cache Redis non è supportata per Adobe Commerce 2.4.9 o versioni di patch successive a 2.4.5-p16, 2.4.6-p14, 2.4.7-p9 e 2.4.8-p4. Se stai eseguendo l’aggiornamento a una di queste versioni, configura Valkey e aggiorna la configurazione della cache per utilizzarla. Per Adobe Commerce on-premises, vedere configurare Valkey.

Cache back-end e implementazioni L2 implementation-approaches

Commerce supporta il backend diretto della cache e il caching L2. Un back-end diretto seleziona l’archiviazione della cache. Il caching L2 aggiunge un livello di cache locale davanti allo storage remoto.

Back-end della cache diretta

I seguenti esempi PHP configurano il back-end della cache in <Commerce-install-dir>/app/etc/env.php. Non abilitano il caching L2.

Versione Commerce
Implementazione
Back-end
Valore di configurazione
2.4.8 e versioni precedenti, se supportato
Legacy
File system (predefinito)
Nessuna configurazione richiesta
2.4.8 e versioni precedenti, se supportato
Legacy
Redis
Magento\Framework\Cache\Backend\Redis
2.4.8 e versioni precedenti, se supportato
Legacy
Valkey
Magento\Framework\Cache\Backend\Valkey
2.4.9 e versioni successive, oltre ai backport supportati
Cache Symfony moderna
File system (predefinito)
file
2.4.9 e versioni successive, oltre ai backport supportati
Cache Symfony moderna
Valkey
valkey

Per informazioni esatte sul supporto a livello di patch, vedere Requisiti di sistema.

NOTE
L'implementazione moderna accetta il nome del tipo redis, ma Redis non è un servizio cache ufficialmente supportato in cui è richiesto Valkey. Utilizza invece valkey.

Esempi legacy di back-end basati su Zend

Per le distribuzioni locali, negli esempi seguenti vengono configurati i back-end della cache diretta in <Commerce-install-dir>/app/etc/env.php. Non abilitano il caching L2. Non utilizzare questi esempi per le distribuzioni Adobe Commerce on Cloud, che utilizzano il pacchetto ece-tools per generare la configurazione app/etc/env.php risultante durante la distribuzione.

Redis back-end legacy

Utilizza il nome completo della classe Redis solo nelle versioni in cui è supportato Redis:

code language-php?start_inline=1
'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'database' => '0',
                'port' => '6379',
            ],
        ],
    ],
],
Valkey back-end legacy

Utilizza il nome completo della classe Valkey nelle versioni che supportano il back-end Valkey legacy:

code language-php?start_inline=1
'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'Magento\\Framework\\Cache\\Backend\\Valkey',
            'backend_options' => [
                'server' => '127.0.0.1',
                'database' => '0',
                'port' => '6379',
            ],
        ],
    ],
],

Backend moderno della cache di Symfony

Il back-end diretto predefinito è il file system. Per utilizzare Valkey con l’implementazione moderna, utilizzare il tipo di back-end valkey semplificato.

L’esempio di configurazione seguente è corretto per Adobe Commerce 2.4.9 e versioni successive e per i backport supportati in cui è supportato Valkey, quando si configura il caching diretto predefinito con la moderna implementazione della cache di Symfony.

'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'valkey',
            'backend_options' => [
                'server' => '127.0.0.1',
                'database' => '0',
                'port' => '6379',
            ],
        ],
    ],
],
TIP
L’implementazione della cache di Symfony supporta funzioni di prestazioni facoltative quali serializzazione binaria, compressione, script Lua e connessioni persistenti. Per ulteriori dettagli, vedere Configurare Valkey per Default e Page Cache.

Implementazioni cache L2

Il caching L2 (a due livelli) aggiunge un livello di cache locale su ciascun nodo web davanti allo storage della cache remota condivisa, riducendo il traffico di rete tra Commerce e la cache remota.

Versione Commerce
Implementazione L2
Back-end remoto
Prima della versione 2.4.9, se supportato
CacheSincronizzataRemota
Redis o Valkey, a seconda della versione di Commerce e della matrice di supporto a livello di patch
2.4.9 e versioni successive
symfony_l2
Valkey

Per la configurazione locale, vedere Configurazione cache L2.

Per i progetti Cloud, configura il caching L2 tramite le variabili di distribuzione descritte in Distribuisci variabili.

Configurazione cache L2

  • Per i dettagli della configurazione di Adobe Commerce on-premises, vedere Configurazione cache L2.

  • Per Adobe Commerce on Cloud, configurare il caching L2 tramite la variabile di distribuzione appropriata anziché modificare direttamente app/etc/env.php. Consulta Distribuire le variabili nella documentazione di Adobe Commerce on Cloud.

recommendation-more-help
commerce-operations-help-configuration