[firebase-br] Super Server e dois núcleos
Eduardo Bahiense
eduardo em icontroller.com.br
Seg Out 27 00:58:07 -03 2008
Boa noite senhores
Temos hoje nosso servidor de aplicação no mesmo computador do servidor
de dados. Por questão de escalonamento, estamos abrindo um servidor só
pro FB, ou seja um servidor exclusivo de dados, que só terá o FB
gerenciando 3 bancos de dados, 1 de 3GB em um HD e outros dois de +- 1GB
cada, em outro HD. Esperamos com isso ter uma folga de hard por um bom
tempo.
Neste cenário, temos 5 processos fastcgi acessando esses 3 bancos, a
partir de um servidor de login que diz em que base estão os dados do
cliente logado. Assim, durante a operação normal, levantam-se até 15
instâncias do Classic, com uma média de 350 - 500 terminais logados
simultaneamente, servidos por esses 5 fastcgi's.
Até agora, um único server deu conta, mas já começamos a experimentar
lentidão em alguns horários de pico. O controle transacional, ao que
parece, pela análise do gstat, está perfeita.
Com esse movimento, esperamos escalonar distribuindo processamento, uso
de memória e acesso a disco.
A dúvida que nos surgiu foi a seguinte:
Até agora, usamos o Classic por duas razões:
1. Se tivéssemos problema em uma conexão, seria fácil matar um processo
e não afetar os demais.
2. O Classic usa os dois núcleos do procesador.
Quanto à primeira, em 3 anos de operação, já temos confiança suficiente,
o cara é "bão mesmo", não trava (claro que ficamos "mais bãos" também
durante o tempo, corrigindo um monte de queries mau construídas).
Quanto à segunda, um membro de nossa equipe fez a seguinte pergunta:
*E se colocássemos duas instâncias do SuperServer, uma em cada porta,
poderíamos usar o cpu afinity para que cada um usasse um núcleo?*
Bem, isso porque, com 15 instâncias gerenciando 3 bases que guardam
dados de +-300 clientes, o overhead de memória ao longo do dia é grande
com o cache do classic, mas como fazemos backup duas vezes por dia, esse
cache é zerado no início da manhã e final da tarde.
Assim, resolvi submeter isso aos ilustres gurus e ver se alguém me ajuda
a decidir isso antes de instalar o novo servidor.
Abraço a todos
Eduardo
Mais detalhes sobre a lista de discussão lista