O que é o OPcache?
O OPcache é um sistema de cache de bytecode embutido no PHP que melhora significativamente o desempenho de aplicações web como o WordPress. Ele funciona armazenando em memória o resultado da compilação dos scripts PHP, evitando que o PHP precise recompilar os mesmos arquivos a cada requisição.
Neste guia, você vai aprender como o OPcache impacta diretamente no carregamento do seu site WordPress, quais configurações são ideais para ambientes de produção e desenvolvimento, e como evitar erros comuns.
Como o OPcache funciona no PHP e no WordPress
O OPcache intercepta os scripts PHP no momento da primeira execução, compila-os em bytecode e os armazena em memória compartilhada. Nas próximas execuções, esse bytecode é reutilizado diretamente, sem a necessidade de nova compilação.
Diferença entre OPcache e cache de página
Enquanto o cache de página (como FastCGI, Redis ou plugins como WP-Rocket) armazena o HTML final gerado, o OPcache atua antes disso, otimizando a execução do código PHP.
Benefícios do OPcache no WordPress
Utilizar o OPcache no seu site WordPress traz diversos ganhos:
- ✅ Melhoria no tempo de carregamento: scripts PHP são processados mais rapidamente.
- ✅ Redução do uso de CPU: economiza recursos do servidor.
- ✅ Melhor performance com muitos plugins/temas: ideal para sites complexos.
- ✅ Impacto positivo no SEO: melhora o TTFB (Time to First Byte), contribuindo para boas notas no Google PageSpeed.
Problemas comuns ao usar o OPcache
Apesar das vantagens, o OPcache mal configurado pode causar problemas, principalmente em ambientes com deploys frequentes ou em desenvolvimento:
- ⚠️ Alterações no código não refletem: causado por
opcache.validate_timestamps=0
. - ⚠️ Falta de memória no cache:
opcache.memory_consumption
insuficiente gera erros. - ⚠️ Limite baixo de arquivos acelerados:
opcache.max_accelerated_files
não cobre todos os scripts. - ⚠️ Deploys automáticos mantêm scripts antigos em memória.
- ⚠️ Ambientes de desenvolvimento “bugados”: alterações no código parecem não funcionar até o cache ser limpo.
Configurações recomendadas do OPcache para WordPress
✅ Ambiente de produção
opcache.enable=1
opcache.validate_timestamps=0
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60
✅ Ambiente de desenvolvimento
opcache.enable=1
opcache.validate_timestamps=1
opcache.revalidate_freq=2
Essas configurações equilibram desempenho com estabilidade para cada cenário.
Como configurar o OPcache no WordPress
Embora o WordPress não exija nenhuma configuração especial para utilizar o OPcache, é fundamental garantir que o servidor esteja corretamente ajustado para tirar o máximo proveito.
Passo 1: Verifique se o OPcache está habilitado no PHP
Use o seguinte comando no terminal:
php -i | grep opcache.enable
Se retornar opcache.enable => On
, ele já está ativo.
Passo 2: Edite o arquivo php.ini
usado pelo seu servidor web
Em servidores com Apache ou NGINX, esse arquivo geralmente fica em:
/etc/php/8.x/fpm/php.ini (para PHP-FPM)
/etc/php/8.x/apache2/php.ini (para Apache)
Adicione ou ajuste as diretivas conforme a seção anterior.
Passo 3: Reinicie o serviço PHP
Após alterar o php.ini
, reinicie o PHP-FPM:
sudo systemctl restart php8.x-fpm
Ou reinicie o Apache, se for o caso:
sudo systemctl restart apache2
Passo 4: Teste o funcionamento com um arquivo phpinfo()
Crie um arquivo phpinfo.php
com:
<?php phpinfo(); ?>
E acesse via navegador para verificar se o OPcache está listado e ativo.
Passo 5: Use plugin de monitoramento (opcional)
Para facilitar o acompanhamento do OPcache em tempo real, instale o painel gráfico OPcache GUI no seu ambiente WordPress.
Como verificar se o OPcache está funcionando
Você pode verificar o status do OPcache no seu servidor PHP das seguintes formas:
- 📄 Criando um arquivo
phpinfo.php
com:
<?php phpinfo(); ?>
- 📈 Usando o painel OPcache GUI
- 🔍 Pelo terminal:
php -i | grep opcache
Como limpar o cache do OPcache (reset)
💻 Via terminal:
php -r 'opcache_reset();'
📜 Via script PHP:
<?php opcache_reset(); ?>
🔁 Automatize após o deploy
Adicione esse comando no seu script de CI/CD ou pós-deploy para garantir que o cache seja limpo sempre que houver atualização de código.
Conclusão
O OPcache é uma das formas mais eficazes de otimizar o desempenho de um site WordPress sem alterar nenhuma linha de código da aplicação. Quando bem configurado, ele reduz drasticamente o consumo de CPU, melhora o tempo de resposta do servidor e contribui diretamente para uma experiência mais rápida para o visitante.
Por outro lado, é essencial entender seus limites e comportamentos para evitar problemas com deploys e desenvolvimento. Configurado com consciência, o OPcache é um aliado poderoso para qualquer projeto WordPress de alto desempenho.