我正在研究性能测试,并想问为什么在最大负载下缓慢爬升然后运行,然后缓慢下降被认为是一个更好的范例,.And测试团队花费了大量的时间来实现相同的完美图。虽然它完全主观,但为什么这种方法总是比一次启动所有线程更可取。
发布于 2015-05-29 15:15:22
同时启动所有线程(或者更准确地说,在瞬间从零流量到最大流量)将“震惊”目标系统,并可能使某些web加速功能失效。例如,如果所有客户端同时启动,服务器端和客户端的缓存可能不会一开始就发生。如果你慢慢爬升,缓存可以填充,一旦你达到最大流量/VUs,缓存丢失可能是罕见的。
应用程序还需要增加它们用于服务更多客户端的资源数量--分配内存、文件描述符等--如果您在任何时间内从0到1,000,000个客户端,服务器端将有大量的即时资源分配,而如果您缓慢地爬升,那么资源分配就没有问题了。
如果你正在运行某种自动缩放,那当然也是一个问题--不现实的快速提升时间将使自动缩放难以跟上,从而给目标系统带来问题,而在实际情况下它将不会体验到。
在有些情况下,从0到最大的VUs/流量确实是有意义的,这也是当您期望这种事情发生在您的站点时。您可能是在测试自己的能力,以抵抗拒绝服务攻击,或者您可能运行一个流量极快的站点(例如,在线拍卖网站或在特定时间发布流行事件门票的活动网站)。
https://stackoverflow.com/questions/30517731
复制相似问题