Configurazione del servizio Redis
Redis è una soluzione cache back-end facoltativa che sostituisce Zend Framework Zend_Cache_Backend_File, utilizzata da Adobe Commerce per impostazione predefinita.
Utilizzare le istruzioni seguenti per la configurazione del servizio negli ambienti di integrazione Pro e negli ambienti Starter, incluso il ramo master.
Abilita Redis
Per abilitare Redis, aggiornare i seguenti file:
.magento/services.yaml.magento.app.yaml
Configurare il servizio
In .magento/services.yaml, aggiungere la definizione del servizio Redis. Sostituisci <version> con una versione di Redis supportata dalla tua versione di Adobe Commerce e dal modello Cloud corrente.
cache:
type: redis:<version>
Ad esempio, per una versione di Commerce e un modello Cloud che supporta Redis 7.2:
cache:
type: redis:7.2
La versione di esempio non è universale. Le versioni predefinite e supportate effettive dipendono dalla versione di Adobe Commerce, dal livello di patch e dal modello Cloud corrente. Verificare la combinazione supportata in Requisiti di sistema e nel modello di progetto corrente.
Configurare la relazione di servizio
In .magento.app.yaml configurare la relazione tra l’applicazione e il servizio Redis:
runtime:
extensions:
- redis
relationships:
redis: "cache:redis"
La chiave di relazione redis è il nome utilizzato dall’applicazione per accedere al servizio. Il valore cache:redis è costituito dall’ID servizio (cache) e dal tipo di servizio (redis) definiti in .magento/services.yaml.
Eseguire il commit e distribuire le modifiche
Aggiungi, esegui il commit e invia le modifiche di configurazione:
git add .magento/services.yaml .magento.app.yaml
git commit -m "Enable Redis service"
git push origin <branch-name>
Al termine della distribuzione, verificare che la relazione del servizio Redis sia disponibile.
services.yaml e .magento.app.yaml. Per informazioni sull'aggiornamento o il downgrade di un servizio, vedere Modifica versione del servizio. Questo metodo self-service non è applicabile agli ambienti Pro Staging o Production. Vedere Supporto servizi Pro in Configurazione servizi.Verifica la relazione di servizio
Dopo aver distribuito la configurazione, eseguire il comando seguente da un contenitore di applicazioni per visualizzare l’oggetto MAGENTO_CLOUD_RELATIONSHIPS decodificato:
Utilizza SSH per connettersi all’ambiente cloud remoto, quindi esegui:
echo "$MAGENTO_CLOUD_RELATIONSHIPS" | base64 -d | json_pp
Il comando visualizza tutte le relazioni di servizio configurate. Individuare la relazione redis per identificare i dettagli della connessione Redis.
L’esempio abbreviato seguente mostra la relazione redis. Non è uno schema universale.
{
"database" : [
{
"host" : "database.internal",
"port" : 3306,
"path" : "main",
"scheme" : "mysql"
}
],
"opensearch" : [
{
"host" : "opensearch.internal",
"port" : 9200,
"path" : null,
"scheme" : "http"
}
],
"redis" : [
{
"host" : "redis.internal",
"port" : 6379,
"path" : null,
"scheme" : "redis"
}
]
}
L’output varia in base all’ambiente e alla configurazione del servizio. Non inserire nel codice rigido nomi host, porte, indirizzi IP, nomi di cluster, versioni di servizi, nomi utente o password di questo esempio. Utilizzare i valori restituiti da MAGENTO_CLOUD_RELATIONSHIPS nell’ambiente di destinazione.
Se jq è disponibile, utilizzare il comando seguente per visualizzare solo la relazione Redis:
printf '%s' "$MAGENTO_CLOUD_RELATIONSHIPS" \
| base64 -d \
| jq '{redis: .redis}'
Per ulteriori informazioni sulle relazioni tra i servizi, vedere Configurare i servizi.
Personalizzare la configurazione Redis
Per i consigli relativi a cache, sessione, L2 e connessione di replica, vedere Best practice per la configurazione del servizio Valkey e Redis nella Guida alle best practice per l’implementazione della playbook.
Utilizzo di Redis CLI
Se la relazione Redis si chiama redis, utilizzare l’host e la porta restituiti da MAGENTO_CLOUD_RELATIONSHIPS per connettersi a Redis.
Connettersi all’ambiente con Redis installato e configurato ed eseguire il comando seguente:
redis-cli -h <host> -p <port>
Esempio
redis-cli -h redis.internal -p 6379
Scarica la versione Redis installata
In un ambiente di integrazione, utilizzare l’host e la porta restituiti dalla relazione redis per eseguire:
| code language-terminal |
|---|
|
Risposta di esempio
| code language-text |
|---|
|
I dettagli della versione e della build variano a seconda dell’ambiente. Non trattare una versione di esempio visualizzata come una versione richiesta o di servizio universale.
Negli ambienti di staging e produzione Pro, eseguire:
| code language-terminal |
|---|
|
Risposta di esempio
| code language-text |
|---|
|
I dettagli della versione e della build variano a seconda dell’ambiente. Non trattare una versione di esempio visualizzata come una versione richiesta o di servizio universale.
Risoluzione dei problemi di Redis
Consulta i seguenti articoli sul supporto Adobe Commerce per assistenza nella risoluzione dei problemi Redis:
Gli errori di pulizia della cache fanno riferimento a Redis in una cache configurata con Valkey
Un errore di pulizia della cache pre-distribuzione può visualizzare il codice di errore [107] (clean-redis-cache) e un messaggio Connection to Redis anche quando il servizio cache è configurato come Valkey. ece-tools utilizza questo codice di errore e messaggio legacy orientato a Redis per il passaggio di pulizia della cache, indipendentemente dal servizio che supporta la relazione cache, pertanto il testo non indica che Redis è installato.
Se l’errore sottostante è un errore DNS, ad esempio Name or service not known per l’host di relazione, il passaggio di distribuzione è stato eseguito prima che la relazione di servizio fosse disponibile oppure il nome della relazione in .magento.app.yaml non corrisponde all’ID del servizio in .magento/services.yaml. Vedere Verificare la relazione del servizio.