LOGO UOL HOST

Como utilizar o Output Caching do IIS para melhorar a performance de aplicações web PHP?

O que é Output Caching?

O output caching é um módulo do IIS que permite o cache de páginas dinâmicas geradas pelo PHP. Quando uma página passa a ser acessada repetidamente, seu conteúdo é cacheado e passa a ser servido sem a necessidade de execução do script que gera esse conteúdo, o que confere um considerável ganho de performance em páginas com um número de acessos relativamente grande.

Quando utilizar?

O uso do output caching é recomendado para sites com páginas que não tenham grande dinamismo, ou seja, não tenham seu conteúdo alterado frequentemente de forma dinâmica, não sendo recomendado para sites que, por exemplo, obtenham o conteúdo a ser exibido de um banco de dados em curtos intevalos de tempo (segundos) ou com base em ações de usuário.

 

Configuração do recurso

Para utilizar o output caching na plataforma de hospedagem do UOL Host, basta adicionar as configurações em um arquivo web.config no diretório onde se deseja ter o recurso ativado.

Nas configurações serão informadas as extensões de arquivos a terem o conteúdo cacheado e parâmetros que definem os “gatilhos” para a criação e renovação do cache.

 

Abaixo um exemplo de configuração do output caching:

 

< ?xmlversion="1.0"encoding="UTF-8"? >

< configuration >

    < system.webServer >

        < caching >

            < profiles >

                < add extension=".php"

                                             policy="CacheForTimePeriod" 

                                             duration="00:03:00"

                       varyByQueryString="*" / >

 

Nesse exemplo são definidos:

Extension=”.php” : Indica que o conteúdo de todas as páginas com extensão .php serão cacheados;
policy=”CacheForTimePeriod” : Indica que a renovação do cache será feita com base em um período de tempo;
duration=”00:03:00” : Indica que o tempo para renovação do cache será de 3 minutos;
varyByQueryString =”*” : Indica que as páginas cacheadas serão diferenciadas por qualquer mudança na query string das requests, isso impede que uma página seja “confundida” com outra página pelo servidor e que seja servido o conteúdo errado.

Além dos parâmetros definidos no exemplo acima, é possível definir:
 

policy="DisableCache":Desabilita o cache para as extensões definidas;

policy="CacheUntilChange":  Indica que a renovação do cache será feita com base em notificações de alterações de arquivos;
varyByHeaders="Accept-Charset": Indica que as páginas cacheadas serão diferenciadas por um header específico.

 

Assuntos recentes

Atendimento Online

Somente para assinantes

Fale com um dos nossos atendentes especializados via chat ou envie um e-mail.

Iniciar Chat ou Enviar E-mail

Central de atendimento

Atendimento 24 horas por dia, 7 dias por semana.

Se preferir você pode entrar em contato com a nossa central de atendimento

4003 9011 Capítais e regiões metropolitanas

0800 881 9011 Demais localidades