Em 11 de julho de 2012 12:14, Marcelo Gondim <gon...@bsdinfo.com.br>escreveu:
> Em 11/07/2012 11:49, Edson Brandi escreveu: > > 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? > > Opa Edson blz? > > 64 bits. Tudo compilado, nada instalado por pacote. Toda instalação > feita via ports em amd64. :) > > > > > 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... > # sysctl kern.maxdsiz > kern.maxdsiz: 34359738368 > > > > 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... > # ulimit -a > socket buffer size (bytes, -b) unlimited > core file size (blocks, -c) unlimited > data seg size (kbytes, -d) 33554432 > file size (blocks, -f) unlimited > max locked memory (kbytes, -l) unlimited > max memory size (kbytes, -m) unlimited > open files (-n) 200000 > pipe size (512 bytes, -p) 1 > stack size (kbytes, -s) 524288 > cpu time (seconds, -t) unlimited > max user processes (-u) 5547 > virtual memory (kbytes, -v) unlimited > swap size (kbytes, -w) unlimited > > Pois é Edson estou tentando descobrir mas tá complicado. :) > > > > > 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. > > Estão iguais sim. Fiz só para efeito de testes. O que acontece é que não > importa o quanto eu acerte os outros parâmetros no my.cnf, colocar 4000 > em max_connections vai tudo pro ralo. > Se você tentar fazer aí acredito que vá ocorrer o mesmo resultado. Isso > surgiu por causa do nosso site de torrents que devido ao announce e > quantidade de peers o número de conexões chegam em 4000. > > > > > 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. > > Vou ler sim. Mas realmente está muito estranho isso. Como está gritante > essa diferença. > > > > > [ ]´s Brandi > > ------------------------- > > Histórico: http://www.fug.com.br/historico/html/freebsd/ > > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > > > > > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > Qual a versão do teu FreeBSD ? -- Ricardo Carlini Sperandio Analista/Consultor Linux Sênior LPIC-3 Connectcom - GISUT / CEF GEDEL: Grupo Especializado em Desenvolvimento Linux VIPLAB/PUC-MG mestrando em informática DCC/UFMG - Bacharel em Ciência da Computação Computers are like air conditioners. They don't work when you open Windows. ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd