使用loadrunner进行web性能测试时,高并发场景以及高性能的服务器/负载机可能导致压测出现大量Error -27796: Failed to connect to server “10.2.9.147:80”: [10048](服务器ip和端口),connection refused。其原因如下:1.负载机/服务器性能过强导致响应时间远远低于负载机端口默认释放时间 2.loadrunner场景设置导致vuser不断重新开启端口 当负载机端口占用超过可用上限时后续tcp连接全部被直接拒绝。
报错:Action.c(51): Continuing after Error -27796: Failed to connect to server “172.20.25.**:8080”: [10048] Address already in use
Try changing the registry value
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay to 30
and HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort to 65534
and rebooting the machine
See the readme.doc file for more information
工具
loadrunner11.0/12核+ 64g服务器和负载机 (windows server2008 64bit)
b/s web系统 1000并发
解决方法
- 登录负载机,运行:regedit打开系统注册表,找到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/
Services/TCPIP/Parameters路径
- 右击右侧空白处,新建REG_DWORD 值,命名为TcpTimedWaitDelay ,并更改其值为5s。(若存在直接更改值即可)
- 右击右侧空白处,新建REG_DWORD
值,命名为MaxUserPort,并更改其值为65534。(若存在直接更改值即可,注意:更改值的时候应选中十进制)
重启负载机
- 在loadrunner Virtual User generator中打开目标脚本,设置Edit run-time
Setting,选中Browser将默认勾选的simulate a new vuser on each iteration取消勾选