Alex Junio
Voltar para o Blog
WordPress

Como o OPcache Acelera o WordPress: Guia Completo de Otimização com Cache de Bytecode

admin

admin

Engenheiro Cloud & DevOps

Publicado em

07/04/2025

Compartilhe

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.
  • Servidor de desenvolvimento “bugados”: alterações no código parecem não funcionar até o cache ser limpo.

Configurações recomendadas do OPcache para WordPress

Servidor de produção

bash
opcache.enable=1
opcache.validate_timestamps=0
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=60

Servidor de desenvolvimento

bash
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:

bash
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:

bash
/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:

bash
sudo systemctl restart php8.x-fpm

Ou reinicie o Apache, se for o caso:

bash
sudo systemctl restart apache2

Passo 4: Teste o funcionamento com um arquivo phpinfo()

Crie um arquivo phpinfo.php com:

bash
<?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:

bash
<?php phpinfo(); ?>

📈 Usando o painel OPcache GUI

🔍 Pelo terminal:

bash
php -i | grep opcache

Como limpar o cache do OPcache (reset)

Via terminal:

bash
php -r 'opcache_reset();'

Via script PHP:

bash
<?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.

admin

Escrito por admin

Engenheiro Cloud & DevOps com mais de 10 anos de experiência construindo e escalando infraestruturas de alto tráfego em AWS, DigitalOcean e Servidores Dedicados.

Conhecer Serviços →

Comentários (4)

Deixe seu comentário

U
Thiago Moreira
Thiago Moreira
Há 2 dias

Excelente artigo, Alex! Estávamos exatamente com esse problema de overprovisioning na nossa startup. Aplicar os Savings Plans salvou quase 30% da nossa conta mensal.

Alex Junio
Alex JunioAutor
Há 1 dia

Fico feliz que ajudou, Thiago! Essa economia faz total diferença no longo prazo. Se precisarem de ajuda para escalar o banco de dados depois, me deem um toque.

Juliana Costa
Juliana Costa
Há 4 dias

Não tinha pensado em usar Spot para as filas do SQS. Existe algum risco do Spot ser finalizado no meio de um processamento pesado de vídeo?

Alex Junio
Alex JunioAutor
Há 4 dias

Sim, Juliana! A AWS te avisa com 2 minutos de antecedência. O segredo é sua aplicação capturar o evento de interrupção e colocar a mensagem de volta na fila (visibility timeout) antes da máquina morrer.

Roberto Freitas
Roberto Freitas
Há 1 semana

Muito bom o conteúdo técnico. Falta só mais detalhes sobre instâncias Graviton.

Carla Mendes
Carla Mendes
Há 1 semana

Sensacional! Usei as dicas de Right-Sizing e deu muito certo no meu e-commerce.