性能测试的指标
- 响应时间:请求发出到收到处理结果需要的时间
- 并发数:系统能同时处理请求的数目。
- 吞吐量:系统单位时间内处理的请求数。
- QPS: 测试方式
- 性能测试,在特定条件下验证系统的能力
- 负载测试:测试系统的上限
- 压力测试:和负载测试类似
- 稳定性测试:
测试工具:
- Jmeter:Java 开发的测试工具
- LoadRunner:商用性能测试
- Galting:Scala 开发的性能测试工具
- ab:全称为 Apache Bench 。Apache 旗下的一款测试工具,非常实用。
- Fiddler:抓包工具,它可以修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是 Web 调试的利器。
- HttpWatch: 可用于录制 HTTP 请求信息的工具。
性能优化策略
- 系统是否需要缓存?
- 系统架构本身是不是就有问题?
- 系统是否存在死锁的地方?
- 系统是否存在内存泄漏?(Java 的自动回收内存虽然很方便,但是,有时候代码写的不好真的会造成内存泄漏)
- 数据库索引使用是否合理?
- ……
