为什么需要基准测试
基准测试是一种压力测试,是唯一方便有效的、可以学习系统在给定负载下会发生什么的一种方法。
基准测试的主要问题在于不是真实压力的测试,有很多因素会影响基准测试的准确度。
我们只能进行大概的测试,来确定系统大致的余量有多少。
基准测试的策略
两种主要策略:针对整个系统(集成式)、单独测试MySQL(单组件式)。
测试指标
吞吐量:单位时间内的事务处理数
响应时间或延迟:任务所需的整体时间
并发性:任意时间内有多少同时发生的并发请求,主要关注的是正在工作中的并发操作,或者是同时工作中的线程数或连接数。
可扩展性:增加一倍的工作量,是否能获得两倍的效果;增加一倍的资源,是否能增加一倍的吞吐量。
基准测试方法
努力使测试过程更接近真实应用的情况。
设计和规划基准测试
采用标准的基准测试,还是设计专用的基准测试。
基准测试应该运行多长时间
应该运行足够长的时间,到系统的稳定状态。
获取系统性能和状态
需要记录的数据包括系统状态和性能指标。
获得准确的测试结果
运行基准测试并分析结果
要尽可能使所有测试过程自动化,包括装载数据,系统预热、执行测试,记录结果等。
绘图的重要性
基准测试工具
集成式测试工具
单组件式测试工具
基准测试案例