This website uses cookies

Our website, platform and/or any sub domains use cookies to understand how you use our services, and to improve both your experience and our marketing relevance.

Como instalar e configurar o OPcache com a tua aplicação PHP

Updated on October 2, 2025

9 Min Read

Estás cansado da execução lenta de scripts PHP e do fraco desempenho das aplicações? Tens dificuldade em otimizar o teu código e reduzir os tempos de carregamento? Se sim, não estás sozinho. Muitos programadores enfrentam estes desafios quando trabalham com aplicações PHP.

Felizmente, existe uma solução: OPcache.

Este poderoso cache de opcode armazena bytecode de script PHP pré-compilado em memória compartilhada, reduzindo o tempo que leva para seus scripts serem executados. Por conseguinte, melhora o desempenho da sua aplicação PHP, permitindo-lhe concentrar-se no que realmente importa: proporcionar uma excelente experiência ao utilizador.

Nesta postagem do blog, vou guiá-lo pelo processo de instalação e configuração do OPcache com seu aplicativo PHP. Mais importante ainda, verás como a Cloudways simplificou a integração do OPcache com aplicações baseadas em PHP. Portanto, se estiveres a usar o nosso alojamento web PHP, este artigo vai ajudar-te muito.

Breve descrição geral da OPcache

OPcache armazena bytecode de script pré-compilado em memória compartilhada, melhorando o desempenho do PHP. Armazena em cache o opcode, permitindo que os scripts sejam servidos diretamente do cache. Isso reduz o uso da CPU e da memória, otimizando a utilização de recursos e melhorando a escalabilidade da aplicação PHP.

Com o OPcache ativado, os scripts são armazenados na memória e apenas as atualizações são compiladas. Elimina a necessidade de o PHP recompilar scripts, reduzindo a sobrecarga do servidor e acelerando a execução do PHP. Isto resulta num carregamento mais rápido da página web e numa experiência de utilizador mais suave.

Como é que a OPcache funciona?

O PHP OPcache aumenta o desempenho verificando se há bytecode de script pré-compilado na memória compartilhada cada vez que um script é compilado. Se o código não for encontrado, o OPcache o compila automaticamente e o salva na memória, gerando a saída depois.

O diagrama abaixo ilustra o processo de execução de código com o PHP OPcache, explicando claramente como funciona.
script php

PHP Framework Hosting [A partir de 11$ de crédito]

  • Encenação gratuita
  • Backup gratuito
  • PHP 8.0
  • Websites ilimitados

TESTE AGORA

OPcache vs Outros Caching

Diferentes aplicações precisam de diferentes tipos de cache. O PHP OPcache é ótimo para acelerar o PHP. Esta tabela compara diferentes opções de cache.

Funcionalidade PHP OPcache APCu Memcached
Mecanismo de cache Cache de código de operação Cache de dados do utilizador Cache distribuída
Integração Inclui o PHP Extensão separada Serviço separado
Instalação Fácil Fácil Requer a configuração do servidor
Desempenho Excelente Bom desempenho Excelente
Escalabilidade NA NA Elevada
Suporte para dados do utilizador Não Sim Sim
Mecanismo de armazenamento Na memória Na memória Distribuído (RAM)
Expiração da cache NA Apagar TTL ou Manual Apaga TTL ou Manual
Invalidação da cache Automático (alteração de ficheiro) Limpeza manual Limpa manualmente
Apoio comunitário Forte Forte Forte
Casos de utilização Usado principalmente para cache de opcode para acelerar a execução do PHP Mais adequado para o armazenamento em cache de dados específicos do utilizador ou cenários de armazenamento em cache distribuído. Mais adequado para armazenar em cache dados específicos do utilizador ou cenários de armazenamento em cache distribuído.

Porque deves usar a OPcache?

O PHP OPcache é essencial para qualquer aplicação web baseada em PHP, melhorando o desempenho e a experiência do utilizador. Armazena bytecode pré-compilado na memória, eliminando a análise e compilação repetitivas de scripts PHP.

Isto permite que os servidores lidem com mais pedidos de forma eficiente, facilitando o escalonamento de aplicações web sem aumentar os recursos do servidor. O OPcache também reduz as operações de E/S do disco, acelerando a execução do PHP e melhorando a capacidade de resposta do site.

Com a sua compatibilidade com o PHP, fácil integração e escalabilidade, o OPcache é imprescindível para qualquer ambiente de servidor PHP, melhorando o desempenho e a fiabilidade das aplicações web baseadas em PHP.

Desempenho da OPcache

Encontrei um estudo de caso sobre como a OPcache melhorou o desempenho de um site. Um utilizador chamado Tschallacka partilhou a configuração do seu servidor e a forma como os pedidos foram atendidos rapidamente. O estudo de caso mostra como a OPcache pode acelerar e melhorar o desempenho de uma aplicação.

Sem OPcache

Ao usar este script sem OPcache, eu envio 9000 pedidos em 2,8 segundos para o servidor Apache. Atinge o máximo de 90-100% da CPU por 70-80 segundos até que consiga atender a todos os pedidos.
Tempo total gasto: 76085 milissegundos (76 segundos)

Com o OPcache
Com o OPcache ativado, ele é executado a 25-30% do tempo de CPU por cerca de 25 segundos e nunca passa de 25% de uso da CPU.

Tempo total gasto: 26490 milissegundos (26 segundos)

Criei um ficheiro OPcache blacklist para desativar o cache de tudo, exceto da estrutura, que é toda estática e não precisa de mudar de funcionalidade.

Escolho explicitamente os ficheiros da estrutura para desenvolver sem me preocupar em recarregar/validar os ficheiros da cache. Ter tudo em cache poupa um segundo no total dos pedidos, 25546 milissegundos

Isto aumenta significativamente a quantidade de dados/pedidos que posso tratar por segundo sem que o servidor tenha de suar.

Requisitos do sistema

Para usar o OPcache, você precisa compilá-lo como uma extensão compartilhada. Se você desabilitou as extensões padrão, você deve compilar o PHP com a opção –enable-opcache. Então, tu podes carregar a extensão OPcache no PHP usando a diretiva de configuração zend_extension.

Com o PHP 5.5 e posterior, não precisas do APC ou de extensões de cache de bytecode semelhantes porque o OPcache está integrado no núcleo do PHP. Isso proporciona melhor estabilidade e é oficialmente suportado pelos desenvolvedores do PHP.

Desbloqueia todo o potencial do PHP com a integração do OPcache

Cloudways + OPcache: A combinação perfeita para um site de alto desempenho.

Instalar e configurar o OPcache

Apesar de a última atualização tornar a OPcache compatível com o PHP 8, os especialistas recomendam que os utilizadores optem pelo PHP v5 e v7. Para começar a utilizar a OPcache, tens de a ativar manualmente. Para tal, terás de fazer o seguinte:

Adiciona a seguinte linha ao teu php.ini:

zend_extension=/full/path/to/opcache.so (nix)


zend_extension=C:\path\to\php_opcache.dll (win)

Nota que, quando o caminho contém espaços, deves colocá-lo entre aspas:

zend_extension="C:\Program Files\PHP5.5\ext\php_opcache.dll"

Além disso, terás de utilizar a diretiva zend_extension em vez da diretiva de extensão “normal” porque afecta o motor Zend (ou seja, a coisa que corre o PHP).

Para PHP 5.4 ou anterior (>= 5.2), podes instalar o Zend OPcache usando o PECL.
$ pecl install zendopcache-beta

O comando pecl tentará atualizar automaticamente a tua configuração php.ini.

Agora que configuraste a OPcache corretamente, é altura de atualizar a definição recomendada para otimização do desempenho. As definições são as seguintes:

opcache.memory_consumption=128 (para guardar em cache todos os ficheiros compilados)


opcache.interned_strings_buffer=8


opcache.max_accelerated_files=4000 (por defeito pode guardar 2000 ficheiros)


opcache.revalidate_freq=60


opcache.fast_shutdown=1


opcache.enable_cli=1

Algumas outras definições podem ser úteis, por exemplo, se estiveres a utilizar anotações de código, podes utilizar:

opcache.save_comments=1

Podes ver a lista completa de configurações de tempo de execução aqui.

OPcache com outros CMS/Framework

Embora a PHP OPcache possa melhorar o desempenho, é essencial monitorizar o comportamento da cache e ajustar as definições com base nas necessidades da tua aplicação.

WordPress

  • Verifica a compatibilidade: Antes de ativar a PHP OPcache, certifica-te de que o teu alojamento para WordPress e a versão do WordPress são compatíveis com a OPcache.
  • Plugin de cache: Utiliza um plugin de cache especificamente concebido para o WordPress, como o W3 Total Cache ou o WP Super Cache. Estes plugins podem ajudar-te a gerir as definições de cache, incluindo a integração do PHP OPcache.
  • Ajuste fino: Considera o ajuste fino das configurações do PHP OPcache dependendo do ambiente de hospedagem. Ajusta o opcache.memory_consumption, opcache.max_accelerated_files e opcache.revalidate_freq com base nos requisitos do teu site.
  • Mecanismo de limpeza de cache: Implementa um mecanismo de limpeza de cache para garantir que, quando actualizas plug-ins, temas ou conteúdos, as alterações são reflectidas corretamente. Alguns plug-ins de cache tratam disso automaticamente.

Drupal

  • Compatibilidade de versões: Certifica-te de que estás a usar o Drupal 7 ou o Drupal 8+, pois as versões anteriores podem não suportar totalmente o PHP OPcache.
  • Módulos de cache: O Drupal tem módulos como o “APC” e o “Memcache” que podem ser usados em conjunto com o PHP OPcache para melhorar a cache.
  • Ajuste do OPcache: Ajusta as definições da OPcache na configuração do PHP para otimizar o consumo de memória e o número de ficheiros em cache com base no tamanho e complexidade do teu site Drupal.
  • Expiração da cache: Implementa um mecanismo de expiração da cache para lidar eficazmente com actualizações e alterações de conteúdos.

Laravel

  • Extensão OPcache: Verifica se a extensão OPcache está instalada e activada na tua configuração PHP para que o Laravel a utilize.
  • Otimização com Artisan: A ferramenta de linha de comando Artisan do Laravel fornece um comando otimizado que pré-compila classes, reduzindo significativamente o tempo necessário para carregar arquivos.
  • Configurações do OPcache: Ajustar as definições do OPcache na tua configuração PHP ou usar um pacote como o “opcache-dashboard” para monitorizar e ajustar as definições a partir do Laravel (a Cloudways também oferece alojamento Laravel gerido)

Usando o OPcache no Cloudways

Uma vez que a Cloudways acredita em proporcionar facilidade aos seus clientes, permite-te alterar as definições de memória a partir das definições do servidor e do separador de pacotes.

Lembra-te que não tens acesso ao ficheiro php.ini, por isso serão aplicados os valores por defeito definidos pela Cloudways. Podes alterar o tamanho da memória de ambas as opções de acordo com os requisitos da tua aplicação.


Os valores de configuração predefinidos são os seguintes:

opcache.interned_strings_buffer=4


opcache.max_accelerated_files=2000


opcache.memory_consumption=64


opcache.revalidate_freq=2


opcache.fast_shutdown=0


opcache.enable_cli=0

GUI gráfico do OPcache

A maneira tradicional de verificar se o cache PHP OPcode está sendo executado no servidor é escrever phpinfo(); no arquivo .php e ver o status:

Mas se quiseres ver a GUI gráfica optimizada com interação do utilizador, na qual podes ter a opção de gerir definições com botões, então podes utilizar os pacotes de código aberto disponíveis no GitHub. Por isso, podes utilizar os seguintes pacotes para este trabalho.

1. OPcacheGUI

O OPcacheGUI permite-te gerir as funcionalidades do OPcache como o estado, configurações, reset, visão geral dos scripts, etc, com uma interface agradável. Também podes ver a memória, as chaves e o estado dos hits em forma gráfica. Assim, simplifica o processo geral de dados para os utilizadores.

– Fonte: GitHub/PeeHaa

2. OPcache-Status

OPcache-Status fornece a página de status de uma página para o cache PHP OPcode. Algumas outras coisas que ele pode fazer por ti são:

  • A capacidade de ordenar a lista de scripts em cache pelas várias colunas;
  • Um layout melhor que pode acomodar mais dados do script sem parecer desordenado;
  • Um separador de sugestões de afinação (primeiro, precisa de adicionar algumas coisas à saída da OPcache).

– Fonte: GitHub/rlerdorf

3. OPcache-GUI

OPcache-GUI dá-te uma interface de utilizador fácil de usar para as definições da OPcache, construída com jQuery e React. Podes ver informações como o teu host, plataforma, versão e quando foi reiniciado pela última vez. Mostra também todas as funções disponíveis e estatísticas importantes como o número de acessos e a utilização de memória.

– Fonte: GitHub/amnuts

Cloudways + OPcache – A melhor combinação para sites rápidos

Começa com 3 meses de teste gratuito:
Escalonamento automático para sítios com muitos meios de comunicação
SSL grátis para carregamentos seguros
Apoio especializado 24 horas por dia, 7 dias por semana

Resumo

Neste momento, já deves estar convencido dos benefícios de integrar a PHP OPcache nas tuas aplicações web. Esta poderosa ferramenta revolucionou o desempenho do PHP, fornecendo um grande impulso à velocidade e eficiência das suas aplicações web.

Com o armazenamento de código em cache, já não tens de perder tempo a compilar código repetidamente. Em vez disso, o código só é compilado quando é atualizado e, em seguida, guardado na memória partilhada para um acesso extremamente rápido. Isso economiza tempo e recursos, resultando em um desempenho perfeito.

Não percas a oportunidade de levar o desempenho do teu PHP para o próximo nível com a OPcache!

Q. O que é a OPcache PHP?

A. OPcache é uma extensão PHP que melhora o desempenho ao armazenar em cache scripts PHP pré-compilados na memória, reduzindo a necessidade de compilação repetitiva de scripts.

Q. Devo ativar a OPcache?

A. Sim, a ativação da OPcache é recomendada para ambientes de produção, uma vez que aumenta significativamente o desempenho e reduz a carga do servidor.

Q. Como ativar a OPcache em PHP?

A. Para ativar a OPcache:

  • Abre o ficheiro php.ini.
  • Adiciona ou certifica-te de que a linha opcache.enable=1 está presente.
  • Reinicia o servidor Web para aplicar as alterações.

Q. Qual é a diferença entre PHP JIT e OPcache?

A. O OPcache armazena em cache scripts PHP pré-compilados para reutilização, enquanto o PHP JIT (Just-In-Time) compila o código PHP em código de máquina nativo em tempo de execução para otimização adicional do desempenho.

Q. O que fazer se o PHP Opcache não estiver a funcionar?

A. Se a Opcache do PHP não funcionar corretamente, vai ao ficheiro php.ini e verifica a secção Opcache. Certifica-te de que opcache.enable=1 está definido neste ficheiro. Se não estiver, então define-o em conformidade.

Share your opinion in the comment section. COMMENT NOW

Share This Article

Shahzeb Ahmed

Um criativo de dia (com uma chávena de chá) e um criativo de noite. Ahmad Kamran é um escritor de conteúdos sazonais e Executivo de Marketing Sénior na Cloudways. Podes encontrá-lo na sua secretária a escrever, a criar estratégias ou a jogar jogos. E, caso não o encontres aqui, ele estará nas montanhas ou à beira do rio.

×

Webinar: How to Get 100% Scores on Core Web Vitals

Join Joe Williams & Aleksandar Savkovic on 29th of March, 2021.

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Quer experimentar a plataforma Cloudways em todo o seu esplendor?

Faça um tour guiado GRATUITO pela Cloudways e veja por si mesmo como é fácil gerenciar seu servidor e suas aplicações na principal plataforma de hospedagem em nuvem.

Iniciar mi recorrido