tencent cloud

文档反馈

新老网络架构性能对比

最后更新时间:2023-01-13 15:00:32

    云数据库 MySQL 对数据库实例的网络架构进行了升级,新版网络架构具备更好的性能,更低的延迟,为您提供更强性能的网络服务。本文为您介绍新老网络架构的性能测试对比。

    说明:

    • 2022年11月09日开始,新购实例将采用全新的网络架构,延迟更低,性能更强。
    • 2022年12月31日当天完成存量数据库实例的网络架构切换,切换过程中对您的访问不会造成影响。
    • 单节点云盘实例已经是网络最优架构,实例详情页不展示是否为网络新架构。
    • 基础网络无法使用新网络架构,如需使用新架构,请先 切换至私有网络,然后等待网络架构升级。

    测试环境

    • 地域/可用区:北京 - 北京六区。
    • 客户端规格:S5.2XLARGE16,8核16GB。
    • 客户端操作系统:TencentOS Server 3.2。
    • 网络:云服务器 CVM 和云数据库 MySQL 实例网络类型均为私有网络(VPC)且在同一子网下。
    • 存储类型:本地 SSD 盘。
    • 测试实例规格:通用型4核16GB。
    • 参数模板:高性能模板。
    • 复制方式:异步复制。

    测试工具

    通过基准测试工具 SysBench 进行测试。SysBench 是一个跨平台且支持多线程的模块化基准测试工具,用于评估系统在运行高负载的数据库时相关核心参数的性能表现。SysBench 可绕过复杂的数据库基准设置,甚至在没有安装数据库的前提下,快速了解数据库系统的性能。压测使用的是 SysBench 1.0.20版本。

    测试场景

    本次压测从3个场景进行测试,分别是:只写场景、只读场景以及混合读写场景,每个场景进行2个 - 3000个线程压测,取压测下的 QPS 值作为性能结果指标。

    测试方法

    步骤1:准备数据
    执行命令如下:

    sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX
    --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000
    --tables=10 --events=0 --time=300 --threads={2~3000} oltp_read_write prepare
    

    步骤2:运行 workload
    分别从只写、只读以及混合读写场景运行 workload,注意不要配置错误。

    • OLTP 只写场景
      执行命令如下:

      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX
      --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000
      --tables=10 --events=0 --time=300  --threads={2~3000} --percentile=95 --report-interval=1 oltp_write_only
      run
      
    • OLTP 只读场景
      执行命令如下:

      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX
      --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000
      --tables=10 --events=0 --time=300 --threads={2~3000} --percentile=95 --skip-trx=1 --report-interval=1
      oltp_read_only
      run
      
    • OLTP 混合读写场景
      执行命令如下:

      sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX
      --mysql-user=XXX --mysql-password=XXX --mysql-db=sbtest --table_size=10000000
      --tables=10 --events=0 --time=300  --threads={2~3000} --percentile=95 --report-interval=1 oltp_read_write
      run
      

    步骤3:清理数据
    运行测试完成后进行数据清理,执行命令如下:

    sysbench --db-driver=mysql --mysql-host=XXX --mysql-port=XXX --mysql-user=XXX --mysql-password=XXX
    --mysql-db=sbtest --table_size=25000 --tables=250 --events=0 --time=600   --threads=XXX --percentile=95  oltp_read_write cleanup
    

    测试指标

    测试指标为每秒执行请求数 QPS(Queries Per Second)。

    测试结果

    只写场景测试结果
    在只写场景下,云数据库 MySQL 新架构性能随线程数增加而始终高于原有架构特性,线程数为256时达到最高 QPS,且在线程数为512时,新架构特性 QPS 值高于原有架构 QPS 的20%。

    只读场景测试结果
    在只读场景下,低线程数时云数据库 MySQL 新架构 QPS 增幅较大,趋近直线上升,在线程数达到64以后 QPS 上升平缓,总体性能始终高于原有架构,且在线程数为16时,高于原有架构 QPS 的22%。

    混合读写场景测试结果
    在混合读写场景下,低线程数时云数据库 MySQL 新架构 QPS 增幅较大,线程数达到512之后,整体 QPS 平缓下降。此时,新架构 QPS 达到最高,高于原有架构的18%。

    结论

    说明:

    以上性能测试结果仅供参考。

    通过以上三个场景的测试对比,云数据库 MySQL 新版网络架构,在性能上远高于原有架构,三个场景下,线程数从2到3000,压测的 QPS 值平均提升20%以上,新版网络架构的性能得到极大提升。

    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持