Configurar o serviço Redis
Redis é uma solução de cache back-end opcional que substitui o Zend Framework Zend_Cache_Backend_File, que a Adobe Commerce usa por padrão.
Use as instruções a seguir para a configuração do serviço em ambientes Pro Integration e Starter, incluindo a ramificação master.
Ativar Redis
Para habilitar o Redis, atualize os seguintes arquivos:
.magento/services.yaml.magento.app.yaml
Configurar o serviço
Em .magento/services.yaml, adicione a definição do serviço Redis. Substitua <version> por uma versão Redis com suporte pela sua versão do Adobe Commerce e pelo modelo atual da Nuvem.
cache:
type: redis:<version>
Por exemplo, para uma versão do Commerce e um modelo da nuvem compatíveis com Redis 7.2:
cache:
type: redis:7.2
A versão de exemplo não é universal. As versões de serviço padrão e compatíveis reais dependem da versão do Adobe Commerce, do nível de patch e do modelo atual do Cloud. Verifique a combinação com suporte em Requisitos do Sistema e o modelo de projeto atual.
Configurar o relacionamento de serviço
Em .magento.app.yaml, configure a relação entre o aplicativo e o serviço Redis:
runtime:
extensions:
- redis
relationships:
redis: "cache:redis"
A chave de relação redis é o nome usado pelo aplicativo para acessar o serviço. O valor cache:redis consiste na ID de serviço (cache) e no tipo de serviço (redis) definidos em .magento/services.yaml.
Confirmar e implantar as alterações
Adicionar, confirmar e enviar as alterações de configuração:
git add .magento/services.yaml .magento.app.yaml
git commit -m "Enable Redis service"
git push origin <branch-name>
Depois que a implantação for concluída, verifique se o relacionamento do serviço Redis está disponível.
services.yaml e .magento.app.yaml. Consulte Alterar versão de serviço para obter orientação sobre como atualizar ou rebaixar um serviço. Este método de autoatendimento não se aplica a ambientes de Preparo ou Produção Pro — consulte Suporte a serviços Pro em Configurar serviços.Verificar o relacionamento de serviço
Após implantar a configuração, execute o seguinte comando em um contêiner de aplicativo para exibir o objeto MAGENTO_CLOUD_RELATIONSHIPS decodificado:
Use o SSH para se conectar ao ambiente de nuvem remoto e execute:
echo "$MAGENTO_CLOUD_RELATIONSHIPS" | base64 -d | json_pp
O comando exibe todos os relacionamentos de serviço configurados. Localize a relação redis para identificar os detalhes da conexão Redis.
O exemplo abreviado a seguir mostra a relação redis. Não é um esquema universal.
{
"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"
}
]
}
A saída varia de acordo com a configuração do ambiente e do serviço. Não codifique nomes de host, portas, endereços IP, nomes de cluster, versões de serviço, nomes de usuário ou senhas deste exemplo. Use os valores retornados por MAGENTO_CLOUD_RELATIONSHIPS no ambiente de destino.
Se jq estiver disponível, use o seguinte comando para exibir somente a relação Redis:
printf '%s' "$MAGENTO_CLOUD_RELATIONSHIPS" \
| base64 -d \
| jq '{redis: .redis}'
Para obter mais informações sobre relações de serviço, consulte Configurar serviços.
Personalizar a configuração Redis
Para obter recomendações de cache, sessão, L2 e conexão de réplica, consulte Práticas recomendadas para a configuração do serviço Valkey e Redis no Guia de Práticas Recomendadas do Manual de Implementação.
Usando a CLI Redis
Supondo que sua relação com Redis tenha o nome redis, use o host e a porta retornados por MAGENTO_CLOUD_RELATIONSHIPS para se conectar ao Redis.
Conecte-se ao ambiente com o Redis instalado e configurado e execute o seguinte comando:
redis-cli -h <host> -p <port>
Exemplo
redis-cli -h redis.internal -p 6379
Obtenha a versão instalada do Redis
Em um ambiente de Integração, use o host e a porta retornados pela relação redis para executar:
| code language-terminal |
|---|
|
Exemplo de resposta
| code language-text |
|---|
|
A versão e os detalhes da build variam de acordo com o ambiente. Não trate uma versão de exemplo exibida como uma versão obrigatória ou de serviço universal.
Em ambientes de preparo e produção profissionais, execute:
| code language-terminal |
|---|
|
Exemplo de resposta
| code language-text |
|---|
|
A versão e os detalhes da build variam de acordo com o ambiente. Não trate uma versão de exemplo exibida como uma versão obrigatória ou de serviço universal.
Solução de problemas do Redis
Consulte os seguintes artigos de suporte da Adobe Commerce para obter ajuda com a solução de problemas Redis:
Erros de limpeza de cache fazem referência a Redis em um cache configurado pelo Valkey
Uma falha na limpeza do cache de pré-implantação pode exibir o código de erro [107] (clean-redis-cache) e uma mensagem Connection to Redis mesmo quando o serviço cache está configurado como Valkey. ece-tools usa este código de erro orientado por Redis herdado e a mensagem para a etapa de limpeza de cache, independentemente de qual serviço oferece suporte à relação cache, portanto, o texto não indica que o Redis está instalado.
Se o erro subjacente for uma falha de DNS, como Name or service not known, para o host de relação, a etapa de implantação foi executada antes de a relação de serviço estar disponível, ou o nome da relação em .magento.app.yaml não corresponde à ID de serviço em .magento/services.yaml. Consulte Verificar a relação de serviço.