terça-feira, 2 de janeiro de 2007

Variáveis importantes em servidores de alto tráfego utilizando FreeBSD

Se você administra um servidor com alto tráfego e utiliza o excelente FreeBSD, uma boa dica é aumentar o valor da variável maxusers no kernel. Em /usr/src/sys/i386/conf/ (caso utilize arquitetura i386) adicione:

maxusers 1024

Depois compile e instale o kernel. Eu, particularmente, tomei como padrão colocar essa variável como a metade do tamanho de memória RAM. Se tenho 2048MB, coloco 1024. No momento do config , o sistema irá emitir um alerta quanto a isso, mas, nunca tive problemas.

A variável maxusers irá aumentar algumas coisas importantes do sistema, como, por exemplo, o número máximo de threads e o número máximo de arquivos abertos. Muitas outras variáveis de sistema (aquelas que você vê usando sysctl -a ) são calculadas dependendo desse número.

Outra ação importante é aumentar o número de conexões permitidas ao servidor. O padrão é 128. Em servidores que recebem, por exemplo 800 mil mensagens/dia, é bom aumentar esse valor:

# sysctl kern.ipc.somaxconn=65535

Para que esse valor seja carregado no boot, adicione o seguinte no arquivo /etc/sysctl.conf :

kern.ipc.somaxconn=65535

Sempre usei esse valor máximo, e nunca tive problemas. Essas configurações foram utilizadas em um servidor de e-mail que recebe o número de mensagens citadas acima. :)

Se existe alguma restrição para esses valores citados, quero ouvir opiniões. ;)

Nenhum comentário: