性能测试
主要谈一下Jmeter在性能测试中的使用方法。
性能测试
性能测试可以基于协议级接口+多线程,协程 测试服务器端的性能。
那客户端的性能主要关注什么呢?
客户端主要关注的问题消耗资源情况就可以。资源管理器监控,Android端adb shell dunpsys info监控资源消耗情况。
基于协议级接口的性能测试
指的是模拟大量客户请求发送给服务端,从而评估服务端的负载处理能力,硬件资源使用效率,网络传输过程的响应时间等指标是否满足应用系统的性能需求。或模拟极端情况下服务器端稳定性和可靠性。
性能测试核心原理
1)协议
通过协议可以避免前端界面的限制。
2)多线程
模拟真实的多用户访问系统,就必须借助多线程来完成。多线程意味着CPU资源的消耗,所以对任意一台确定配置资源的计算机来说他能并发的线程数也是有限的。一般而言,一台普通的PC机能运行的最大线程数大约在500~2000个不等,主要有CUP的配置决定,其次是内存,硬盘,网络方面的限制,其中任何一个资源达到瓶颈基本就是该电脑的测试能力的上限了,如我们确实需要模拟并发大量请求时该怎么做呢?这时候就需要多台电脑协同操作才能完成。
3)模拟真实场景
性能测关注的最终的测试数据,数据的最终的体现形式是基于具体实际的场景的。不同的场景会体现为不同的数据。
服务器端性能可能出现的瓶颈
硬件:带宽,CPU,硬盘,内存等
软件:算法效率,服务器内存使用率。