第2章 MySQL基准测试
- 基准测试可以在系统的实际负载之外创造一些虚构场景进行测试。
- 基准测试的一个主要问题在于其不是真实压力的测试。基准测试相对比较简单,真实压力是不可预测而且复杂的,以至于难以理解,可能难以从结果中分析出确切的结论。
- 基准测试有两种主要的策略,一种是针对整个系统的整体测试,称为集成式,一种是针对单个组件比如mysql的测试,称为单组件式基准测试。
- 基准测试要尽量简单直接,结果之间容易相互比较,成本低且易于执行。
- 在基准测试的时候,如果可能,可以采用生产环境的数据快照。
- 测试指标内容:吞吐量(每秒事务数),响应时间或者延迟,并发性,可拓展性(增加的资源和效果要尽可能对等)。
- 做一个完整的可靠的测试,哪怕是花的时间长一些。
- 获得准确测试结果的最好方法,是回答一些关于基准测试的基本问题:是否选择了正确的基准测试?是否为问题收集了相关的数据?是否采用了错误的测试标准?测试结果是否可重复?
- 每次测试中,修改的参数应该尽量少。
- 在测试中若果出现异常结果,不要轻易当做坏数据点进行丢弃,应该认真研究。
- 在测试过程中应该尽可能的保证 自动化,来防止测试人员偶尔遗漏哪些操作。
- 尽量用科学的数字去表达数据。最好可以用到一些图标。
- 推荐sysbench测试,测试cpu,sysbench --test=cpu --cpu-max-prime=20000 run,等等,还能针对io的测试,mysql事务处理测试,内存,线程,互斥锁,顺序写等等。
- 基准测试也是一种很好的学习方法。
网友评论