性能评测系列(PT-010):Spring Boot + MySQL,高并发insert

举报
云叔记 发表于 2024/06/19 11:50:39 2024/06/19
【摘要】 性能评测系列(PT-010):Java应用数据库简单写场景负载能力评估

PT-010.png

一、测试概述

测试场景

  • 场景编号: PT-010
  • 场景描述: Java应用,MySQL单表写
  • 测试目的:指定规格、配置、环境下,Java应用数据库简单写场景负载能力评估。(不含调优,仅评测以作参考)

部署拓扑(图)

image-20240619112719740.png


测试环境

应用部署 华为云c7系列 4vCPUs 8GiB,CentOS 7.6 64bit,通用型SSD(40GiB)
云数据库 MySQL(8.0),独享型 4 vCPUs 8 GB ,极速型SSD(100 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-010-001 5s 2000 2633446 100% 9290 224.25
PT-010-002 5s 5000 2623856 100% 9326 563.19
PT-010-003 5s 10000 2526576 96.3% 9050 1107.35
PT-010-004 5s 15000 2653311 87% 10212 1455.04
PT-010-优化 5s 20000 3137506 99% 10474 1880.96

应用服务器性能监控

image-20240619101902634.png

image-20240619101915681.png

image-20240619101928430.png


RDS性能监控

image-20240619111319838.png


压测指标charts(部分对比)

image-20240619110212274.png



三、事实结论描述

  1. 负载能力: 当前测试环境下,5秒超时,并发用户可达:1W左右,RPS在1万左右。
  2. 应用服务器: CPU负载波峰在25%左右,内存无明显波峰,TCP连接数波峰在1W左右。
  3. 云数据库: CPU负载波峰在50%左右,内存略有增长,TPS在9800左右(最高可达1万1
  4. 综合分析: 随着并发用户数增加,平均RT呈现较为线性的同比增长,但RPS变化并不明显。
  5. 优化预告: 在调整架构(多实例负载均衡),并发数明显增加(测至2W无明显报错),但RPS仍在1W左右。(PT-010-优化)
  6. 影响分析: 并发容载能力与应用优化相关,RPS受限于数据库写能力。(当前分析仅限于本测试场景)

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

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。