Thunder Cache - Cache inteligente

Thunder Cache é um sistema que trabalha em conjunto ao Squid, rescrevendo URLs e guardando arquivos para melhorar o desempenho do Squid. O software foi idealizado por Luiz Biazus e desenvolvido por Rodrigo Manga.

[ Hits: 125.473 ]

Por: Rodrigo Manga em 27/03/2009


Instalação do Thunder Cache



Configure o seu Squid de acordo com suas necessidades e depois adicione as seguintes linhas em seu squid.conf:

#OPÇÕES DE REDIRECIONAMENTO

url_rewrite_children 10
#nesta linha estão os domínios que o Thunder Cache vai trabalhar, pegue o domínio correto em cada um dos plugins
acl store_rewrite_list dstdomain acl store_rewrite_list dstdomain .youtube.com .avast.com .avg.com .windowsupdate.com .grisoft.com .avgate.net .googlevideo.com .globo.com .mais.uol.com.br .terra.com .redtube.com .ytimg.com .pornhub.com .tube8.com .eset.com .orkut.com .4shared.com .xvideos.com
url_rewrite_access allow store_rewrite_list
url_rewrite_access deny all
url_rewrite_program /etc/squid/loader.php

#nega cache local, para não haver duplicação
acl localcache dstdomain ip_do_seu_servidor
cache deny localcache

Descompacte os arquivos no diretório /etc/squid/.

Com o pacote original de plugins, precisamos fazer alguns links simbólicos:

# ln -s /etc/squid/youtube.com.php /etc/squid/googlevideo.com.php
# ln -s /etc/squid/avg.com.php /etc/squid/grisoft.com.php


Crie o link do thunder.php no diretório do Apache:

# ln -s /etc/squid/thunder.php /var/www/thunder.php

Crie o diretório que vai abrigar os arquivos e mude as permissões de acesso:

# mkdir /var/www/thunder
# chmod a+rw -R /var/www/thunder
# chmod a+x /etc/squid/loader.php
# chmod a+x /etc/squid/downloader.php


Importe as configurações do banco de dados. No terminal, digite o seguinte comando, alterando o que for necessário, como usuário e senha do MySQL:

# mysql -u USER -pSENHA < thunder.sql

O sistema na sua configuração padrão usa o superusuário (root) para acessar o banco de dados, não esqueça de definir a senha para acesso ao MySQL (use o phpmyadmin).

Verifique o arquivo /etc/squid/thunder.conf, altere as configurações necessárias ($cache_limit, $server_ip etc) e reinicie o Squid com o comando:

# squid -k reconfigure

Agora deverá estar tudo funcionando!

Página anterior     Próxima página

Páginas do artigo
   1. O que é Thunder Cache
   2. Instalação do Thunder Cache
   3. Finalizando
Outros artigos deste autor

ECache - O cache efetivo

Leitura recomendada

Administrando Squid pelo browser, bloquear e liberar máquinas por IP, login, palavras

Squid com autenticação

Squid - Configuração básica, funcional e limpa

Projeto Squid

Corrigindo a falha "WARNING! Your cache is running out of filedescriptors" - Squid2.7STABLE9 Slackware 12

  
Comentários
[1] Comentário enviado por pogo em 27/03/2009 - 11:24h

Rodrigo,

Parabéns pela iniciativa. O programa realmente parece promissor. Vou testá-lo no meu lab e depois posto opiniões sobre ele aqui =)

[]'s

Pogo

[2] Comentário enviado por demoncyber em 27/03/2009 - 13:25h

Oi,

Tem algum benchmark com e sem a solução na rede ou contra outra soluções
No mais parece ser uma otima ferramenta :)

Parabéns pelo artigo.

[3] Comentário enviado por rodrigomanga em 27/03/2009 - 14:24h

é só ver o relatório, assim você vai ter noção de quanta economia é gerada, pois os mesmos arquivos são requisitados várias vezes.

[4] Comentário enviado por removido em 27/03/2009 - 14:48h

Manga:

agora é dar um jeitinho de ganhar dinheiro com esta idéia, não????
Filosofia é bom mas temos que sobreviver e ganhar dinheiro com SL NÃO é pecado...

Sugestão: escreva para a linux magazine oferecendo para fazer um artigo; eles devem se interessar e isso abre as portas para vcs
Sugestão: contate o Fábio do VOL oferecendo seu software na distro VOL que ele vai criar. Na venda do suporte às empresas, vc integra junto suportando o software e tira um dim-dim extra...

bye,


acvsilva

[5] Comentário enviado por rodrigomanga em 27/03/2009 - 15:03h

é!
o software é livre, mas não é escravo!

Obrigado pelas dicas!

[6] Comentário enviado por cassimirinho em 27/03/2009 - 21:12h

Putz, cache para PORNHUB.COM
kkkkkkkkkkkkk

É interessante.

[7] Comentário enviado por elvisrafa em 27/03/2009 - 23:18h

olá rodrigo
fiz todo procedimento normalmente conforme informado no site, porém quando vou usar a net ele chega a carregar algumas paginas porem após uns 30 segundo começa a dar falha no carregamento das paginas até chegar no momento que não abre nada....e geralmente não consigo abrir a pagna do youtube, começa a carregar só que não conclui....
estou postando meu arquivo de conf do squid...tive que comentar as linhas de configuração do Thunder cache pra rodar o squid normalmente....
Pode me Ajudar?....se tem algo de errado no meu squid.conf.....?!
vlw!!!

http_port 3128 transparent
visible_hostname ServerRF


cache_mem 64 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 2024 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 15360 16 256
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280

########### Cache Videos ###########
#refresh_pattern -i \.flv$ 10080 90% 999999 ignore-no-cache override-expire ignore-private

#acl youtube dstdomain .youtube.com

################################

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 139 # netbios-ssn
acl Safe_ports port 135 # msrpc
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 445 # microssoft-ds
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 600 # ipcserver
acl Safe_ports port 777 # multiling http
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

acl proibidos dstdom_regex "/etc/squid/proibidos"
http_access deny proibidos

#acl bloqueados dstdomain orkut.com www.orkut.com playboy.abril.com.br
#http_access deny bloqueados

acl redelocal src 192.168.1.0/24
#delay_pools 1
#delay_class 1 2
#delay_parameters 1 262144/262144 89600/89600
#delay_access 1 allow redelocal
http_access allow localhost
http_access allow redelocal

#OPÇÕES DE REDIRECIONAMENTO

#url_rewrite_children 10
#nesta linha estão os domínios que o Thunder Cache vai trabalhar, pegue o domínio correto em cada um dos plugins
#acl store_rewrite_list dstdomain acl store_rewrite_list dstdomain .youtube.com .avast.com .avg.com .windowsupdate.com .grisoft.com .avgate.net .googlevideo.com .globo.com .mais.uol.com.br .terra.com .redtube.com .ytimg.com .pornhub.com .tube8.com .eset.com .orkut.com .4shared.com .xvideos.com
#url_rewrite_access allow store_rewrite_list
#url_rewrite_access deny all
#url_rewrite_program /etc/squid/loader.php

#nega cache local, para não haver duplicação
#acl localcache dstdomain 192.168.1.100
#cache deny localcache


http_access deny all



[8] Comentário enviado por elvisrafa em 27/03/2009 - 23:23h

outra duvida....no caso do Thunder.conf está certo do jeito que coloquei?!
$cache_dir = "/var/www/thunder";
$domain_dir = false; // set true if you need separate into dir of domain, set to false system add prefix domain into filename
$cache_limit = 1024*1024*20;// in bytes! 1024*1024*20 = 20 Mb (isso seria oq?)
$cache_scr = "/etc/squid";
$mysql_host = "192.168.1.100";
$mysql_user = "root";
$mysql_pass = "Coloquei minha senha de root do mysql";
$server_ip = "192.168.1.100";
$cache_url = "http://$server_ip/thunder";
$cache_log = "/var/log/syslog"; //"/tmp/rewriter.log";
$logadd_on = false;
$redir = "302:"; // keep empty if you need a internal rewriter
$proxy_host = ""; // keep it empty if you dont need proxy
$proxy_port = "3128";

// advanced params - IF YOU DONT KNOW, DONT TOUCH!
$packet_size = 200; // in bytes
$packet_delay = 2000;// time in micro second
$download_timeout = 10;

Obs: estou começando agora na parte de linux.....o basico eu sei fazer....rsrsrs....apesar de tudo estar explicadinho no seu tuto.....no meu server não está rolando....
vlw

[9] Comentário enviado por elvisrafa em 27/03/2009 - 23:42h

eu não sei se é uma falha.....mas acho que achei um erro...se não for por favor desconsidere

no tuto logo no começo da configuração tem uma parte assim:
acl store_rewrite_list dstdomain acl store_rewrite_list dstdomain .youtube.com .avast.com .avg.com .windowsupdate.com

observer que repete duas vzs: acl store_rewrite_list dstdomain acl store_rewrite_list dstdomain
eu tirei uma e aparentemente funcionou....será que é isso que estava errado e dava problema?!
fico no aguardo.....de ajuda....Obrigado>...
rs.....

[10] Comentário enviado por paulojrandrade em 28/03/2009 - 09:21h

Ola pessoal, uso o Thunder a quase um ano, desde a primeira versão o já falecido Ecache.
Agora o Thunder esta muito melhor. Tenho em produção a 01 mês e já cache-ei mais de 90Gb de WU, youtube, Globo, Redtube etc etc.
Se alguem tiver problema na instalação dá um pulo no http://www.biazus.com/forum... tem tudo q vcs precisam pra fazer ele rodar.
Recomendo a todos.

PS: Geralmente nao roda por erro de permissões...

[11] Comentário enviado por rodrigomanga em 28/03/2009 - 09:22h

quem estiver com problemas, acesse o forum do Thunder Cache, lá que damos suporte, e compartilhamos problema se soluções.

Elvis, realmente tem um erro de copy paste naquela linha sim, eu havia percebido, mas esqueci de avisar aqui.

[12] Comentário enviado por carlosdias98 em 29/03/2009 - 03:15h

Gente quem tiver a oportunidade de testar não percam tempo. Esse programa ai é de outro planeta, eu acho que o Luiz teve contato com extra terrestre na primeira versão do software em bash script ai o alienigena que deu a ideia veio para terminar, que é o Rodrigo.rsrsrs

Parabéns, mais uma vez.

Pessoal passem no forúm, que lá vocês podem tirar todas as dúvidas.

Abraços

[13] Comentário enviado por rodrigomanga em 02/04/2009 - 17:01h

galera, a versão 2.1 do thunder cache já está disponível no SVN, baixem e aproveitem! agora não utiliza mais o MYSQL, es tá voandoooo

[14] Comentário enviado por acronimo em 19/06/2009 - 17:06h

amigos alguem ja fez ele rodar no slackware, estou com problemas rsr
abraços

[15] Comentário enviado por darci.vieira em 13/08/2009 - 21:46h

Ola utilizo uma maquina vmware com Ubuntu e fiz todos os procedimentos pois é pra uso residencial. Porém não funcionou aqui, parece que não faz cache

[16] Comentário enviado por fabiogonpereira em 08/09/2009 - 17:55h

Grande Rodrigo Manga, eu vi algo sobre substituir a publicidade do msn, consegui fazer aqui, mas o que mais me interressou foi a do google, youtube, os ads ... sera que vc tem a acl pra gente testar, a que muda a logo desses dominios pra nossa, obrigado.

[17] Comentário enviado por tayronne em 21/09/2009 - 10:18h

ola amigos, fiz tudo certinho mas na hora de digitar o comando

# squid -k reconfigure

aparece esse erro

squid: ERROR: Could not send signal 1 to process 5446: (3) No such proces

o que poderia ser isso?

[18] Comentário enviado por zapmobile em 22/10/2009 - 16:27h

Fiz tudo como foi orientado só que quando vou fazer o passo do Mysql da o seguinte erro:

root@servidor:~# mysql -u USER -p phpmyadmin < thunder.sql
bash: thunder.sql: Arquivo ou diretório inexistente

Será que alguém pode me ajudar: zapmobile@gmail.com

[19] Comentário enviado por capitainkurn em 30/11/2009 - 11:52h

Parabéns pela iniciativa, gostei demais do artigo!

Ficaria muito grato se você escrevesse um artigo sobre o funcionamento do Thundercache, não apenas sobre sua implementação para produção. O motivo deste meu pedido é que eu gostaria de usar o seu projeto como base para um semelhante só que em cgi shell, e não sou muito familiarizado com a sintaxe do PhP.

Muito bom mesmo, parabéns!

[20] Comentário enviado por elhinho em 19/04/2010 - 22:20h

Ola!!

bom é o seguinte, ja pesquisei em varios blogs, mas ainda não consegui encontrara solução para o meu problema...

vamos lá!!!!

instalei o thundercache 3 no debian, e estou tetando configurar...consegui fazer ele funcionar em partes, ele ja mostra o relatório certinho, o problema é q ele só guarda o cache do orkut e nada ++....

o principal é o youtude, pois consome muita banda!!...

se alguem poder me ajudar..agradeço mt!!...vlw


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts