选填,简要介绍文档的主要内容,方便文档被更多人浏览和下载。
程和线程,因此ThreadLimit和ServerLimit值与KeepAliveTimeout范围内连续用户的请求数关系密切,假设这么多并发用户每一个用户在KeepAliveTimeout范围内连续用户的请求数为20,那么ThreadLimit*ServerLimit的值就必须是StartServers*ThreadsPerChild值的20倍,ThreadLimit和ServerLimit的值分配时,不能让其中任一值设定的太大,另一个值设定的太小,因为这个关系是进程和线程的关系,多线程和多进程的结合,讲究的是平衡,因此这两个值的可以预先设置,然后在通过几轮loadrunner压力测试,找到让IHS比较稳定的ThreadLimit值和ServerLimit的值
2.4 结合场景的实例
场景:在某单位的某项目项目中,在做loadrunner压力测试时,用户的并发量为1900,一轮(用户登陆到退出,期间有其他的操作请求)测试间隔为半分钟,一轮测试中各请求之间没有等待时间。
根据场景设定参数:
1.由于该系统是内网,比较安全,所以采用keepAlive on,KeepAliveTimeout设定为16,MaxKeepAliveRequests设置为0
2.根据keepAlive on和用户的并发量为1900,MaxClients设定为2000
3.根据上面的配置,StartServers设定为50,ThreadsPerChild设定为1000,StartServers*ThreadsPerChild=50000>1900, MaxClients是ThreadsPerChild的2倍(整数倍)
4.一轮测试中各请求之间没有等待时间,估算KeepAliveTimeout(16)范围内,可能会产生20个请求,StartServers*ThreadsPerChild=20*50000, StartLimit设定为200,ThreadsPerChild设定为5000
5.MinSpareThreads设定为25,MaxSpareThreads设定为200
6.MaxRequestsPerChild设置为0,即每个子进程可处理的最大请求数没有限制