Dúvida sobre cache
-
Olá a todos,
A menos de um mês tive a oportunidade de conhecer e instalar o PfSense (2.0.2-Release i386) em uma máquia com a seguinte configuração:
Processador: Intel Core 2 Quad CPU Q8400 2,66 GHz
Memória: 4GB
HD SATA: 350 GB
eth0: WAN
eth1: LANPacotes instalados: Squid3, Sarg
Configurei o proxy para realizar o cache (na aba: Local Cache)
Cache replacement policy: Heap LFUDA
Low-water-mark in %: 90
High-water-mark in %: 95
Hard disk cache size: 2048
Hard disk cache system: ufs
Level 1 subdirectories: 32
Hard disk cache location: /var/squid/cache
Minimum object size: 0
Maximum object size: 1024
Memory replacement policy: Heap GDSFO "problema" que estou tendo é que não tenho certeza de que o cache está funcionando. Às vezes, percebo que ao acessar uma determinada página que já foi acessada anteriormente, o processo de carregar a mesma é demorado. Como verificar se o cache está funcioando? Caso minha conexão com a Internet caia, consigo acessar uma determinada página se ela estiver armazeanda na cache?
Verifiquei o diretório /var/squid/logs encontrei os sequintes arquivos:
access.log 34540.54KiB
access.log.0 6272.37KiB
access.log.1 1294.95KiB
access.log.2 8817.94KiB
cache.log 82.05KiB
cache.log.0 119.59KiB
cache.log.1 0.24KiBAo verificar esses arquivos tive dúvidas se é normal esses 4 arquivos de access.log e 3 arquivos de cache.log. Não era para ter apenas um de cada? Será que é isso que está fazendo o chache não funcionar?
Espero ter sido claro na minha explicação.
Grato a quem responder.
-
Rmulo, bem vindo ao fórum! :)
Os arquivos com numero no final são os logs rodados ou rotacionados. Você provavelmente marcou esta opção no sarg.
Eles não atrapalham o cache de forma alguma.com relação ao squid, veja na aba de tempo real se os acessos tem o TCP_MISS ou TCP_HIT. TCP_MISS significa que o squid não encontrou no cache e enquanto o TCP_HIT ou TCP_MEM_HIT significam que o cache foi encontrado e entregue ao usuário.
-
Bom dia Marcelloc
Vi sua resposta a este topico então fui verificar no meu.
Interessante que no relatório so encontro o seguinte status TCP_MISS/200 e TCP_DENIED/407 fiquei monitorando um tempo legal e não vi estes outros status. -
Sei que no squid3 a opcão de cache dinamico esta bugada. Faz um teste e veja se o resultado muda.
-
Estou utilizando o squid3 com a opção Cache Dinamico.
Desmarquei e continua somente com o TCP_MISS.Estou utilizando o squid3 com havp.
-
Rmulo, bem vindo ao fórum! :)
Os arquivos com numero no final são os logs rodados ou rotacionados. Você provavelmente marcou esta opção no sarg.
Eles não atrapalham o cache de forma alguma.com relação ao squid, veja na aba de tempo real se os acessos tem o TCP_MISS ou TCP_HIT. TCP_MISS significa que o squid não encontrou no cache e enquanto o TCP_HIT ou TCP_MEM_HIT significam que o cache foi encontrado e entregue ao usuário.
Bom dia.
Ao realizar o acompanhamento em tempo real, observei que uma grande quantidade de status se dá por TCP_MISS/200 e TCP_MISS_304. Aparecem poucos TCP_HIT, TCP_IMS_HIT, TCP_REFRESH_UNMODIFIED/304
-
Olá
Tente apagar o cache do Squid.
Vá em Status>Services e de "Stop" no Squid.
Depois entre via SSH usando o WinSCP ou programa similar e apague o conteudo do diretório /var/squid/cache.
Agora abra o console e no Shell execute o comando squid -z
Depois é só iniciar o Serviço Squid novamente.
-
Boa tarde.
Fiz conforme o LFCavalcanti e mesmo assim não consegui notar o cache no log do squid.
Continua tudo como TCP_MiSS/200. -
Descobri o motivo do squid3 com squidguard não estava armazenando cache.
E o seguinte.
No Custom Settings no campo Integrations tenho a seguinte configuração.Esta ACL informa os Sites que são acessíveis sem passar pelo proxy
acl SITES_NO_PROXY url_regex "/var/db/squidGuard/SITES_NO_PROXY/domains";
http_access allow SITES_NO_PROXY;Esta ACL são os Sites que não armazena CACHE
acl SITES_NO_PROXY url_regex "/var/db/squidGuard/SITES_NO_PROXY/domains";
http_access allow SITES_NO_PROXY;Regra de integração com o squidguard
redirect_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf;
redirector_bypass off;url_rewrite_children 5O problema se eu utilizar a regra que não armazena CACHE simplesmente ele para de fazer cache para tudo.
Para mim o squid deveria parar de fazer cache somente no site que esta dentro do arquivo domains que é o IP 201.14.126.11.Então se eu retirar a ACL para não armazenar CACHE ai o squid volta a fazer cache normalmente.
-
Parece que descobri o erro.
Tavo aceitando allow no SITES_NO_CACHE o correto e denny pois tenho que negar o cache para o site que esta dentro de domains.acl SITES_NO_CACHE url_regex "/var/db/squidGuard/SITES_NO_CACHE/domains";
no_cache denny SITES_NO_CACHE -
Gilmar. Boa Tarde.
Estou acompanhando o seu tópico e passou pelo mesmo problema com o cache do squid. Gostaria de saber como ficaria correto o código abaixo:
redirect_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf;redirector_bypass on;redirect_children 3
Tenho esse código no squid 3 ( Available: 3.1.20 pkg 2.0.5_8 Installed: 3.1.20 pkg 2.0.5_5 ) Custom Settings no campo Integrations. Teria como vc passar o código completo para que eu possa conseguir fazer corretamente o cache e assim chegar no resultado esperado?
Abraços e obrigado.
ATT
Breno Alencar
-
redirect_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf;redirector_bypass off;url_rewrite_children 5
Fica desta forma acima.
Agora se você remover a linha deixar nda e reiniciar o servidor a linha é adicionada automaticamente.
No meu caso o problema estava em outra regra informando para não fazer cache para um site. -
Tenho esse código no squid 3 ( Available: 3.1.20 pkg 2.0.5_8 Installed: 3.1.20 pkg 2.0.5_5 )
Já tentou aplicar a atualização?
-
Marcello. Desinstalei o pacote e instalei novamente e a versão continua a mesma ( Available: 3.1.20 pkg 2.0.5_8 Installed: 3.1.20 pkg 2.0.5_5 ).
Tem algum procedimento para atualizar o pacote ou fiz da forma certa?Abraços.
Gilmar. Voce conseguiu fazer o cache funcionar do jeito que queria. Caso sim tem como passar o procedimento para os demais colegas aqui do forum?
Abraços.
ATT
Breno Alencar
-
boa tarde.
Postei aqui no penultimo email.Parece que descobri o erro.
Tavo aceitando allow no SITES_NO_CACHE o correto e denny pois tenho que negar o cache para o site que esta dentro de domains.acl SITES_NO_CACHE url_regex "/var/db/squidGuard/SITES_NO_CACHE/domains";
no_cache denny SITES_NO_CACHEEra que no local de denny tavo usando Allow.
Apenas isso.
Bom eu retirei o havp agora irei coloca-lo de volta. -
Gilmar. Desculpas, mas só não consegui entender o caminho desse arquivo ou como chegar nessa linha para alterar de allow para denny. E também ainda não entendi se fazendo esse procedimento voce conseguiu de fato resolver o problema de cache como voce queria.
Abraços e mais uma vez desculpas pela ignorancia.
ATT
Breno Alencar
-
Esta linha e porque utilizo o squidguard para cadastrar os sites que não ira passar pelo cache.
Então eu personalizo.
No seu caso você não utiliza. -
Breno você tentou matar o parar o squid em seguida matar o cache e cria-lo com o squid -z?
Depois no relatorio do squid em tempo real faz o filtro por TCP_HIT. -
Marcello. Desinstalei o pacote e instalei novamente e a versão continua a mesma ( Available: 3.1.20 pkg 2.0.5_8 Installed: 3.1.20 pkg 2.0.5_5 ).
Breno, pode explicar como conseguiu instalar uma versão antiga? você esta usando alguma versão "personalizada" do pfsense?
-
Marcello. Uso a versão 2.0.2 amd64. Desinstalei pelo WEBGUI, na opção correspondente, e logo em seguida refiz a instalação novamente. Não reiniciei o servidor e tão pouco mudei de janela na opção Packets. Assim que terminou a instação notei que a versão instalada era exatamente igual a que tinha antes.
Se tiver mais alguma duvida é só perguntar.
Abraços
ATT
Breno Alencar
-
Sei que no squid3 a opcão de cache dinamico esta bugada. Faz um teste e veja se o resultado muda.
Boa tarde Marcelloc,
Ativei a opção de cache dinamico, mas continua do mesmo jeito. No status sempre aparece TCP_MISS.
-
Ativei a opção de cache dinamico, mas continua do mesmo jeito. No status sempre aparece TCP_MISS.
Desative o cache dinâmico, o código foi baseado em uma wiki do squid, mas o resultado não é satisfatório.
-
Aproveitando o tópico, segue em anexo um relatório do meu cache, to achando muito baixo o hit de memória e disco visto que os mesmos sites são acessados todos os dias e nem são páginas dinâmicas, gostaria da ajuda dos colegas pra saber se a configuração está bem feita ou não.
Conf squid 2.7.9 pkg v.4.3.3:
cache_mem 128 MB
maximum_object_size_in_memory 32 KB
memory_replacement_policy heap GDSF
cache_replacement_policy heap LFUDA
cache_dir aufs /var/squid/log 10240 16 256
minimum_object_size 0 KB
maximum_object_size 20240 KB
offline_mode off
cache_swap_low 95
cache_swap_high 98 -
bom dia pessoal
olha esse negocio de cache do squid, sempre foi e é uma grande dúvida que tenho. Sei que a configuração do cache dele vai depender muito da configuração da maquina (memória ram, hd e cpu) e sei que um cache mal configurado, pode e muito comprometer a sua internte. Eu tenho aqui umas configurações e tenho quase certeza que estão erradas, masssssss como esta funcionando, deixe queto. ;D
agora voltando ao assunto, não sei vocês colegas, na no squid3>Real Time, realmente se vc ficar observando vai aparecer muitos TCP_MISS/200, e poucos TCP_HIT/200 (meu caso). Mas se vc filtar em String filter, e colocar TCP_HIT, vai aparecer os TCP_HIT/200. Então na teoria, o cache do squid esta funcionando. Agora minha dúvida é:
é normal aparecer mais TCP_MISS/200, do que TCP_HIT/200?
todo novo site acessado, ele é guardado no cache, e depois quando for acessado de novo, ele é pego do cache do squid? ou depende? falo isso pq aqui na minha empresa, tem sites que todo santo dia, os usuario acessam eles, e eu observando no Squid>Real time, eles aparecem TCP_MISS/200 e nao TCP_HIT/200.
e outra dúvida, quando o site ele é "colocado" no cache, oq eu realmente vai do site para o cache?
abraço
-
Como os sites hoje são basicamente dinamicos, acho o comportamento normal.
-
redirect_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf;redirector_bypass off;url_rewrite_children 5
Fica desta forma acima.
Agora se você remover a linha deixar nda e reiniciar o servidor a linha é adicionada automaticamente.
No meu caso o problema estava em outra regra informando para não fazer cache para um site.Ola Gilmar poderia me ajudar!! vi esse topico então estou aproveitando para mostrar se a minha configuração esta correta.
redirect_children 3;redirect_program /usr/local/bin/squidGuard -c
/usr/local/etc/squidGuard/squidGuard.conf;redirector_bypass
off;url_rewrite_children 5a linha está correta ou tenho que mudar alguma coisa?pois a sua esta diferente da minha.
há como faço para ver em tempo real os acessos, para visualizar o TCP_MISS e TCP_HIT.