本文通过ECS访问云数据库MongoDB,测试云数据库MongoDB单节点实例的高连接能力。
准备工作
创建ECS实例和云数据库MongoDB单节点实例。如何创建,请参见创建单节点实例和创建ECS实例。
本测试的实例配置如下:
配置项
ECS实例
云数据库MongoDB单节点实例
说明
地域及可用区
华东1(杭州)可用区H
华东1(杭州)可用区H
ECS实例和云数据库MongoDB单节点实例在同一地域及可用区。
网络类型
专有网络VPC
专有网络VPC
ECS实例和云数据库MongoDB单节点实例在同一VPC。
CPU和内存
16核 128 GB
规格类型:8核 32 GB
磁盘空间:200 GB
不涉及
实例规格族
ecs.hfr6
通用型
实例规格
ecs.hfr6.4xlarge
dds.sn4.2xlarge.1
存储类型
ESSD云盘
ESSD云盘
实例或镜像版本
Alibaba Cloud Linux 3.2104 LTS 64位
MongoDB 4.0
将ECS实例的主私网IP添加到云数据库MongoDB单节点实例的白名单中。如何添加,请参见设置白名单。
在ECS实例上安装开源社区的YCSB工具。如何安装和使用,请参见YCSB。
测试步骤
执行如下测试命令,加载数据至云数据库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 8
您需要替换如下参数值:
123456Aa
:云数据库MongoDB单节点实例的root账号密码。dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717
:云数据库MongoDB单节点实例的主节点连接地址。说明您可以登录云数据库MongoDB控制台,在数据库连接页面的私网连接 - 专有网络区域查看连接地址。
启动YCSB进程,根据不同场景进行读写测试。
场景
测试命令
说明
并发数为8
./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 8
您需要替换如下参数值:
123456Aa
:云数据库MongoDB单节点实例的root账号密码。dds-bp13e84d111a1a****.mongodb.rds.aliyuncs.com:3717
:云数据库MongoDB单节点实例的主节点连接地址。说明您可以登录云数据库MongoDB控制台,在数据库连接页面的私网连接 - 专有网络区域查看连接地址。
并发数为2000
./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 2000
并发数为10000
./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
查看云数据库MongoDB单节点实例的连接数。
访问MongoDB副本集实例列表,在上方选择资源组和地域,然后单击目标实例ID。
在目标实例页面的左侧导航栏,单击监控信息。
在基本监控的页签下,选择时间,查看实例的CPU使用率(%)、操作QPS数(个)和连接数。
场景
CPU使用率
操作QPS数
连接数
并发数为8
并发数为2000
并发数为10000
测试结果
规格为8核 32 GB的云数据库MongoDB单节点实例有能力承受10000个连接。
连接实例会占用实例的一部分CPU资源,建议将连接数控制在一定范围内。
并发数增加到一定数量后,CPU使用率和操作QPS数不再随着并发数的增加而提高。您需要根据自身业务情况,合理控制并发数。