você está aqui: Home  → Arquivo de Mensagens

Melhorando a performance de seu site com compressão de páginas

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 21 de julho de 2010

Hoje em dia, com a grande quantidade de sites existentes, ninguém tem paciência para ficar aguardando as páginas de seu lindo site serem carregadas.

Para ver como anda o desempenho de seu site, você pode usar as Ferramentas para Webmasters, do Google.

Vendo as estatísticas para a Dicas-L, vi que as páginas demoram em média 6.3 segundos para serem carregadas, o que me deixa na incomoda posição de ter um site mais lento do que 83% dos sites da Internet.

Algo precisa ser feito :-(

Dentre as sugestões apresentadas, o serviço recomendou que as páginas sejam compactadas com o gzip. Com a compactação, o servidor compacta as páginas antes de enviá-las para o browser cliente, onde são então descompactadas. Desta forma, o tráfego de dados entre as máquinas é reduzido sensivelmente. Em geral, para arquivos de texto, consegue-se algo em torno de 90% de compactação. Dá para melhorar bastante o desempenho do site.

A primeira coisa a ser feita, é verificar se o seu servidor apache oferece suporte à compactação. Para isto, verificar se o módulo deflate_module está habilitado. Para isto, usamos o comando apachectl:

# /usr/sbin/apachectl -t -D DUMP_MODULES

...
 deflate_module (shared)
...
Syntax OK

O servidor já está habilitado a fazer a compactação. Precisamos agora ativar a compactação nas páginas do site. Para isto, inserimos no arquivo httpd.conf as seguintes linhas:

<Location />
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4\.0[678] no-gzip\
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
# Don't compress images
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
</Location>

As instruções acima instruem o servidor a não compactar imagens e também para não compactar quando o browser do cliente for o Mozilla, versão 4x.

Isto feito, reinicie o servidor Web. Faça então um teste para ver se tudo está funcionando. Vá até o site GIDZipTest, forneça a URL de seu site e veja se o gzip está funcionando:

Opa, deu certo :-) Agora falta implementar as outras sugestões feitas pelo Google.

Referências

Apache2 gzip compression: How do I speed up my website download time?



Veja a relação completa dos artigos de Rubens Queiroz de Almeida