[FUG-BR] Diferença absurda do mysql no Linux para o do FreeBSD

Marcelo Gondim gondim em bsdinfo.com.br
Quarta Julho 11 13:55:56 BRT 2012


Em 11/07/2012 11:50, Leonardo Augusto escreveu:
> hehe isso do mysql ta virando pessoal ja.
> vamos dar um jeito nisso.
não é? rsrsrsr

> eu so nao posso fazer mais testes em funcao da minha condicao de deitado
> temporariamenre.
>
> passa as configs do kernel e o my.cnf que usou, o sysctl -a grep kern tb e
> interessante.
Pra testar eu peguei  my-huge mesmo e só adicionei o max_connections sem 
acessos à base. Só pra efeito de teste mesmo. Agora o do Linux que tá em 
produção é esse aqui:

[mysqld]
open-files-limit = 200000
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
language        = /usr/share/mysql/english
skip-external-locking
bind-address            = 127.0.0.1
low_priority_updates    = 1
concurrent_insert       = 2
key_buffer_size         = 2G
max_allowed_packet      = 512M
thread_stack            = 512K
thread_cache_size       = 128
myisam-recover         = BACKUP
max_connections        = 4000
table_cache            = 5000
thread_concurrency     = 24
query_cache_limit       = 16M
query_cache_size        = 128M
expire_logs_days        = 10
max_binlog_size         = 100M


> acho que tem muita gente aqui que tem interesse no caso e com condicoes de
> ajudar.
>
> sera que nao tem a ver com o tipo do scheduke usado? ja testou com is dois
> tipos?

Estou usando o ULE mas você acha que ficaria melhor o 4BSD?

# SCHED_4BSD is the historical, proven, BSD scheduler.  It has a global run
# queue and no CPU affinity which makes it suboptimal for SMP.  It has very
# good interactivity and priority selection.

# SCHED_ULE provides significant performance advantages over 4BSD on many
# workloads on SMP machines.  It supports cpu-affinity, per-cpu runqueues
# and scheduler locks.  It also has a stronger notion of interactivity
# which leads to better responsiveness even on uniprocessor machines.  This
# is the default scheduler.

Teoricamente o ULE seria melhor ao meu ver.

>
> faz o teste de rodar o binario do linux no bsd. e so baixar o tgz e rodar
> via um comando la de emulacao de linux que nao lembro agora.
>
> quando eu ficar bom, vou pegar um dell quad com raid e 8g que ta parado e
> vou instalar esse 8 ou 9 pra testar

Show vamos desbagaçar esse pepino hahahahaha

>
> ate la so posdo dar palpite, hehe
> Em 11/07/2012 10:37, "Marcelo Gondim" <gondim em bsdinfo.com.br> escreveu:

Cara o memcache já foi um puta palpite que hoje em dia tá muiiiito bom 
lá no site. O site que tem a quantidade de acessos, mais de 400mil 
peers, quase 100mil users, pra mais de 70.000 torrents e as páginas de 
consulta estão sendo geradas em 0,00... segundos. Valeu pela dica e 
consegui convencer o programador à implementar. rsrsrs

>
>> 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.  :)
>> -------------------------
>> 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
>




Mais detalhes sobre a lista de discussão freebsd