Este tópico descreve como usar uma instância do Elastic Compute Service (ECS) para acessar uma instância standalone do ApsaraDB for MongoDB e testar sua capacidade de conexão sob alta concorrência.
Pré-requisitos
-
Crie uma instância ECS e uma instância standalone do ApsaraDB for MongoDB. Para mais informações, consulte Crie uma instância standalone e Crie uma instância ECS.
A tabela a seguir lista as configurações das instâncias usadas neste teste.
Parâmetro
Instância ECS
Instância standalone do ApsaraDB for MongoDB
Descrição
Região e zona
China (Hangzhou), Zone H
China (Hangzhou), Zone H
A instância ECS e a instância standalone do ApsaraDB for MongoDB estão implantadas na mesma região e zona.
Tipo de rede
Virtual Private Cloud (VPC)
Virtual Private Cloud (VPC)
A instância ECS e a instância standalone do ApsaraDB for MongoDB pertencem à mesma VPC.
CPU e memória
16 núcleos, 128 GB
-
Especificações: 8 núcleos, 32 GB
-
Espaço em disco: 200 GB
N/A
Família da instância
ecs.hfr6
Uso geral
Tipo de instância
ecs.hfr6.4xlarge
dds.sn4.2xlarge.1
Tipo de armazenamento
Enhanced SSD (ESSD)
Enhanced SSD (ESSD)
Versão da imagem ou do mecanismo
Alibaba Cloud Linux 3.2104 LTS 64-bit
MongoDB 4.0
-
Adicione o primary private IP address da instância ECS à lista de permissões da instância standalone do ApsaraDB for MongoDB. Para mais informações, consulte Configure uma whitelist para uma instância.
Instale a ferramenta de código aberto Yahoo! Cloud Serving Benchmark (YCSB) na instância ECS. Para instruções de instalação e uso, consulte YCSB.
Procedimento
Faça login no console do ECS e conecte-se à instância ECS. Para mais informações, consulte Conecte-se a uma instância ECS.
-
Execute o comando a seguir para carregar dados na instância standalone do ApsaraDB for MongoDB.
./bin/ycsb load mongodb -s -p workload=site.ycsb.workloads.CoreWorkload -p recordcount=30000000 -p mongodb.url="mongodb://root:123456Aa@dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717/admin" -threads 8Substitua os parâmetros a seguir pelos valores reais:
123456Aa: senha da conta root da instância standalone do ApsaraDB for MongoDB.-
dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717: endpoint de conexão do nó primário da instância standalone do ApsaraDB for MongoDB.NotaFaça login no console do ApsaraDB for MongoDB. Na página Database Connection, localize o endpoint na seção Internal Connections - VPC.
-
Inicie o processo YCSB e execute testes de leitura e escrita para diferentes cenários.
Cenário
Comando de teste
Descrição
8 operações simultâneas
./bin/ycsb run mongodb -s -p workload=site.ycsb.workloads.CoreWorkload -p recordcount=30000000 -p operationcount=50000000 -p readproportion=0.5 -p updateproportion=0.5 -p requestdistribution=zipfian -p mongodb.url="mongodb://root:123456Aa@dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717/admin" -threads 8Substitua os parâmetros a seguir pelos valores reais:
-
123456Aa: senha da conta root da instância standalone do ApsaraDB for MongoDB. -
dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717: endpoint de conexão do nó primário da instância standalone do ApsaraDB for MongoDB.NotaFaça login no console do ApsaraDB for MongoDB. Na página Database Connection, localize o endpoint na seção Internal Connections - VPC.
2.000 operações simultâneas
./bin/ycsb run mongodb -s -p workload=site.ycsb.workloads.CoreWorkload -p recordcount=30000000 -p operationcount=50000000 -p readproportion=0.5 -p updateproportion=0.5 -p requestdistribution=zipfian -p mongodb.url="mongodb://root:123456Aa@dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717/admin" -threads 200010.000 operações simultâneas
./bin/ycsb run mongodb -s -p workload=site.ycsb.workloads.CoreWorkload -p recordcount=30000000 -p operationcount=50000000 -p readproportion=0.5 -p updateproportion=0.5 -p requestdistribution=zipfian -p mongodb.url="mongodb://root:123456Aa@dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717/admin" -threads 10000 -
-
Verifique o número de conexões com a instância standalone do ApsaraDB for MongoDB.
Acesse a página Replica Set Instances, selecione um grupo de recursos e uma região no topo da página e clique em ID da instância desejada.
No painel de navegação à esquerda da página de detalhes da instância, clique em Monitoring Data.
-
Na aba Node Monitoring, selecione um intervalo de tempo e visualize as métricas de CPU Utilization (%), QPS e Connections.
Resultados
Uma instância standalone do ApsaraDB for MongoDB com 8 núcleos de CPU e 32 GB de memória suporta até 10.000 conexões simultâneas.
As conexões consomem recursos de CPU. Mantenha o volume de conexões dentro de uma faixa razoável para garantir desempenho ideal.
Ao atingir determinado limiar de operações simultâneas, a utilização da CPU e o QPS tendem a estabilizar. Portanto, ajuste esse volume conforme as necessidades do seu negócio.