Este tópico descreve os resultados dos testes de desempenho de instâncias de uso geral do ApsaraDB RDS com MySQL 8.0.
Para simular melhor o ambiente de produção, este teste de estresse utiliza a métrica Leituras/Escritas.
Os resultados dos testes de desempenho servem apenas como referência. Para obter mais informações sobre o uso de uma instância do ApsaraDB RDS com MySQL 8.0, consulte Solucionar problemas de instruções SQL lentas em uma instância do ApsaraDB RDS for MySQL.
Em alguns cenários de negócios, o desempenho das instâncias do ApsaraDB RDS com MySQL 5.7 pode ser superior ao das instâncias com MySQL 8.0.
Ambiente de teste
Neste teste de estresse, o SysBench avalia o desempenho de cinco instâncias do RDS com SSDs Locais Premium. Essas instâncias possuem tipos diferentes.
Tipos de instância: rds.mysql.t1.small, rds.mysql.s2.large, rds.mysql.m1.medium, rds.mysql.c1.xlarge e rds.mysql.c2.xlarge
Família da instância: uso geral
Edição do RDS: RDS High-availability Edition
Tipo de armazenamento: SSD Local Premium
Configurações
O volume de dados, a duração do teste de estresse e as configurações de parâmetros afetam significativamente o desempenho. As configurações abaixo foram aplicadas neste teste de estresse:
Volume de dados: O volume de dados e a quantidade de tabelas variam entre as instâncias do RDS testadas. Por isso, os resultados de algumas instâncias podem apresentar valores semelhantes.
Duração do teste de estresse: Todas as instâncias do RDS foram testadas durante 60 segundos.
-
Configurações de parâmetros:
sync_binlog=1einnodb_flush_log_at_trx_commit=1: garantem que todos os dados enviados sejam gravados completamente nos discos.rpl_semi_sync_master_enabled=ON: ativa o modo semissíncrono na instância do RDS para assegurar a consistência dos dados entre as instâncias primária e secundária.-
Performance_schema=ON: ativa automaticamente o Performance Schema em instâncias do RDS cujo tipo possua memória igual ou superior a 8 GB.NotaEssas configurações de parâmetros fazem parte do modelo de parâmetros padrão do ApsaraDB RDS for MySQL. Ao aplicar esse modelo a todas as instâncias do RDS, você maximiza a consistência dos dados e torna o ambiente de teste mais próximo do ambiente de produção.
Resultado do teste
Dois tipos de consulta permitem executar o teste de estresse. Escolha o tipo adequado com base no seu volume de dados.
Teste de estresse para consultas baseadas em cache: Recomendado para cenários com pequeno volume de dados. Todos os dados cabem no buffer pool do InnoDB para acesso. Para saber como alterar o tamanho do buffer pool do InnoDB, consulte Alterar o tamanho do buffer pool do InnoDB.
Teste de estresse para consultas baseadas em E/S de disco: Indicado para cenários com grande volume de dados. Apenas os dados mais acessados permanecem no buffer pool do InnoDB. Durante o teste, o sistema lê e grava dados nos discos e atualiza o buffer pool do InnoDB.
Tipo 1: Teste de estresse para consultas baseadas em cache

|
Especificação (tipo de instância) |
Volume de dados em uma única tabela |
Número de tabelas |
Número máximo de conexões |
IOPS |
Número de threads do SysBench |
Número de leituras do SysBench |
Número de escritas do SysBench |
|
1 núcleo, 1 GB (rds.mysql.t1.small) |
25.000 |
32 |
300 |
600 |
8 |
432.922 |
123.692 |
|
2 núcleos, 4 GB (rds.mysql.s2.large) |
25.000 |
32 |
1.200 |
2.000 |
8 |
599.606 |
171.316 |
|
4 núcleos, 16 GB (rds.mysql.m1.medium) |
25.000 |
128 |
4.000 |
7.000 |
16 |
1.567.132 |
447.752 |
|
8 núcleos, 32 GB (rds.mysql.c1.xlarge) |
25.000 |
128 |
8.000 |
12.000 |
32 |
2.923.130 |
835.180 |
|
16 núcleos, 64 GB (rds.mysql.c2.xlarge) |
25.000 |
128 |
16.000 |
14.000 |
64 |
5.661.264 |
1.617.504 |
Tipo 2: Teste de estresse para consultas baseadas em E/S de disco

|
Especificação (tipo de instância) |
Volume de dados em uma única tabela |
Número de tabelas |
Número máximo de conexões |
IOPS |
Número de threads do SysBench |
Número de leituras do SysBench |
Número de escritas do SysBench |
|
1 núcleo, 1 GB (rds.mysql.t1.small) |
80.000 |
32 |
300 |
600 |
8 |
374.584 |
107.024 |
|
2 núcleos, 4 GB (rds.mysql.s2.large) |
80.000 |
32 |
1.200 |
2.000 |
8 |
439418 |
125548 |
|
4 núcleos, 16 GB (rds.mysql.m1.medium) |
800.000 |
128 |
4.000 |
7.000 |
16 |
851.326 |
243.236 |
|
8 núcleos, 32 GB (rds.mysql.c1.xlarge) |
800.000 |
128 |
8.000 |
12.000 |
32 |
2.384.256 |
681.216 |
|
16 núcleos, 64 GB (rds.mysql.c2.xlarge) |
800.000 |
128 |
16.000 |
14.000 |
64 |
4.584.090 |
1.309.740 |