Um usuário perguntou ?
Olá a todos,
Estamos usando este plug-in como uma solução de trabalho para armazenar em cache grandes endpoints de API incorporados em um aplicativo móvel. Como temos muitos usuários com endpoints/parâmetros personalizados, coletamos muitas entradas de endpoint em um cache que é invalidado quando uma postagem é atualizada. Mas mesmo no estado “inválido” eles desordenam o banco de dados e estou me perguntando se existe uma maneira de excluir rapidamente > 70.000 entradas sem excluí-las em massa em grupos de 500.
Se eu remover as entradas na tabela wp_wrc_caches, isso é suficiente? Obrigado por uma resposta rápida e tenha um bom dia.
Flo,
(@rockfire)
1 ano, 3 meses atrás
Olá @workforpizza
Existem duas opções para removê-los todos:
1. Você pode excluí-los programaticamente, usando o delete_cache_by_endpoint(...)
função (veja nosso post neste tópico, para mais detalhes sobre como usá-lo). Se você definir o terceiro parâmetro para true
excluirá todos os registros. No entanto, observe que a execução dessa função não os removerá imediatamente, mas solicitará um trabalho cron de 5 minutos para removê-los a partir de agora (isso é por motivos de desempenho).
2. Sim, como você sugeriu, você pode remover as entradas do wp_wrc_caches
tabela, mas observe o seguinte: – Você deve incluir as entradas relacionadas no wp_wrc_relations
escrivaninha. – Se as entradas forem movidas antes que os caches sejam liberados, haverá junções órfãs. O plug-in não poderá mais remover junções. No entanto, essas junções não serão mais usadas, portanto, eventualmente, expirarão.
lançador de tópicos
(@workparapizza)
1 ano, 3 meses atrás
Obrigado pela resposta rápida. Então isso significa que se eu limpar as duas coisas completamente wp_wrc_caches
e wp_wrc_relations
– Devo começar de novo? Ou há uma entrada que eu não deveria excluir?
(@rockfire)
1 ano, 3 meses atrás
Sim, se você clicar primeiro em “Limpar Cache REST” e depois limpar completamente as duas tabelas, estará de volta a um novo começo.
lançador de tópicos
(@workparapizza)
1 ano, 3 meses atrás
Ok, eu acho que ele vai agora. É muito estranho – não existe um cronjob que remove todas as entradas de cache inválidas de tempos em tempos ou o cronjob no meu site não está funcionando?
Esta resposta foi modificada há 1 ano e 3 meses. Razão: ortografia
(@rockfire)
1 ano, 3 meses atrás
Olá @workforpizza
Ao remover entradas de cache inválidas, as entradas no wp_wrc_caches
a tabela é mantida para manter as estatísticas vivas (nr acertos de cache). O depósito em si e a relação wp_wrc_relations
removido.
Já que você está perguntando: posso perguntar o tamanho do seu wp_wrc_caches
a mesa era agora? Talvez devêssemos reconsiderar a exclusão de mais dados…
lançador de tópicos
(@workparapizza)
1 ano, 3 meses atrás
Estamos sentados no wp_wrc_caches
cerca de 24 MB, nada surpreendente comparado ao wp_post
ou wp_post_meta
. wrc_relactions
com apenas 3,4 MB. Simplesmente não era prático, porque depois de salvar um trabalho, parece verificar se todas as mais de 70 mil entradas são invalidadas. (Graças a uma das atualizações, a longa carga no correio é salva, mas leva muito tempo para limpar os caches). Mesmo clique em “Limpar cache” – o botão manualmente está em execução por cerca de 1,5 horas e mostra 14%.
Eu realmente apreciaria uma opção para armazenar as entradas atualmente ativas/válidas, a menos que alguém (como nós) precise do nr. metas.
Provavelmente é incomum ter tamanhos tão grandes, então se eu puder ajudar com mais alguma coisa, por favor me avise 🙂
Esta resposta foi modificada há 1 ano e 3 meses.
(@rockfire)
1 ano, 3 meses atrás
Uau, você deixou seu ponto claro ?
Vou adicioná-lo à nossa lista de tarefas para que seja opcional remover automaticamente as entradas inativas.
lançador de tópicos
(@workparapizza)
1 ano, 3 meses atrás
Muito obrigado! Terei prazer em informá-lo quando estiver vivo. Hora de deixar uma classificação de 5 estrelas para este grande suporte!
Isto foi útil?
0 / 0