A Extensão de Cache do Windows para PHP é um acelerador PHP usado para aumentar a velocidade de aplicativos PHP em execução no Windows e no Windows Server. Uma vez que a Extensão de Cache do Windows para PHP é habilitada e carregada pelo mecanismo PHP, os aplicativos PHP podem aproveitar a funcionalidade sem nenhuma modificação no código.
A Extensão de Cache do Windows inclui 5 tipos diferentes de cache. A seguir, descrevemos a finalidade de cada tipo de cache e os benefícios que ele oferece.
Cache de Opcode PHP - PHP é um mecanismo de processamento de scripts que lê um fluxo de entrada de dados que contém texto e/ou instruções PHP e produz outro fluxo de dados, mais comumente no formato HTML. Isso significa que, em um servidor web, o mecanismo PHP lê, analisa, compila e executa um script PHP cada vez que ele é solicitado por um cliente web. As operações de leitura, análise e compilação colocam carga adicional na CPU e no sistema de arquivos do servidor web e, portanto, afetam o desempenho geral de uma aplicação web PHP. O cache de bytecode (opcode) do PHP é usado para armazenar o bytecode do script compilado na memória compartilhada, para que ele possa ser reutilizado pelo mecanismo PHP em execuções subsequentes do mesmo script.
O suporte para cache de opcode foi removido no Wincache 2.0.0
. Todos os usuários que
desejam ter um opcache devem usar a extensão OPcache
incluída no PHP.
Cache de Arquivos - Mesmo com o cache de opcode PHP habilitado, o mecanismo PHP precisa acessar os arquivos de script em um sistema de arquivos. Quando scripts PHP são armazenados em um compartilhamento de arquivos UNC remoto, as operações de arquivo apresentam uma sobrecarga significativa de desempenho. A Extensão de Cache do Windows para PHP inclui um cache de arquivos que é usado para armazenar o conteúdo dos arquivos de script PHP na memória compartilhada, o que reduz a quantidade de operações do sistema de arquivos realizadas pelo mecanismo PHP.
Cache de Resolução de Caminho de Arquivo - Scripts PHP frequentemente incluem ou operam com arquivos usando caminhos de arquivo relativos. Cada caminho de arquivo precisa ser normalizado para um caminho de arquivo absoluto pelo mecanismo PHP. Quando uma aplicação PHP usa muitos arquivos PHP e os acessa por caminhos relativos, a operação de resolução dos caminhos pode impactar negativamente o desempenho da aplicação. A Extensão de Cache do Windows para PHP fornece um cache de Resolução de Caminho de Arquivo, que é usado para armazenar os mapeamentos entre caminhos de arquivo relativos e absolutos, reduzindo assim o número de resoluções de caminho que o mecanismo PHP precisa executar.
Cache do Usuário (disponível desde a versão 1.1.0) - Scripts PHP podem aproveitar o cache de memória compartilhada usando as APIs de cache do usuário. Objetos e variáveis PHP podem ser armazenados no cache do usuário e reutilizados em requisições subsequentes. Isso pode ser usado para melhorar o desempenho de scripts PHP e para compartilhar os dados entre vários processos PHP.
Manipulador de Sessão (disponível desde a versão 1.1.0) - O manipulador de sessão do WinCache pode ser usado para armazenar os dados da sessão PHP no cache de memória compartilhada. Isso evita operações do sistema de arquivos para leitura e gravação de dados da sessão, o que melhora o desempenho quando uma grande quantidade de dados é armazenada na sessão PHP.