10 formas de reduzir a carga do seu servidor e poupar largura de banda

No ano passado, mais concretamente em junho, tive problemas com o servidor do blog, sendo que na altura estava alojado numa conta de revenda simples num empresa de hosting em portugal. Os constantes ataques ao servidor da máquina e os downtimes sucessivos fizeram-me ganhar coragem e alugar uma VPS Gerida, que pese embora me custe 900eur/ano é seguramente o dinheiro mais bem gasto com os meus projectos online, seguramente.

No entanto cheguei brevemente a um novo dilema, que se prende com o aluguer de um servidor dedicado para lidar com toda a carga e largura de banda que os múltiplos projectos que vou gerindo produzem. Este problema ajudou-me também a interpretar alguns sinais presentes no meu actual servidor, e a encontrar algumas formas de ir minimizando os problemas e aguentando o barco até me mudar completamente para o novo servidor, agora dedicado. Existem diversas técnicas para reduzir a carga do processador e a largura de banda consumida pelo servidor, e são precisamente essas técnicas que gostaria hoje de partilhar consigo, sendo que elas aplicam-se tanto a uma revenda, a um plano de hosting básico, como também a uma VPS ou a um servidor dedicado. Todos os Gigabytes a menos na factura final de consumos são importantes!

largura de banda

1. UTILIZE TEXTO EM CSS EM VEZ DE IMAGENS
As imagens tornam a sua página lenta e na grande maioria das vezes consomem imensa largura de banda no seu servidor. Ao invés de utilizar uma imagem no background do seu website ou blog, utilize código CSS. Se por exemplo você pretende utilizar um background todo branco, utilize o código de CSS: background-color:#FFFFFF ao invés de uma imagem JPG ou PNG. Com o CSS você reduz drasticamente o tempo de carregamento da sua página, bem como a largura de banda que ela consome cada vez que um utilizador o visita.
O blog CSS-Tricks tem um tutorial muito interessante sobre como utilizar o CSS eficientemente ao invés de imagens, para reduzir a largura de banda consumida pelo seu blog.

2. OPTIMIZAR IMAGENS
Mais de metade da largura de banda consumida por um servidor está relacionada com imagens, pelo que optimizar devidamente as suas imagens é uma das formas mais eficientes de reduzir a largura de banda do seu servidor. Optimize as suas imagens para a internet e reduza os seus tamanhos e nunca utilize ficheiros bitmap (.bmp) uma vez que são extremamente pesados. Deverá utilizar sempre ficheiros jpeg (.jpg) ou gif (.gif), sendo que ambos os formatos estão devidamente optimizados para a internet. Os thumbnails utilizados no seu website não deverão nunca exceder os 10 Kb.

Se por ventura utiliza o Photoshop, poderá comprimir as suas imagens com a opção ‘Save for Web & Devices’, optimizando-as para utilização na internet. Quando tem uma imagem com muitas cores ou variações, deverá sempre recorrer aos formatos JPEG ou PNG.

3. COMPRIMA O SEU FICHEIRO CSS
Os ficheiros de CSS dos seus websites ou blogs podem muitas vezes ser enormes, com uma série de espaços vazios e inutilizados que na verdade só atrasam o processo de leitura. No entanto, a utilização das chamadas ‘Shorthands’ em CSS, é uma das técnicas mais eficientes para reduzir a quantidade de código CSS, tornando a leitura e edição do ficheiro mais simples e eficaz. Vejamos:

Exemplo 1:
margin: 2px 1px 3px 4px (top, rightright, bottombottom, left)

Exemplo 2:
margin-top: 2px;  
margin-right: 1px;  
margin-bottom: 3px;  
margin-left: 4px
 

Ambos os exemplos propostos fazem precisamente o mesmo, pese embora seja recomendável utilizar o Exemplo 1, uma vez que tem menos linhas de conteúdo e a sua leitura é muito mais rápida.
Se desejar, poderá ler um tutorial sobre compressão de CSS na WebCredible ou então utilizar o CSS Compressor para comprir o seu ficheiro CSS, retirando espaços e breaks desnecessários, de forma automática.

4. REMOVER CÓDIGO HTML DESNECESSÁRIO, TAGS E ESPAÇAMENTOS
Poderá reduzir drasticamente a compressão da sua página, removendo espaços em branco nos seus ficheiros HTML, ou mesmo removendo comentários do seu blog (caso não sejam necessários), uma vez que todo e qualquer caracter extra, significa espaço extra. Quer você utilize um editor de HTML ou o notepad, o seu código HTML de certeza que inclui matéria desnecessária: espaços não necessários, retornos, meta tags, valores por defeito nos elementos HTML, etc. Todas as estas coisas tornam a sua página maior, sem que na verdade sirvam algum propósito. Quanto maior for a sua página, mais tempo demora a carregar e mais largura de banda consome no seu servidor.

Se desejar, poderá utilizar a ferramenta Wordoff, que ajuda-o a remover todos estes espaços em branco, tags e estilos desnecessários do seu código HTML. Regra geral, este tipo de edição é feita manualmente pelo autor do blog, sendo que com esta ferramenta tudo fica mais fácil!

5. UTILIZE LIVRARIAS AJAX E JAVASCRIPT
AJAX é uma tecnologia direcciona para a web, que permite a comunicação com o servidor utilizando JavaScript, sem que na verdade o leitor tenha de fazer refresh à página onde se encontra. Regra geral, as páginas e blogs de hoje estão recheadas de conteúdos, o que significa que cada vez que o leitor acede a um link, uma nova página é aberta e carrega na sua totalidade. No entanto, utilizando Ajax, uma aplicação web pode requesitar uma actualização apenas dos conteúdos que ainda não foram carregados, deixando os outros permanentemente na cache, reduzindo drasticamente o consumo de largura de banda.

Se desejar, poderá ler um tutorial extremamente completo sobre esta matéria no blog Perishablepress.

6. DESLIGUE O HOTLINKING DE IMAGENS
Hot Linking é o processo que leva alguém a utilizar uma imagem sua, num outro website, comendo basicamente largura de banda do seu servidor, ao invés de consumir a largura de banda do servidor do autor que linkou a imagem. Se tem recorrentemente pessoas a fazer ‘hotlinking’ aos seus ficheiros de imagem, eles estão a consumir largura de banda que na verdade lhe custa muito dinheiro.

Você poderá terminar com isso rapidamente, colocando um ficheiro ‘.htaccess’ na pasta onde as suas imagens estão colocadas. Este código permite apenas pedidos de leitura das imagens a partir do seu próprio website - qualquer pessoa que tente fazer hotlinking, será avisado com um sinal vermelho.

RewriteEngine On  
RewriteCond %{HTTP_REFERER} !^$  
RewriteCond %{HTTP_REFERER} !^http(s)?://(.*\.)?yourserver.com [NC]  
RewriteRule \.(jpeg|jpg|gif|png)$ – [F]

Se desejar poderá ler um tutorial completo sobre hotlinking em websites no blog AltTab, ou utilizar este gerador .htaccess que providencia-lhe o código e instruções que irá necessitar para terminar com o hotlinking no seu blog!

7. COMPRIMA O SEU HTML E PHP EM GZIP
Tal como no CSS, o seu código HTML provavelmente contem inúmeros espaços em brancos e quebras de linha desnecessárias. Se está a utilizar PHP, poderá recorrer ao modo mod_gzip para Apache para comprimir o seu conteúdo. O Mod_gzip é um módulo para apache que reduz drasticamente o peso de uma página em tempo real, sempre que esta é requesitada pelo browser, que felizmente faz reconhecimento deste tipo de compressão. Se por ventura o browser não compreender o conteúdo comprimido, ele irá apresentar o conteúdo normal a que sempre foi habituado. Sem problemas, ok?

A forma mais fácil de executar esta tarefa, é recorrendo a um ficheiro a .htaccess. Recomendo a utilização de um ficheiro .htaccess pela sua facilidade de implementação e também pela sua versatilidade. Para activar a compressão gzip no seu blog, adicione a seguinte linha ao seu ficheiro .htaccess file.

php_value output_handler ob_gzhandler

Se desejar, leia também um tutorial completo sobre esta matéria no blog Web Coding Tech.

8. UTILIZE A CACHE DO SEU WEBSITE
A Caching é um método de devolver informação a partir de um dispositivo de armazenamento preparado (cache), ao invés de utilizar recursos que produzam a mesma informação sempre que esta é requesitada pelo browser do leitor. Activar a cache do seu website ou blog, irá permitir que os seus leitores leiam o seu blog inúmeras vezes, sem que tenham de estar constantemente a recarregar todos os conteúdos. Uma boa ideia também, é utilizar a cache com uma regra no header do seu blog, que diz ao browser por quanto tempo aquela cache é válida. Como nem todo o conteúdo do seu blog é actualizado diariamente (header, imagens, etc), é importante utilizar a cache.

Caching com mod_headers

# 1 YEAR  
<FILESMATCH ?\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$?>  
Header set Cache-Control “max-age=29030400, public” 
</FILESMATCH>  
 
# 1 WEEK  
<FILESMATCH ?\.(jpg|jpeg|png|gif|swf)$?>  
Header set Cache-Control “max-age=604800, public” 
</FILESMATCH>  
 
# 3 HOUR  
<FILESMATCH ?\.(txt|xml|js|css)$?>  
Header set Cache-Control “max-age=10800″ 
</FILESMATCH>  
 
# NEVER CACHE  
<FILESMATCH ?\.(html|htm|php|cgi|pl)$?>  
Header set Cache-Control “max-age=0, private, no-store, no-cache, must-revalidate” 
</FILESMATCH>

Caching com mod_expires

ExpiresActive On  
ExpiresDefault A0  
 
# 1 YEAR  
<FILESMATCH ?\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$?>  
ExpiresDefault A9030400  
</FILESMATCH>  
 
# 1 WEEK  
<FILESMATCH ?\.(jpg|jpeg|png|gif|swf)$?>  
ExpiresDefault A604800  
</FILESMATCH>  
 
# 3 HOUR  
<FILESMATCH ?\.(txt|xml|js|css)$?>  
ExpiresDefault A10800″  
</FILESMATCH>

9. UTILIZE CACHE NOS SEUS RSS FEEDS
Os RSS Feeds, são uma tecnologia que permite aos webmasters distribuir e publicar o seu conteúdo sindicado na Internet. Assim que o Feed entra na cache ele passa a ser lido pelo disco rígido durante muito tempo. Quando esse período de tempo expira, o RSS Feed é actualizado novamente. Esta funcionalidade permite que o conteúdo seja actualizado recorrentemente sem deixar informação pendente ou desactualizada. A Cache em RSS feeds reduz também a largura de banda consumida. Isto acontece porque o servidor não tem de estar constantemente a carregar e a actualizar o seu Feed RSS, especialmente se você não actualizar o seu blog diaramente.

10. EVITE UTILIZAR ANEXOS SEMPRE QUE POSSÍVEL
Se por ventura o ficheiro que está prestes a anexar ao seu artigo se encontra disponível na web, é bastante melhor você apontar um link para esse mesmo ficheiro, ao invés de carregar uma cópia dele para o seu próprio servidor. Isso significa que você irá consumir muito menos largura de banda desnecessária, algo que nos dias de hoje vale muito dinheiro.

Até Já!


Se gostou deste post, considere subscrever o nosso RSS Feed Completo!
Ou então Subscreva o Fique Rico por Email!

Artigos
Relacionados

Comentários (29) Interações no Twitter (0)

Gostou desse artigo?

Partilhar Comentar

Tweetar Artigo

  • Pedro Santos

    Procura também por CDN no google, nomeadamente Coral CDN e Velocix. A melhor forma de poupar é delegar para outros o serviço de conteúdo (pelo menos do estático).

    A Yahoo também tem várias guidelines para a optimização dos frontends:
    http://developer.yahoo.com/performance/

    19/03/2009

    Responder
  • Leonardo

    Paulo, se desligarmos o hotlink de imagens, os artigos nos feeds não irão ficar com imagens quebradas?

    19/03/2009

    Responder
  • Paulo Faustino

    @ Pedro Santos
    Obrigado pelo comentário. Muito interessante esse CDN. Desconhecia a terminologia e o conceito. Dá um excelente tema para um artigo completo aqui no blog. Se o Pedro estiver interessado em desenvolvê-lo até, terei muito gosto em publicá-lo.

    @ Leonardo
    Obrigado pelo comentário. Teoricamente não porque a imagem é corrida no servidor do autor e os feeds também. Só no caso de alguém fazer um parsing do feed rss noutro site ou blog é que as imagens não são apresentadas.

    19/03/2009

    Responder
  • Rodrigo Piva

    Dicas como sempre, valiosíssimas!
    Valeu por maie essas, Paulo.

    Abraços

    19/03/2009

    Responder
  • César

    Falta umas das coisas mais importantes e decisivas para a descida de carga do servidor e largura de banda.

    - Optimização de tabelas da base de dados, verificar quais são realmente as tabelas importantes e verificar se existe tabelas que são de certa forma dispensáveis (Paulo tu tens mesmo muitas :p ) E ainda actualizar as tabelas em sites antigos existe com certeza muita coisa antiga que apesar de estar no site não é nem será visualizado porque já não é do interesse do leitor .

    - Quanto à largura de banda é preferível usar algum serviço de imagens (pago se quiserem estabilidade) e alojar lá as imagens poderá poupar muitos Gigas de tráfego, mas isto é apenas um caso existe muitos outros.

    São dos pontos mais fundamentais e que me têm safado o upgrade da minha conta e que neste andar não o farei tão cedo.

    19/03/2009

    Responder
  • Cláudio Novais

    Olá Paulo,

    Só gostaria de dizer um reparo que não sei se no português do Brasil é diferente. Pelo menos cá em Portugal, não é aceite a palavra Livrarias para esse material que você está a falar! Em Portugal isso chama-se Bibliotecas.

    A palavra library é um false-friend que significa biblioteca em Português e que muita gente tende a chamar livraria.

    Claro está que não sei como é no Brasil. Falo só do que sei :)

    Abraço,
    Cláudio Novais

    19/03/2009

    Responder
    • No Brasil tb chamamos de biblioteca :D Pelo menos, nós desenvolvedores. Encontrei esse site a poucas horas e me parece que o Paulo é portugues e não brasileiro.

      07/09/2010 Wendel Lima

      Responder
  • ThunderWolf

    Excelente artigo para variar, estou desejoso de começar a sofrer desse problema. :D

    19/03/2009

    Responder
  • Manoel

    Realmente isso é muio interessante para mim, porque uso hospedagens gratuitas para fazer os meus projetos e sempre eles tem sua limitação de banda.
    Grande Artigo Paulo Faustino.
    Nota:Primeiro comentario no blog.

    20/03/2009

    Responder
  • Lage

    Mais um excelente artigo!

    20/03/2009

    Responder
  • Brasil na Italia

    Paulo,

    Muito interessante a temática do artigo.

    Estava pensando sobre essa sua frase:"Se por ventura o ficheiro que está prestes a anexar ao seu artigo se encontra disponível na web, é bastante melhor você apontar um link para esse mesmo ficheiro, ao invés de carregar uma cópia dele para o seu próprio servidor."

    Por mais que gaste um pouco mais de banda, ter uma cópia das imagens no próprio servidor é uma segurança a mais. Se do dia para noite o original desaparecer da rede, você não terá uma cópia da imagem e poderá levar até alguns dias para perceber, deixando o seu site incompleto do ponto de vista do leitor.

    Claro, é tudo uma questão de escolha e de quanto vale a pena o risco/investimento.

    Um abraço e até o próximo post!

    20/03/2009

    Responder
  • P. Cunha

    Paulo,

    Já acompanho o teu blogue á vários meses e desde já te digo que trazes sempre dicas bastante válidas.

    Em relação a este artigo, já o podias ter visto publicado com exactamente os mesmas dicas desde o dia 17 em:

    http://www.xigli.com/10-dicas-para-reduzir-a-carga-do-seu-servidor-e-reduzir-o-trafego/

    Vê lá se isso não irá penalizar o teu blogue por ser conteúdo duplicado.


    Cumprimentos.

    20/03/2009

    Responder
  • Muhammad

    Boas.

    Mesmo assim, mesmo fazendo todos os possíveis para usar o mínimo do VPS torna-se difícil conseguir que este suporte a carga. Depois claro, existe uma optimização própria que se realiza pelo WHM (não me perguntem que não sei como se faz, mas pedi a alguém para o fazer por mim, haha) que permite que a carga seja então reduzida.

    Depois se nada feito, parte-se para um dedicado! :P

    Abraço!

    21/03/2009

    Responder
  • Web Milionário

    Este problema é eterno, tenho 3 servidores dedicados e nunca tenho descanso, preciso sempre de mais!

    24/03/2009

    Responder
  • Jonatan

    show de bola, vou começar seguir essas dicas. ainda bem que o host tá de boa.

    29/03/2009

    Responder
  • Thiago Alexandre

    Eu já uso quase todas essas dicas e realmente reduziu drasticamente o uso de banda. O que preciso fazer é o uso de "DESLIGUE DO HOTLINKING DAS IMAGENS".
    Abraço!

    01/04/2009

    Responder
  • Rui Durão

    Bom dia Paulo, tudo bem consigo?

    Sobre poder-se delegar o conteudo a terceiros como já foi referido nos comentários, há uma forma de alojar as imagens e outros ficheiros num servidor (www.divshare.com) em que tem 5Gb para alojar online gratuitamente, em que podemos uploadar qualquer tipo de ficheiro, desde documentos, a imagens, a videos, podendo no caso das imagens fazer-se um loading delas no nosso servidor sem estarem alojadas no mesmo, e no caso dos videos funciona da mesma forma que quando queremos fazer embed de videos do youtube.

    Espero que esta dica seja util.

    Parabéns pelo post.

    08/04/2009

    Responder
  • Daniel Ribeiro

    Paulo, excelentes as dicas. Mas gostaria de fazer uma observação. A compressão GZip nem sempre funciona bem. Algumas vezes eu entrava com algum navegador diferente, como o Google Chrome ou o Opera em meu blog, e em vez de aparecer o conteudo, apareciam muitos códigos estranhos e caracteres diferentes, sem layout, sem formatação. Como se tivesse aberto um arquivo binario no notepad. Descobri que este problema era por causa da compressão Gzip, disponível no plugin WP-Supercache para Wordpress. Depois de desabilitar esta funcionalidade, o blog não deu mais este problema e eu percebi um pequeno aumento na visitação (5% mais ou menos).

    Hoje aplico a maioria das dicas que dá aqui, menos a de Hotlinking e a de GZip.

    Até mais!

    21/04/2009

    Responder
  • Diego

    Daniel Ribeiro, GZIP é a mais importante. Você não consigurou corretamente. Procure mais informações arespeito e use. Google e Yahoo recomendam e utilizam por apresentar uma grande ajuda.

    26/01/2010

    Responder
  • Daniel Ribeiro

    Não configurei direito? A configuração é "Habilitado" ou "Desabilitado". Não tem como não ter configurado direito. Se eu habilito, não funciona, se eu desabilito, funciona. Então ficou desabilitado.

    26/01/2010

    Responder
  • Poesias de Amizade

    Olá,

    Gostei da dicas, frequentemente tenho problemas com a banda que é insuficiente, creio que terei de contratar um plano com maior espaço e mais banda.

    Abraços!

    24/02/2010

    Responder
  • Criar Meu Site

    Realmente a compressão gzip funciona bem e traz ótimos resultados no posicionamento Google. Um abraço.

    14/06/2010

    Responder

Deixe seu comentário

Seu Gravatar

Para você partcipar dessa lista tem de estar cadastrado no Twitter. Cadastre-se agora!

Rede Escolas Plus

  • Psicologia

    Artigos sobre Psicologia, Motivação e muito mais, de uma forma prática e simples que lhe permitem melhorar a sua vida pessoal e profissional.

  • Criatividade

    Melhore a sua Criatividade através de tutoriais de desenvolvimento web, webdesign, dicas de inspiração, e muito mais.

  • WordPress

    Torne seu WordPress numa verdadeira máquina com nossos artigos, templates exclusivos, plugins e tutoriais totalmente em português.

  • Freelancer

    Arrisque em sua carreira de Freelancer seguindo nossas estratégias, dicas e recomendações, e leve seu negócio ao sucesso já hoje.

  • Apostas

    Gostava de ganhar dinheiro com seus palpites sobre esportes? Siga nossos tutoriais e dicas sobre como fazer apostas esportivas.