PT-013.png


一、测试概述

测试场景

  • 场景编号: PT-013
  • 场景描述: Java应用(K8s容器化部署,多实例负载均衡),GaussDB for MySQL 单表insert
  • 测试目的: GaussDB,Java应用数据库单表insert场景负载能力评估。(不含调优,仅评测以作参考)

部署拓扑(图)

image-20240619152836558.png


测试环境

应用部署CCE Turbo、Node节点 * 3:华为云c7系列 4vCPUs 8GiB,EulerOS 2.9,通用型SSD
云数据库GaussDB(for MySQL 8.0),独享型 鲲鹏 8 vCPUs 32 GB ,主备,多AZ
软件环境JDK 1.8.0_151、Spring Boot 2.3.3.RELEASE、jar方式运行、内嵌Tomcat 9.0.37
网络环境华为云 静态BGP 100 Mbit/s
测试环境locust集群(48 workers)、单次测试时间:5分钟、每秒增加10%并发用户,零思考时间
其他说明为规避大量历史数据对insert性能影响,每次测试后都会执行TRUNCATE操作

优化调整

优化对象优化项优化内容
云服务器(应用服务器)OS配置net.1pv4.tcp_max_tw_buckets=20000
Java应用数据库连接数max-active: 400



二、测试过程

测试结果统计

测试任务超时并发数成功入库成功率RPS平均RT
PT-013-0015s20007651469100%25618.277.04
PT-013-0025s50007727526100%25696.3190.95
PT-013-0035s10000742056799%25965.7397.92
PT-013-0045s20000705608799%21402.4837.1
PT-013-0055s30000782713699%26797.31047.07

应用服务器性能监控

image-20240619161954735.png


GaussDB性能监控

image-20240619161928745.png


压测指标charts(部分对比)

image-20240619160500657.png

image-20240619161909750.png



三、事实结论描述

  1. 负载能力: 当前测试环境下,5秒超时,并发用户可达:2W左右,RPS在2万5左右。
  2. 应用服务器: CPU负载波峰在35%左右,内存无明显波峰,TCP连接数波峰在5W左右。
  3. 云数据库: CPU负载波峰在80%左右,内存略有增长,Insert在2万6左右
  4. 综合分析: 随着并发用户数增加,平均RT呈现较为线性的同比增长,但RPS变化并不明显。
  5. 对比分析:PT-012中的RDS对比,并发容载能力相同,RPS大幅提升。
  6. 影响分析: 并发容载能力与应用优化相关,RPS受限于数据库写能力。(当前分析仅限于本测试场景)

注意:当前的分析基于本次测试环境下,对测试结果进行事实描述,并不代表最优结果。仅供参考评估。


往期精彩内容推荐

性能评测系列(PT-012):Spring Boot(K8s多实例) + MySQL,高并发insert
性能评测系列(PT-010):Spring Boot + MySQL,高并发insert
云原生:10分钟了解一下Kubernetes架构

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐