Adobe Commerce: consultas MySQL presas no estado "Aguardando certificação" causam problemas de desempenho
O estado Aguardando Certificação em MySQL faz parte do processo de confirmação de duas fases usado em clusters baseados em Galera que habilita o Adobe Commerce. Esse mecanismo garante que não haja conflitos no banco de dados sempre que uma transação for enviada. Embora breves aparências desse estado sejam normais, durações prolongadas indicam gargalos de desempenho. Esses atrasos podem ser causados por consultas de longa execução, alta disputa ou problemas de infraestrutura.
Para corrigir isso, analise consultas lentas, gerencie a liberação de cache, implemente recomendações de SWAT e otimize as estatísticas do banco de dados.
Descrição description
Ambiente
- Produto: Adobe Commerce
- Tipo de cluster de banco de dados: MySQL baseado em Galera
Problema/Sintomas
Degradação de desempenho causada por um grande número de consultas MySQL presas no estado Aguardando Certificação. Os sintomas incluem:
- Visibilidade do produto atrasada no carrinho.
- Execução lenta da consulta.
- Arquivos de log de consulta lentos grandes.
- As liberações de cache coincidem com os tempos de pico de uso.
Resolução resolution
Para resolver o problema:
-
Revise os logs de consulta lenta do MySQL para identificar consultas de longa execução. Se o tamanho do arquivo de registro aumentar para centenas de megabytes, isso indica um problema sério. Otimize quaisquer consultas problemáticas para reduzir gargalos e melhorar o desempenho geral. Consulte Verificando consultas e processos lentos MySQL na documentação da Base de Dados de Conhecimento da Commerce para obter mais detalhes.
-
Programar a liberação do cache durante horários que não sejam de pico, como tarde da noite ou manhã cedo. Isso ajuda a evitar o aumento da carga do sistema durante períodos de alta demanda e impede a degradação do desempenho. Consulte Gerenciar a documentação do cache no Guia de Configuração do Commerce para obter mais detalhes.
-
Implementar recomendações do relatório SWAT. Isso pode incluir a adição de chaves primárias ausentes nas tabelas e a minimização do uso de acionadores, que podem reduzir a contenção e melhorar a velocidade da certificação. Saiba mais sobre a Ferramenta de Análise do Site na documentação das Ferramentas do Commerce.
-
Observação: esta operação pode bloquear temporariamente tabelas. Execute-o fora do horário comercial e verifique se os trabalhos cron estão desativados para evitar interrupções.
Execute
mysqlcheckcom análise de tabela para garantir que as estatísticas do banco de dados estejam atualizadas:code language-none mysqlcheck -h<host_name> -u<user_name> -p -a <db_name> -
Verifique se as estatísticas da tabela estão atualizadas. Estatísticas desatualizadas podem levar a planos de execução de consulta ineficientes, o que, por sua vez, reduz o desempenho no cluster.