Em 11 de julho de 2012 10:36, Marcelo Gondim <gon...@bsdinfo.com.br> escreveu: > Pessoal, > > Peguei uma base mysql rodando no FreeBSD e setei o max_connection para > 4000. Tenho 12Gb de ram nessa máquina que fiz o teste, meu i7. :) após > rodar o tuning-primer o memory usage simplesmente estoura. Conforme abaixo: > > MEMORY USAGE > Max Memory Ever Allocated : 438 M > Configured Max Per-thread Buffers : 48.46 G > Configured Max Global Buffers : 426 M > Configured Max Memory Limit : 48.87 G > Physical Memory : 13.00 G > > Max memory limit exceeds 90% of physical memory > > Valores até 1000 eu consegui no FreeBSD, sem estourar, mas ocupava > bastante ram mesmo assim. > Quando eu faço a mesma coisa em uma máquina equivalente, com mais > memória, só que com Linux, usando os 4000 em max_connections a coisa > fica boa conforme abaixo: > > MEMORY USAGE > Max Memory Ever Allocated : 10.10 G > Configured Max Per-thread Buffers : 11.71 G > Configured Max Global Buffers : 2.13 G > Configured Max Memory Limit : 13.85 G > Physical Memory : 23.53 G > Max memory limit seem to be within acceptable norms > > Reparem que no caso do Linux o "Configured Max Per-thread Buffers" e o > "Configured Max Memory Limit" não estouraram a ram disponível. O que > poderia estar causando isso no FreeBSD? Já procurei em tudo quanto foi > lugar pra tentar resolver e a única coisa que eu havia visto é que no > Linux suportaria as 4000 conexões mas em outras plataformas não. > > Quem puder fazer esses testes e comprovar é só dizer. :)
Marcelo, Antes de palpitar, me diga uma coisa... O seu FreeBSD roda em 32 ou 64 Bits? O seu mysqld é 32 ou 64 bits? Como está o seu kern.maxdsiz ? Pelos numero me parece que sua maquina ainda está usando o tamanho default de 512 Mb como sendo o segmento máximo de memoria que pode ser alocada por um processo, esse é o primeiro problema que eu vejo... Cada thread do mysql vai consumir no minimo uns 200k de memoria, para 4000 conexões/threads vc precisa permitir no minimo 1.5 Gb de memoria alocada por processo. De uma olhada nos demais limites do seu sistema com o ulimit-a , vc pode precisar mexer em outros items... Como estão os parâmetros da sessão [mysqld] do seu my.cnf na sua instalação FreeBSD e na sua instalação Linux? Eles estão iguais? Existem uma série de itens de configuração que mudam radicalmente o consumo de memoria do seu servidor, e a comparação pra ser justa tem que ser feita em cenários iguais. Se tiver tempo, recomendo a leitura do artigo http://mysql.rjweb.org/doc.php/memory , vai ajudar a entender melhor como o mysql trata o uso de memoria. [ ]´s Brandi ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd