Armazenamento em cache

Você pode ativar o armazenamento em cache no ambiente do projeto de infraestrutura em nuvem. Se você desativar o armazenamento em cache, o Adobe Commerce fornecerá os arquivos diretamente.

NOTE
Os exemplos de configuração de rota a seguir usam modelos de rota com espaços reservados. O espaço reservado {default} representa o domínio padrão configurado para o site. Se o seu projeto tiver vários domínios, use o espaço reservado {all} para configurar o roteamento para o domínio padrão e todos os aliases. Consulte Configurar rotas.

Configurar armazenamento em cache

Habilite o cache para o aplicativo configurando as regras de cache no arquivo .magento/routes.yaml da seguinte maneira:

http://{default}/:
    type: upstream
    upstream: php:php
    cache:
        enabled: true
        headers: [ "Accept", "Accept-Language", "X-Language-Locale" ]
        cookies: ["*"]
        default_ttl: 60

Armazenamento em cache com base em rotas

Habilite o cache refinado configurando regras de cache para várias rotas separadamente, como mostra o exemplo a seguir:

http://{default}/:
    type: upstream
    upstream: php:php
    cache:
        enabled: true

http://{default}/path/:
    type: upstream
    upstream: php:php
    cache:
        enabled: false

http://{default}/path/more/:
    type: upstream
    upstream: php:php
    cache:
        enabled: true

O exemplo anterior armazena em cache as seguintes rotas:

  • http://{default}/
  • http://{default}/path/more/
  • http://{default}/path/more/etc/

E as seguintes rotas estão não armazenadas em cache:

  • http://{default}/path/
  • http://{default}/path/etc/
NOTE
Expressões regulares em rotas não são suportadas.

Duração do cache

A duração do cache é determinada pelo valor do cabeçalho de resposta Cache-Control. Se nenhum cabeçalho Cache-Control estiver na resposta, a chave default_ttl será usada.

Chave do cache

Para decidir como armazenar uma resposta em cache, o Adobe Commerce cria uma chave de cache que depende de vários fatores e armazena a resposta associada a essa chave. Quando uma solicitação vem com a mesma chave de cache, a resposta é reutilizada. Sua finalidade é semelhante ao cabeçalho HTTP Vary.

As chaves de parâmetros headers e cookies permitem alterar essa chave de cache.

O valor padrão para essas chaves é o seguinte:

cache:
    enabled: true
    headers: ["Accept-Language", "Accept"]
    cookies: ["*"]

Atributos de cache

enabled

Quando definido como true, habilite o cache para esta rota. Quando definido como false, desabilite o cache para esta rota.

headers

Define de quais valores a chave do cache deve depender.

Por exemplo, se a chave headers for a seguinte:

cache:
    enabled: true
    headers: ["Accept"]

Em seguida, o Adobe Commerce armazena em cache uma resposta diferente para cada valor do cabeçalho HTTP Accept.

cookies

A chave cookies define de quais valores a chave de cache deve depender.

Por exemplo:

cache:
    enabled: true
    cookies: ["value"]

A chave do cache depende do valor do cookie value na solicitação.

Existe um caso especial se a chave cookies tiver o valor ["*"]. Esse valor significa que qualquer solicitação com um cookie ignora o cache. Este é o valor padrão.

NOTE
Não é possível usar curingas no nome do cookie. Use um nome de cookie preciso ou faça a correspondência de todos os cookies com um asterisco (*). Por exemplo, SESS* ou ~SESS atualmente são valores inválidos.

Os cookies têm as seguintes restrições:

  • Você pode definir no máximo 50 cookies no sistema. Caso contrário, o aplicativo acionará uma exceção Unable to send the cookie. Maximum number of cookies would be exceeded.
  • Um tamanho máximo de cookie é de 4096 bytes. Caso contrário, o aplicativo acionará uma exceção Unable to send the cookie. Size of '%name' is %size bytes.

default_ttl

Se a resposta não tiver um cabeçalho Cache-Control, a chave default_ttl será usada para definir a duração do cache, em segundos. O valor padrão é 0, o que significa que nada está armazenado em cache.

recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26