第二章 MySQL基准测试

第二章 MySQL基准测试

基准测试是Mysql新手和专家都要掌握的基本技能,是针对系统设计的一种压力测试。通常是为了掌握系统的行为,重现某个状态,或是做新硬件的可靠性测试。

2.1 WHY基准测试

创造虚拟环境,为了观察系统在不同压力下的行为。

  • 验证假设
  • 重现并解决系统异常行为
  • 模拟更高的负载,找出可能遇到的瓶颈问题
  • 测试应用适应可变环境的能力

2.2 基准测试的策略

需要模拟大量的用户和数据!

  1. 针对整个系统的整体测试,也叫集成式测试
  2. 单独测试Mysql,也叫单组件式。

why整体测试

  • 测试整个系统,Web服务器,应用代码,网络和数据库。用户更加关注整个整体的性能;
  • 通过整体测试发现各部分之间的缓存带来的问题;
  • Mysql并非总是应用 的瓶颈,通过整体测试可以发现这一点;
  • 更能揭示应用整体的真实表现,组件式测试很难发现这点;

why单独测试MySQL

  • 需要比较不同的schema或查询的性能;
  • 针对应用中某个具体问题的测试;
  • 避免漫长的基准测试,通过短期的基准测试,做快速的“周期循环”,–>检查出某些调整的效果;
测试指标
  1. 吞吐量
  2. 响应时间或延迟
  3. 并发性
  4. 可扩展性

需要尽可能的收集用户需求,测试的都是用户最关心最重要的指标。

2.3 基准测试方法

  1. 提出问题并明确目标,选择标准的还是专业的基准测试
  2. 获得生产数据集的快照,要求方便还原,以便后续测试
  3. 针对数据运行查询,选择高峰时段或多个时间段
  4. 在不同级别记录请求,多线程!
  5. 建立将参数和结果文档化事务的规范

2.4 基准测试工具

集成式:ab、http_load、JMeter…

单组件式:mysqlslap、MySQL Benchmark Suite(sql-bench)、sysbench…

MySQ中自带的benchmark函数

可以简单返回服务器执行表达式的时间,不会涉及到优化分析。不适合做真正的基准测试,因为很难理解到真正要测试的是什么,而且测试的也只是整个执行周期中的一小部分。

在这里插入图片描述

2.5 总结

作为Mysql的使用者,我们需要对基准测试有一定的了解,这也更是一种很好的学习方法,需要我们敏捷的思维能力发现问题,学习mysql的基准测试能让我们学会如何将问题分解,清晰我们的思路,成为一名更好的mysql使用者。
,需要我们敏捷的思维能力发现问题,学习mysql的基准测试能让我们学会如何将问题分解,清晰我们的思路,成为一名更好的mysql使用者。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乔墩墩123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值