Loading
Introdução ao B2C Commerce
Cache de páginas e replicação no B2C Commerce

Cache de páginas e replicação no B2C Commerce

A replicação de dados e de código tem implicações de cache de página. Determinadas tarefas de replicação invalidam e atualizam automaticamente o cache. Há outros momentos em que você limpa o cache manualmente.

Para acessar o cache, clique no Iniciador de aplicativos Iniciador de aplicativos e selecione Administração | Sites | Gerenciar sites | nome do site | Cache.

Nota
Nota Em geral, o Salesforce B2C Commerce limpa automaticamente o cache de página apenas quando for necessário.

Comportamento de limpeza do cache

Quando a replicação de dados ou código é executada, uma invalidação de cache de site é iniciada automaticamente. Quando você inicia uma invalidação de cache manualmente, o sistema inicia um processo de invalidação de dados armazenados em cache. Para reduzir o impacto no desempenho e minimizar possíveis interrupções, a remoção do cache é concluída em um período de 15 minutos (chamado aqui de "Período de limpeza").

Importante
Importante Acionar repetidamente a invalidação de cache dentro desse "Período de limpeza" interfere na remoção completa do cache. Pedidos frequentes de invalidação não aceleram a remoção como esperado, mas podem realmente impedir que ela seja invalidada em sua totalidade. Apesar de várias tentativas de limpar o cache, o site pode reter dados desatualizados, já que cada tentativa de limpeza redefine o "Período de limpeza".

Tipos de invalidação de cache que usam esse processo:

  • Invalidação de cache (Todo o site e/ou Partição) via Business Manager | Iniciador de aplicativos | Administração | Sites | Gerenciar sites | Cache
  • Tarefas que acionam uma invalidação de cache de página

Práticas recomendadas

  • Execute a invalidação de cache somente quando necessário.
  • Após iniciar uma solicitação de invalidação de cache, permita que o "Período de limpeza" transcorra para que o sistema conclua o processo de remoção.
  • Para casos de uso que exigem atualizações frequentes no site, por exemplo: alterações frequentes de preço, considere o uso de Replicações granulares em vez da replicação de dados para evitar esperar pelo “Período de limpeza" e pela atualização do site.
  • Se você estiver realizando invalidação de cache frequente devido a dados obsoletos, investigue a causa raiz dos dados obsoletos para evitar solicitar a invalidação repetida do cache.
  • Para solucionar problemas de um site que atenda a dados em cache obsoletos, revise as tarefas agendadas em Business Manager que podem frequentemente desencadear a invalidação de cache ou a invalidação de partição de cache.

Para saber mais, consulte:

Replicação de código

A última etapa do processo de replicação de código da Staging à Production limpa automaticamente o cache. Se você implementar diretamente alterações de código ou página na produção (não recomendado), limpe manualmente o cache.

Nota
Nota Se você fizer upload direto de código, limpe manualmente o cache independentemente da instância (production, development ou staging) para a qual o código for carregado.

Replicação de dados

A última etapa do processo de replicação de dados invalida e atualiza automaticamente o cache por padrão, exceto em determinados casos conforme descrito aqui.

Configure um processo de replicação para ignorar a limpeza automática do cache. No entanto, use este recurso com cuidado, porque ele pode levar à inconsistência dos dados na loja (virtual), cuja causa pode ser difícil de diagnosticar. Certifique-se de entender bem o escopo das alterações que você está replicando e faça o mínimo possível.

Por exemplo, considere o seguinte cenário. Suas páginas de descrição de produto ficam em cache por 24 horas e o cache de página está planificado para ser limpo na noite seguinte. Você percebe que vários preços de produtos estão incorretos na instância de Production. Primeiro, você corrige os preços no Business Manager na instância de Staging. Em seguida, você replica as alterações na instância de Production usando o processo de replicação configurado para pular a limpeza de cache de páginas. Esse processo mantém suas informações de preço em sincronia em ambas as instâncias e garante que os preços corretos dos produtos sejam exibidos nos carrinhos (que nunca são armazenados em cache).

Ignorar a atualização automática de cache também significa que as páginas de descrição de produtos na loja (virtual) exibem os preços antigos e incorretos até que ocorra a limpeza programada do cache de página. No entanto, essa “perda e ganho” também evita a perda de desempenho ocasionada por uma atualização de cache em Production.

  • Quando você replica dados específicos do site, o B2C Commerce limpa o cache de página do site afetado. Essa limpeza automática de cache não ocorre quando você replica somente cupons, códigos-fonte, configurações da Open Commerce API ou feeds de dados ativos.
  • Quando você replica dados globais, o B2C Commerce limpa o cache de página de todos os sites afetados, a menos que você só replique geolocalizações ou listas de clientes.
  • Quando você replica catálogos, sites ou listas de preços, o cache é limpo automaticamente. Quando você replica somente promoções ou conteúdo estático, o cache não é limpo automaticamente.
  • Quando você replica catálogos, o B2C Commerce limpa seletivamente o cache de página dos sites afetados, usando as regras descritas na seguinte tabela.
Catálogos replicados Sites onde o cache de página é limpo
Todos os catálogos de todos os sites de uma organização Todos os sites de lojas (virtuais) desta organização
Um só catálogo que é atribuído a um ou mais sites Os sites aos quais o catálogo é atribuído.
Um catálogo principal que não esteja atribuído diretamente a um site, mas serve como um repositório de produtos para um ou mais sites ou catálogos de navegação Os sites, conforme determinado programaticamente, de lojas (virtuais) que oferecem produtos do catálogo principal. Os caches de páginas de sites de lojas (virtuais) não relacionadas não são limpos.

Além disso, configure um processo de replicação para invalidar somente as partições de cache de página que tenham tarefas de replicação atribuídas que correspondam às tarefas de replicação escolhidas para o processo de replicação. O resto do cache da página da loja (virtual) permanece inalterado. Uma lista de partições de cache de página afetadas é exibida na página de resumo do processo de replicação.

Para habilitar essa opção:

  • Defina quaisquer partições de cache de página na instância de staging.
  • Mantenha todas as partições de cache de página de todos os sites sincronizadas na instância de Staging e na instância de destino (Development ou Production) para a qual os dados serão replicados.

Use a tarefa de replicação “Configurações de cache” em cada site e execute uma replicação de dados para sincronizar as partições de cache de página caso não estejam sincronizadas.

O gerenciamento das partições de cache agora permite a atribuição de tarefas de replicação para partições individuais de cache de página.

Por exemplo, uma partição de cache relacionada a páginas com conteúdo específico (slots de conteúdo ou materiais de conteúdo) pode obter tarefas de replicação atribuídas para bibliotecas compartilhadas específicas, a biblioteca de conteúdo do site e para os slots de conteúdo.

Solução de problemas na limpeza do cache

Se você tiver problemas com o cache de página, veja as seguintes dicas.

  • Antes de limpar manualmente o cache em Business Manager, certifique-se sempre de que o problema não seja local. Feche o navegador e limpe o cache local para verificar.
  • Para limpar manualmente o cache no CDN integrado (todos os ambientes de Production e Development), clique em Invalidar ao lado de Todo o cache de página para a descrição do site. Você não precisa limpar também o cache estático.
  • Se você não observar uma alteração esperada, procure um padrão que possa indicar um problema mais específico. Por exemplo, as imagens não estão atualizando? Nesse caso, o provedor de imagens, como o Scene 7, pode ter um problema. Se um material de conteúdo estiver causando um problema, assegure-se de que tenha sido implementado.
 
Carregando
Salesforce Help | Article