数据库压测那些事,以及使用JMETER进行数据库压测实例

作者: lhlaishui 分类: 软件测试 发布时间: 2023-05-27 10:59

在日常的压力测试 工作中经常会遇到数据库压测,那么什么事数据库压测呢?

在一网的压力测试过程中,主要关注的是对接口以及服务器硬件性能进行压力测试,评估请求接口和硬件性能对服务的影响。但是对于多数Web应用来说,整个系统的瓶颈在于数据库。

原因很简单:Web应用中的其他因素,例如网络带宽、负载均衡节点、应用服务器(包括CPU、内存、硬盘、连接数等)、缓存,都很容易通过水平的扩展(俗称加机器)来实现性能的提高。而对于MySQL,由于数据一致性的要求,无法通过增加机器来分散向数据库写数据带来的压力;虽然可以通过前置缓存(Redis等)、读写分离、分库分表来减轻压力,但是与系统其它组件的水平扩展相比,受到了太多的限制。

一、常见的数据库压测指标


图片

与接口压测指标类似,数据库相关指标如下:

  • TPS/QPS:衡量吞吐量。

  • 响应时间:包括平均响应时间、最小响应时间、最大响应时间、时间百分比等,其中时间百分比参考意义较大,如前95%的请求的最大响应时间。。

  • 并发量:同时处理的查询请求的数量。

二、JMeter 实现数据库的压力测试原理

先来了解一下它的实现原理,下图是我画的一个简单的原理图

在这里插入图片描述

jmeter先要和数据库建立连接,sql语句是在jmeter中写的,但是语句的执行是在数据库里执行的,数据库再将执行结果返回给jmeter。在做jmeter数据库压力测试之前,要先检查是否有mysql-connector-java-5.1.39-bin.jar的这个包,版本不一定要和我一样,有接下来就正式演示一下数据库压力测试的步骤:

三、Jmeter压测实例

1.创建数据库连接

————————————————

小海购FL内容已经被部分隐藏,请输入验证码查看全部内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“小海购FL”或者“xhg-fl”或者微信扫描右侧二维码都可以关注本站微信公众号。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注