Squid - Entendendo um pouco as configurações

Veremos alguma teoria e as configurações mínimas do Squid, baseadas no "squid.conf" e com comentários,

[ Hits: 62.331 ]

Por: Buckminster em 19/04/2013


Desempenho do Squid



Em relação ao desempenho do Squid, alguns tipos de ACL requerem a suspensão da solicitação atual para acessar uma fonte de dados externa.

Alguns tipos de ACLs exigem informações que podem não estar mais disponíveis para o Squid, e isso requer suspensão do trabalho na atual solicitação, tendo que consultar alguma fonte externa e retomar o trabalho quando a informação estiver disponível.

Este é, por exemplo, o caso do DNS, dos autenticadores e dos scripts de autorização externa. As ACLs podem, assim, ser divididas em ACLs rápidas [fast] que não necessitam ir às fontes externas e ACLs lentas [slow].

Conhecer o comportamento das ACLs é relevante, porque nem todas as diretivas suportam todos os tipos de ACLs. Se uma ACL do tipo SLOW tem que ser verificada e os resultados da seleção não estão no cache, essa ACL não será correspondida.

O Squid armazena os resultados de pesquisas das ACLs sempre que possível, porém, as ACLs lentas nem sempre precisam consultar fontes de dados externas. Em outras palavras, as ACLs do tipo SLOW não são confiáveis em todas as cláusulas de verificação de acesso.

As ACLs rápidas estão marcadas com [fast] no "squid.conf" e as ACLs lentas estão marcadas com [slow]. As ACL marcadas com {R} são ACLs de resposta.

As listas abaixo podem estar incompletas. Para ter a lista completa do tipo de ACL da sua versão do Squid, consulte o arquivo "squid.conf.documented".

À propósito, o "squid.conf", além de quilométrico, é de uma confusão sem tamanho. Se foi apenas um sujeito que elaborou aquilo ali, esse cara deve ter algum distúrbio mental.

Lista de ACLs rápidas (Squid 3):
  • all (built-in)
  • src
  • dstdomain
  • dstdom_regex
  • myip
  • arp
  • src_as
  • peername
  • time
  • url_regex
  • urlpath_regex
  • port
  • myport
  • myportname
  • proto
  • method
  • http_status {R}
  • browser
  • referer_regex
  • snmp_community
  • maxconn
  • max_user_ip
  • req_mime_type
  • req_header
  • rep_mime_type {R}
  • user_cert
  • ca_cert

Lista de ACLs lentas:
  • dst
  • dst_as
  • srcdomain
  • srcdom_regex
  • ident
  • ident_regex
  • proxy_auth
  • proxy_auth_regex
  • external
  • ext_user
  • ext_user_regex

Cláusulas de acesso rápido:
  • icp_access
  • htcp_access
  • htcp_clr_access
  • miss_access
  • ident_lookup_access
  • reply_body_max_size {R}
  • authenticate_ip_shortcircuit_access
  • log_access
  • header_access
  • delay_access
  • snmp_access
  • cache_peer_access
  • ssl_bump
  • sslproxy_cert_error
  • follow_x_forwarded_for

Cláusulas de acesso lento:
  • http_access
  • adapted_http_access (2.x call this http_access2)
  • http_reply_access
  • url_rewrite_access
  • storeurl_access
  • location_rewrite_access
  • always_direct
  • never_direct
  • cache

Cálculo do cache_dir e do cache_mem

O "cache_mem" do Squid, especifica a quantidade ideal de memória a ser usada para:

# * In-Transit objects (Objetos em trânsito)
# * Hot Objects (Objetos Hot)
# * Negative-Cached objects (Objetos em cache negativo)


Os objetos em trânsito são objetos que estão sendo buscados em servidores remotos, enquanto "objetos quentes" são objetos que o Squid decidiu que são populares o suficiente para que uma cópia seja mantida na memória, para acelerar o acesso (objetos constantemente solicitados).

E objetos em cache negativo, significam objetos não-cacheáveis, como por exemplo, logs de mensagens de status HTTP. O cache negativo evita a repetição de consultas adicionais para objetos que não mais existem.

Os objetos que têm trânsito, têm prioridade, ou seja, quando exceder o limite da memória, o Squid liberará o espaço dos Hot Objects e dos Negative-cached Objects para guardar os objetos em Trânsito. Todos os objetos são armazenados na memória em blocos de 4 KB.

Página anterior     Próxima página

Páginas do artigo
   1. Squid
   2. Desempenho do Squid
   3. Cálculo do cache_dir e do cache_mem
   4. Configurações mínimas recomendadas com comentários
Outros artigos deste autor

Como um monte de letras de um código fonte transforma-se em voltagens?

O Kernel Linux

Tradução do artigo do filósofo Gottfried Wilhelm Leibniz sobre o sistema binário

DHCP com controle de IP e compartilhamento no Debian Squeeze

Compilação do Squid 3 no Debian Wheezy

Leitura recomendada

Manual traduzido do Squid - Parte 3

Administrando usuários do Squid via web como o Admuser

Destrinchando a compilação do Squid

Direcionando log Squid para banco MySQL

Squid + SSL

  
Comentários
[1] Comentário enviado por danniel-lara em 19/04/2013 - 12:00h

Parabéns pelo Artigo Muito bom

[2] Comentário enviado por Buckminster em 19/04/2013 - 18:00h

Obrigado.
Estamos aí, Daniel!

[3] Comentário enviado por TioRoni em 19/04/2013 - 20:19h

Muito bom mesmo João, vc é o cara.

[4] Comentário enviado por Buckminster em 19/04/2013 - 23:42h


[3] Comentário enviado por TioRoni em 19/04/2013 - 20:19h:

Muito bom mesmo João, vc é o cara.


Valeu Roni.

[5] Comentário enviado por K1ll3r_B0y em 23/04/2013 - 15:40h

Parabéns, ótimo artigo!

[6] Comentário enviado por Buckminster em 24/04/2013 - 03:26h


[5] Comentário enviado por K1ll3r_B0y em 23/04/2013 - 15:40h:

Parabéns, ótimo artigo!


Agradeço pelo apoio.

[7] Comentário enviado por tomtom007 em 26/04/2013 - 10:16h

Parabéns muito bom seu artigo !!!

[8] Comentário enviado por Buckminster em 26/04/2013 - 19:05h


[7] Comentário enviado por tomtom007 em 26/04/2013 - 10:16h:

Parabéns muito bom seu artigo !!!


Obrigado.

[9] Comentário enviado por KamenBlackRX em 29/04/2013 - 15:47h

Obrigado, Resolvel minha duvida :D Parabéns cara. Otimo Artigo!

[10] Comentário enviado por Buckminster em 29/04/2013 - 16:21h


[9] Comentário enviado por KamenBlackRX em 29/04/2013 - 15:47h:

Obrigado, Resolvel minha duvida :D Parabéns cara. Otimo Artigo!


De nada. Obrigado.

[11] Comentário enviado por Sylverone em 30/04/2013 - 15:29h

Ótimo Artigo!!
Obrigado

[12] Comentário enviado por Buckminster em 30/04/2013 - 17:56h


[11] Comentário enviado por Sylverone em 30/04/2013 - 15:29h:

Ótimo Artigo!!
Obrigado


De nada!

[13] Comentário enviado por obernan em 08/05/2013 - 16:09h

Kara muito bom seu artigo. Parabéns !!!!! Está muito esclarecedor.

[14] Comentário enviado por Buckminster em 09/05/2013 - 19:04h


[13] Comentário enviado por obernan em 08/05/2013 - 16:09h:

Kara muito bom seu artigo. Parabéns !!!!! Está muito esclarecedor.


Obrigado.

[15] Comentário enviado por ribeirosga em 13/09/2013 - 09:58h

Artigo excelente...

[16] Comentário enviado por Buckminster em 22/09/2013 - 17:06h


[15] Comentário enviado por ribeirosga em 13/09/2013 - 09:58h:

Artigo excelente...


Obrigado.

[17] Comentário enviado por rotaviano em 23/11/2013 - 17:23h

showwwwwwwwwwww parabens

[18] Comentário enviado por Buckminster em 09/12/2013 - 19:23h


[17] Comentário enviado por rotaviano em 23/11/2013 - 17:23h:

showwwwwwwwwwww parabens


Obrigado.

[19] Comentário enviado por removido em 18/12/2013 - 08:36h

Você é o MRs Squid.... Hehehe, aprendo muito com vc. Obrigado pelos ótimos artigos.

[20] Comentário enviado por arasouza em 27/03/2014 - 11:22h

Cara primeiro parabéns, pelas contribuições que são várias ao vivaolinux e a comunidade em geral, apenas uma dúvida eu estou tendo uns problemas de lentidão com meu squid de uns dias pra cá.. andei dando uma pesquisada e vi seu artigo (muito bom por sinal) e vi que vc tem uma sequência bem diferente do que estou acostumado, essa sequencia pode ser seguida, ou vc apenas está explanando, tipo eu não vou dar um copiar e colar dentro do meu squid.conf conforme o artigo pois teria que colocar os comandos na sequencia correta??? valeu pela ajuda.

[21] Comentário enviado por Buckminster em 31/03/2014 - 09:08h


[20] Comentário enviado por arasouza em 27/03/2014 - 11:22h:

Cara primeiro parabéns, pelas contribuições que são várias ao vivaolinux e a comunidade em geral, apenas uma dúvida eu estou tendo uns problemas de lentidão com meu squid de uns dias pra cá.. andei dando uma pesquisada e vi seu artigo (muito bom por sinal) e vi que vc tem uma sequência bem diferente do que estou acostumado, essa sequencia pode ser seguida, ou vc apenas está explanando, tipo eu não vou dar um copiar e colar dentro do meu squid.conf conforme o artigo pois teria que colocar os comandos na sequencia correta??? valeu pela ajuda.


Essa sequência do squid.conf do artigo é a sequência do squid.conf original. Eu procuro seguir ela sempre.

Quanto à lentidão do teu Squid, você deve primeiro verificar qual a causa dessa lentidão. Procure lembrar qual foi a última alteração que você fez antes dele ficar lento. E veja os logs do Squid, os logs geralmente apontam os prováveis erros.
Primeiro procure identificar a causa da lentidão antes de sair alterando o squid.conf.

[22] Comentário enviado por danilo.rcte em 09/10/2015 - 15:47h


Parabens pelo artigo !!! show de bola...

Cara gostaria de tirar uma duvida com vc... instalei um squid3 - nao transparente e sem autenticação, esta tudo funcionando... bloqueios de urls, bloqueios por ip, tudo.... porem ao testar o delay pools, percebi que ele não limita sites https.... ou seja... funciona perfeitamente com todos os sites http: (porta 80) , porem ao entrar em sites https... a limitação acaba... e o usuario navega em full banda.... a duvida é.... só o meu servidor squid faz isso... ou o squid em geral nao limita banda dos sites https???


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts