MySQL基准测试

2.1基准测试相关介绍

基准测试是针对系统设计地一种压力测试,通常地目标是为了掌握系统地行为

基准测试可以完成以下或者更多地工作:
  • 验证基于系统地一些假设,确认这些假设是否符合实际情况
  • 重现系统中地异常行为,以解决这些异常
  • 测试系统当前的运行情况
  • 模拟比当前系统更高的负载,以找出系统随着压力增加而可能遇到的扩展性瓶颈
  • 规划未来的业务增长
  • 测试应用适应可变环境的能力
  • 测试不同硬件,软件和操作系统配置
  • 证明新采购的设备是否配置正确
基准测试的相关知识点

基准测试的一个主要问题在于其并不是真是的压力测试。基准测试施加给系统的压力相对真实压力来说,通常比较简单,基准测试不关心业务逻辑,更加简单直接,易于测试,数据可以由工具生成,不要求真实
基准测试与真实压力测试相比较具有以下几点的不同:

  • 有很多因素会影响基准测试,比如数据量,数据和查询的分布,但最重要的一点还是基准测试通常要求尽可能快地执行完成,所以径长给系统造成很大地压力,然而大部分压力测试工具并不支持对压力进行复杂地控制,测试工具自身地局限性也会影响到结果地有效性
  • 压力测试一般都是对真实地业务数据进行测试,获得真实系统所能承受地压力,因此,基准测试只是一种简化了地压力测试。基准测试给系统带来地通常是只能用来测量系统地一些性能,忽略了对系统地逻辑压力测试。
小结:在我自己地理解中,基准测试可能更关注系统/数据库某一方面地性能,不会考虑各个方面
之间的逻辑关系,而真实压力测试则是针对整个流程进行的测试,真实压力测试的目的就是为了
获取这个系统真正所能承受的压力,举个简单的例子:一个系统扩容后购物车的的吞吐量能提高四十倍,
基准测试就是测这个购物车扩容后吞吐量的性能如何,而真实压力测试就是包含这个
购物车整个流程各个方面的额性能,比如支付,收藏数量,各个之间都会存在相应的逻辑关系

2.2基准测试的策略

基准测试有两种主要的策略:一是针对整个系统的整体测试,另外一个就是单独测试MySQL,这两种测试也被称做集成式以及单组件基准测试

2.2.1基准测试的指标

(1)吞吐量
吞吐量是指单位时间内的事务处理数,某些基准测试主要针对在线事务处理(OLTP)的吞吐量,非常适用于多用户的交互式应用,常见的吞吐量计量单位是每秒事务数(TPS)和每分钟事务数(TPM)

(2)响应时间或者延迟
这个指标通常用于测试任务所需的整体时间,通常使用百分比响应时间作为衡量标准

(3)并发性
并发性基准测试需要关注的是正在工作中的并发操作,或者是同时工作中的线程数或者连接数,并发性的测量完全不同于响应时间和吞吐量。它不像一个结果,而更像是设置基准测试的一种属性并发性测试通常不是为了测试应用能达到的并发度,而是为了测试应用在不同并发性下的性能

对于并发性基准测试的一些小理解:并发性基准测试不同于吞吐量和响应时间测试,后两者通常是要得到一个结果,比如这个应用的吞吐量为多少,最大吞吐量又为多少,响应时间比为多少,具体到某个值,而并发性基准测试是测试应用在不同并发性下的性能,即在不同并发性下,这个应用的性能为多大,他是应用在一系列并发性下的性能表现

(4)可扩展性
简单的说,可扩展性指的是,给系统增加一倍的工作,在理想情况下就能获得两倍的结果(即吞吐量增加一倍),或者说,给系统增加一倍的资源,就能获得两倍的吞吐量,即吞吐量跟外部增加资源呈现线性扩展现象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值