Os servidores da nossa empresa estão atualmente hospedados em um VPS e decidimos migrar para servidores dedicados.
Ao escolher o melhor hardware para um servidor de banco de dados, em que devemos investir mais recursos: melhor CPU (mais núcleos)? ou mais memória RAM?
Onde está o melhor ROI?
Alguma sugestão?
Você deve investir em ambos.
Quanto ao MySQL, se você estiver usando o InnoDB como seu mecanismo de armazenamento padrão, deverá atualizar para o MySQL 5.5 para usar mais núcleos. Aqui estão alguns dos meus posts anteriores sobre este assunto
Como ponto de referência, tenho um cliente na empresa de hospedagem do meu empregador que possui três servidores de banco de dados em replicação circular. Cada servidor de banco de dados tem o seguinte:
Eles tiveram essa configuração por um ano inteiro. Eu pessoalmente configurei my.cnf para engajamento multicore . Todas as 12 CPUs estão em uso. O InnoDB Buffer Pool está cheio. Não houve reclamações do cliente sobre o desempenho do banco de dados desde que esse layout foi configurado para eles.
Ajustar o InnoDB é muito importante porque se você não fizer isso, o MySQL 5.5 terá um desempenho pior que o MySQL 5.1. Em alguns casos, pode ser pior que o MySQL 4.1.
Quanto à RAM, ajustar o uso da conexão, o número de conexões e caches InnoDB é o mais importante
O MySQL não utiliza corretamente CPUs com mais de 4 núcleos, então você usaria no máximo 4 núcleos e o máximo de RAM possível para poder realizar o máximo possível de processamento na memória.