如何判断服务器是否达到饱和?这时我们可以采取阶梯增压的方式,不断加大客户端线程数量,直到服务器处理不过来,事务频繁超时,这时就得到了服务器处理能力极限。
根据不同的测试类型,取这个极限数量的一定百分比作为客户端线程数。
比如说,负载测试中,通常取达到这个极限数值的70%。
客户端损耗我们在讨论餐厅订单流程和服务器事务流程时,流程图里包括了顾客/客户端。
顾客点餐要不要花时间?当然要,如果他患上选择困难症,甚至有可能在下单的时候花去大量时间。
同理,客户端从启动线程到构造请求并发出,这一过程也有一定的时间损耗。
通常在测试服务器性能的时候,客户端性能是应该被剥离出去的,所以测试时应该尽量降低客户端时间损耗。
适当增加客户端线程循环次数 - 稀释这些线程启动的占用时间
当客户端线程数需要较大数量时(对jmeter而言,超过1000左右),客户机/测试机的资源占用会增大,整个客户端的请求构造时间会拉长。应该考虑分布式测试。
尽量减少客户端请求构造时间,比如beanshell请求加密,如果过程过于复杂也会耗去可观时间。极限测试情况下应考虑简化。
那么本文到这里告一段落。
希望能帮助理解性能测试领域的这些关键概念和原理