Como usar compressão de dados

Como usar compressão de dados

Como usar compressão de dados: A compressão de dados é o ato de reduzir o tamanho do espaço utilizado por dados em um dispositivo. Essa intervenção é efetivada por meio de diversos programas de compressão, diminuindo a contagem de Bytes para representar um dado, sendo esse dado uma imagem, um texto, ou um arquivo qualquer.

Comprimir dados propõe-se também a retirar a redundância, fundamentando que muitos dados contêm documentos redundantes que podem ou precisam ser suprimidas de alguma forma.

Essa forma é por meio de uma norma, chamada de código ou protocolo, que, quando adotada, suprime os bits redundantes de dados, de maneira a atenuar seu tamanho nos fichários.

Por exemplo, o conjunto “AAAAAA” que toma 6 bytes, poderia ser concebida pelo conjunto “6A”, que toma 2 bytes, guardando 67% de espaço.

Além da supressão da redundância, as informações são comprimidas pelos mais diferentes motivos.

Entre os mais populares estão, conservar espaço em dispositivos de armazenamento, como discos rígidos, ou ganhar desempenho em transmissões online.

Ainda que possam parecer sinônimos, compressão e compactação de dados são métodos distintos.

A compressão, como visto, diminui a contagem de bits para conceber algum dado, enquanto a compactação tem o encargo de unir dados que não estejam ligados.

Um exemplo exemplar de compactação de dados é a desfragmentação de discos.

Como usar compressão de dados

Como você percebeu, as diferenças entre compressão e compactação de dados existe e vamos tratar da compressão de dados daqui para frente, e sobre a compactação de dados falaremos em outro artigo próximo.

Este é um assunto que tem quebrado a cabeça de muitos blogueiros, visto que para um bom desempenho o site ou blog precisa carregar rápido.

Não tem nada pior do você entrar em um site ou blog ele demora muito para carregar principalmente se a informação que procura está ali naquele blog.

Quando o usuário ainda está em fase de pesquisa então é bem pior pois se demorar para carregar ele já parte para outro blog até achar um que atenda suas expectativas.

Neste ponto você acaba de perder um leitor e possível lead e quem sabe até um cliente em potencial.

É aí que temos que trabalhar o SEO do blog ou site, e uma dentre tantas diretivas que usamos para melhorar SEO está a compressão de dados via gzip, deflate e zlib.

Como usar compressão de dados

Utilizar a compressão de dados é uma fantástica prática de otimização de páginas web, além de ser muito fácil de ser implementada.

O método é bem simples: o servidor comprime todo o HTML, CSS e Java script antes de mandar para o navegador, dessa forma a transferência dos arquivos ocorre muito mais rápida.

Investigando sobre o tema, me descobri esses três nomes: gzip, zlib e deflate. Qual usar?

Deflate – é um programa de compressão de dados.

Gzip – é um código de compressão de dados para sistemas baseados em Unix. Utiliza o programa deflate.

Zlib – é uma biblioteca multi-plataforma de compressão de dados, criada para popularizar o programa deflate.

Resumindo, tanto faz se você vai usar o Gzip ou o Zlib, já que o programa de compressão é o mesmo.

O importante é ligar a compressão para melhorar a desempenho do seu site, atenuando cerca de 70% do tráfego total.

Na maioria das vezes eu dou preferência para o zlib, pois acho mais rápido de habilitar.

Se ele não for possível, então eu habilito o gzip.

Como usar compressão de dados: Ligando o Zlib

Para usar o Zlib você precisa conferir se a biblioteca está ativa no servidor através da função phpinfo().

 

zlib

Se estiver, basta acrescentar essas linhas de código no header ou cabeçalho do seu site antes do body ou corpo.

<?php
/** Coloque essas duas linhas no cabeçalho do site **/
ini_set('zlib.output_compression','On');
ini_set('zlib.output_compression_level','1');
?>
<!doctype html>
<html dir="ltr" lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Compressão de dados: gzip, zlib e deflate - dinheirohonesto.com.br</title>

Como usar compressão de dados: Ativando o Gzip

Caso você escolha usar o Gzip  ou esteja impedido de usar o Zlib, em servidores linux é possível ligar através do arquivo .htaccess acrescentando o código abaixo:

<IfModule mod_deflate.c>
 <IfModule mod_setenvif.c>
 <IfModule mod_headers.c>
 SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
 RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
 </IfModule>
 </IfModule>
 <IfModule filter_module>
 FilterDeclare COMPRESS
 FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html
 FilterProvider COMPRESS DEFLATE resp=Content-Type $text/css
 FilterProvider COMPRESS DEFLATE resp=Content-Type $text/plain
 FilterProvider COMPRESS DEFLATE resp=Content-Type $text/xml
 FilterProvider COMPRESS DEFLATE resp=Content-Type $text/x-component
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/javascript
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/json
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xml
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/xhtml+xml
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/rss+xml
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/atom+xml
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/vnd.ms-fontobject
 FilterProvider COMPRESS DEFLATE resp=Content-Type $image/svg+xml
 FilterProvider COMPRESS DEFLATE resp=Content-Type $image/x-icon
 FilterProvider COMPRESS DEFLATE resp=Content-Type $application/x-font-ttf
 FilterProvider COMPRESS DEFLATE resp=Content-Type $font/opentype
 FilterChain COMPRESS
 FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no
 </IfModule>
 <IfModule !mod_filter.c>
 AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
 AddOutputFilterByType DEFLATE application/javascript
 AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
 AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
 AddOutputFilterByType DEFLATE image/x-icon image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
 </IfModule>
</IfModule>

Como usar compressão de dados

Em servidores windows para ativar, acesse o arquivo web.config, se você tiver o gzip no IIS, acrescentando o seguinte código:

<system.webServer>
  <httpCompression directory="%SystemDrive%\inetpub\
temp\IIS Temporary Compressed Files">
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
    <dynamicTypes>
      <add mimeType="text/*" enabled="true"/>
      <add mimeType="message/*" enabled="true"/>
      <add mimeType="application/javascript" enabled="true"/>
      <add mimeType="*/*" enabled="false"/>
    </dynamicTypes>
    <staticTypes>
      <add mimeType="text/*" enabled="true"/>
      <add mimeType="message/*" enabled="true"/>
      <add mimeType="application/javascript" enabled="true"/>
      <add mimeType="*/*" enabled="false"/>
    </staticTypes>
  </httpCompression>
  <urlCompression doStaticCompression="true" doDynamicCompression="true"/>
</system.webServer>

Confirmando o efeito
Com uma ferramenta disponibilizada pelo site Port80 é possível verificar o status da compressão, comparar o tamanho do arquivo original com o do arquivo comprimido e ter uma estimativa de tempo de carregamento da página.

Basta adicionar a url do seu site no campo compression check e clicar em check para fazer o teste com o seu site.
Clique Aqui

Descubra uma Forma Honesta de ter Renda na Internet! Assista Estas 5 Vídeo-Aulas GRÁTIS!

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *