数据库压测那些事,以及使用JMETER进行数据库压测实例
在日常的压力测试 工作中经常会遇到数据库压测,那么什么事数据库压测呢?
在一网的压力测试过程中,主要关注的是对接口以及服务器硬件性能进行压力测试,评估请求接口和硬件性能对服务的影响。但是对于多数Web应用来说,整个系统的瓶颈在于数据库。
原因很简单:Web应用中的其他因素,例如网络带宽、负载均衡节点、应用服务器(包括CPU、内存、硬盘、连接数等)、缓存,都很容易通过水平的扩展(俗称加机器)来实现性能的提高。而对于MySQL,由于数据一致性的要求,无法通过增加机器来分散向数据库写数据带来的压力;虽然可以通过前置缓存(Redis等)、读写分离、分库分表来减轻压力,但是与系统其它组件的水平扩展相比,受到了太多的限制。
一、常见的数据库压测指标
二、JMeter 实现数据库的压力测试原理
先来了解一下它的实现原理,下图是我画的一个简单的原理图
jmeter先要和数据库建立连接,sql语句是在jmeter中写的,但是语句的执行是在数据库里执行的,数据库再将执行结果返回给jmeter。在做jmeter数据库压力测试之前,要先检查是否有mysql-connector-java-5.1.39-bin.jar的这个包,版本不一定要和我一样,有接下来就正式演示一下数据库压力测试的步骤:
三、Jmeter压测实例
1.创建数据库连接
————————————————