Os arquivos do cache do Dispatcher são atualizados inesperadamente | AEM

Procure um padrão coletando os logs sobre as solicitações de invalidação de cache e as solicitações de conteúdo. Verifique os 3 cenários diferentes na seção Resolução.

Descrição description

Ambiente

Adobe Experience Manager (AEM)

Problema

Às vezes, os arquivos do Dispatcher armazenados em cache são atualizados em um momento inesperado ou com frequência imprevista.

Resolução resolution

Após a publicação do conteúdo, o Adobe Experience Manager (AEM) envia uma solicitação de invalidação de cache (GET /dispatcher/invalidate.cache) ao Dispatcher. Depois disso, quando uma solicitação de conteúdo chegar à Dispatcher, ela atualizará seus arquivos armazenados em cache.

Com base nesse comportamento, procure por um padrão coletando os logs sobre as solicitações de invalidação de cache e as solicitações de conteúdo.

Exemplo de logs para uma solicitação de invalidação:
Dispatcher - log_acesso

127.0.0.1 - - [ 07/Jun/2022:13:44:35 +0900]  "GET /dispatcher/invalidate.cache HTTP/1.1" 200 13 "about:blank" "Jakarta Commons-HttpClient/3.1"

Dispatcher - dispatcher.log

[ 07/Jun/2022:13:44:35 +0900]  "GET /dispatcher/invalidate.cache HTTP/1.1" 200 purge [ publish/-]  0ms

Publish - error.log

07.06.2022 13:44:35.750 *INFO* [ sling-threadpool-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-(apache-sling-job-thread-pool)-1-com_day_cq_replication_job_flush(com/day/cq/replication/job/flush)]  com.day.cq.replication.Agent.flush Sending GET request to http://localhost:80/dispatcher/invalidate.cache
...
07.06.2022 13:44:35.758 *INFO* [ sling-threadpool-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-(apache-sling-job-thread-pool)-1-com_day_cq_replication_job_flush(com/day/cq/replication/job/flush)]  com.day.cq.replication.Agent.flush Replication (ACTIVATE) of /content/xx-xxxxxx/us/en/products successful.

Causa

São casos típicos em que os arquivos armazenados em cache do Dispatcher são atualizados inesperadamente.


Caso 1 - Atualizações frequentes do cache para conteúdos inesperados

Os arquivos armazenados em cache são atualizados com frequência, mas o conteúdo atualizado não é o destino da solicitação de invalidação de cache.

Nesse caso, o valor de /statfileslevel na configuração do Dispatcher pode ser muito baixo. Observe que, ao comentar /statfileslevel no dispatcher.any, significa "0" para esse valor.

Quando tiver /statfileslevel "0" e publicar conteúdo, todos os arquivos armazenados em cache serão invalidados independentemente dos caminhos. O link no Guia Dispatcher do AEM abaixo descreve os detalhes:

Configuração do Dispatcher - Invalidando Arquivos por Nível de Pasta


Caso 2 - Solicitações de invalidação de cache de um cliente indesejado

A configuração do Dispatcher pode não ter uma restrição apropriada para solicitações de invalidação de cache. Verificar /allowedClients em dispatcher.any.


Caso 3 - Nenhuma solicitação de invalidação de cache

A configuração do Dispatcher pode usar a invalidação do cache com base no tempo. Neste caso, /enableTTL "1" deve existir em dispatcher.any.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f