Eu tenho muitos processos somente de gravação do MySQL. Todos eles vão para o mesmo mestre MySQL. Eu os executo sequencialmente para obter um tempo de linha de base. Eu basicamente encadeei vários clientes de linha de comando mysql, um após o outro. Mais tarde, eu acionei paralelamente vários clientes mysql ao mesmo tempo para obter um tempo experimental. Por que os tempos são os mesmos?
Mais fatos:
- Cada cliente atinge um esquema separado. Isso elimina a possibilidade de disputa de bloqueio de tabela ou linha entre clientes.
- Eu tentei isso no Win32 XP com alguns núcleos e 4 GB de RAM versus RedHat 5.6 de 64 bits com 24 núcleos virtuais e 32 GB de RAM. A linha de base vs. experimental é a mesma em ambos.
- No RedHat, tentei todos os clientes TCP versus todos os clientes SOCKET. Nenhuma diferença provavelmente porque o servidor não está sobrecarregado.