Durante um processo de troubleshooting e tuning em um ambiente WordPress auto-hospedado, tive a oportunidade de aplicar ajustes de desempenho que resultaram em ganhos expressivos de tempo de carregamento, redução de uso de memória e queda drástica nas consultas ao banco de dados.
Neste post, compartilho os dados comparativos antes e depois dos ajustes nos pools dinâmicos do PHP-FPM e a ativação de cache de objetos com Redis.
Cenário Inicial
O ambiente era um WordPress migrado para um VPS com NGINX + PHP-FPM + MariaDB. O plugin Query Monitor foi utilizado para medir desempenho nas páginas do painel.
Dashboard WP – Antes dos ajustes:
- Tempo de geração da página: 1,3350s
- Memória: 66,1 MB
- Total de queries: 85
Etapa 1: Ajuste de Pools Dinâmicos (PHP-FPM)
Ajustei os valores de configuração do PHP-FPM, trocando de pm = ondemand
para pm = dynamic
com valores mais equilibrados para nosso workload:
pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 5
Resultados:
- Tempo caiu para 1,2431s
- Memória levemente reduzida para 64,7 MB
- Queries: 87 (estável)
Insight: Apesar do tempo de resposta ter caído pouco, houve mais controle no uso de memória. Ainda assim, o gargalo de performance seguia no banco de dados.
Etapa 2: Ativação do Redis como Cache de Objetos
Instalei o Redis no servidor e ativei o plugin Redis Object Cache no WordPress.
Resultados após o Redis:
- Tempo de geração da página: 0,3982s
- Memória: 12,4 MB
- Total de queries: 12
- Cache hit ratio: 96,0%
Comparativo final: Dashboard WP
- Tempo de geração:
Antes dos Pools: 1,3350s
Após Pools: 1,2431s
Após Redis: 0,3982s
→ Redução total: -70,2%
- Memória:
Antes: 66,1 MB → Após Redis: 12,4 MB
→ Redução total: -81%
- Total de queries:
Antes: 85 → Após Redis: 12
→ Redução total: -86%
Conclusão
Esse processo mostrou claramente a importância de:
- Ajustar corretamente os pools do PHP-FPM para o perfil de carga.
- Utilizar cache de objetos persistente, especialmente em WordPress com painel e plugins pesados.
As mudanças não exigiram refatoração de código nem migração de infraestrutura — apenas boas práticas de configuração e cache.
Dica final
Se você está enfrentando lentidão no seu WordPress, verifique:
- Como está o uso de memória por processo PHP?
- O banco de dados está sendo sobrecarregado com queries repetidas?
- O Redis pode ser integrado como cache de objetos?
Esses passos podem te ajudar a alcançar ganhos parecidos com os que tive.
Top comments (0)