Aumentando o desempenho do Squid


Existem diversos pontos a serem analisados na hora de desenvolver um firewall para seu ambiente de forma que ele obtenha a máxima performance utilizando o hardware da melhor maneira possível, porém existem algumas práticas que são recomendadas para aumentar a performance e otimizar seu proxy durante a configuração do Squid.

Um dos principais fatores a serem considerados é a especificação do hardware utilizado e a preparação do sistema operacional. Ao utilizar RAID no servidor, prefira implementar em RAID0, que apresenta a melhor performance e dê preferência para realizar o armazenamento de cache e dos logs do Squid em um volume (preferencialmente com discos diferentes) separado, como estes dados normalmente são armazenados no /var, crie um ponto de montagem sobre a pasta apontando para seu volume. A escolha do sistema de arquivos também é um fator extremamente importante para otimizar o funcionamento, além do desempenho é necessário ter estabilidade na manipulação dos dados.

Um ponto crítico que pode fazer com que os usuários sintam lentidão ao utilizar a internet através do proxy é a resolução de nomes (DNS), para aumentar o desempenho na resolução de nomes é recomendável configurar um DNS cache na mesma máquina ou em uma máquina conectada diretamente ao proxy.

Existem alguns parâmetros que devem ser corretamente configurados no squid.conf de modo a otimizar o funcionamento. Segue uma breve descrição dos dois principais:

cache_mem

Esta opção informa ao Squid a quantidade de memória dedicada ao processo (podendo aumentar dependendo da demanda), sendo que em máquinas dedicadas à utilização de proxy podemos definir cerca de 80% da memória total da máquina.

maximum_object_size

Com esta diretiva podemos limitar o tamanho máximo dos objetos em cache para que objetos maiores do que o valor máximo aqui informado não sejam enviados para o disco. Um valor alto pode contribuir com uma maior economia de banda, porém pode causar uma utilização maior dos discos podendo aumentar o tempo de resposta em ambientes de alto tráfego. É recomendada a utilização de um valor entre 4 e 16MB (16384 KB).

A utilização de diversos caches separados em volumes diferentes pode contribuir para otimizar o armazenamento de dados e aumentar a performance do acesso a internet porém não interfere diretamente na performance do servidor.

Já a definição do método de acesso ao cache (store type) oferece difereças significativas na forma como o servidor acessa os discos. Os métodos mais utilizados são ufs, aufs, diskd e coss. Sendo que normalmente o sistema aufs apresenta ótima performance e facilidade de implementação (não depende de daemos externos) na maioria dos casos.

Existem ótimas alternativas para configuração de ambientes grandes onde existem milhares de hosts passando pelo proxy ao mesmo tempo para a distribuição de carga (um tipo de clusterização) em diversos servidores interligados entre si através de ICP, mas esse já é um tipo de instalação bem específica onde temos que fazer um levantamento bem detalhado do ambiente na implementação.

Information and Links

Join the fray by commenting, tracking what others have to say, or linking to it from your blog.


Other Posts
Emilie Autumn
Resident Evil - Extinction

Write a Comment

Take a moment to comment and tell us what you think. Some basic HTML is allowed for formatting.

Reader Comments

gosteii muito bom uma revisada no que ja sabemos
mais com um obeservaçoes legais . de como melhorar o desempenho !!

muito bom gostei mesmo ..

vlw abraços

Opa! Muito obrigado Leonidas!
Essas são as dicas que eu mais utilizo, mas caso tenha alguma correção ou sugestão é só mandar! ^^

Muito obrigado pela visita!
Abraço!