Connection reset by peer?
winsock脚本,我用7台装有LR的机子,每台使用50个vuser,建立连接后不断向服务器发送100字节的消息,thinktime=0,每次执行到约10分钟左右(大约每个用户执行了2000次循环后),就会报这个错误:Action.c(5): Error : 802 - Connection reset by peer. Error code : 10054.但客户端建立的连接并没有断掉,用户都还能发送数据,就是有很多上述的错误发生。请问是什么原因引起的呢?
谢谢! 在server端,有进程在杀你的连接。可能是操作系统的系统进程,也可能是其他的应用进程。原因还要追查日志才能找出来。
比如,以前我也碰到过这样的情况,后来我在操作系统日志下发现了比较有趣的事情:操作系统以为server遭受了洪水式攻击,就强行关闭了一些connection。当然根本问题还是出在connection上,没有完成TCP三次握手,就被server误做敌人给干掉了。
这是我碰到的一个问题,你的问题还要追查日志。 谢谢版主的回复!
我这些天都在查找这个问题的原因,也试了很多种情况。
比如
1.运行1小时,让100个vuser不停的发送消息给服务器,thinktime=0s,每条消息的发送响应时间大概0.001s。
当LR和接收消息的客户端(这客户端是开发做的用来接收消息的工具)部署在同一台机器上时,连接不会断开;而若分开部署在两台机器上就会有连接断开的情况。
2.长时间运行,1000个vuser(用10台LR)发送消息给服务器,thinktime=0.5s,即使LR与接收客户端部署在同一台机器上,在运行了10小时后也会出现连接被断开的情况。
不管连接如何被断开,服务器上的被测试程序始终是运行正常的。
从这些测试来看,是服务器的连接数目不够或连接被服务器强制关闭的原因吗?如果是这样,该如何解决操作系统强行关闭连接的问题呢?
再次感谢! 关注!!! 关注! 顶了 重启服务器不就OK了 原帖由 zhyfine 于 2005-8-15 10:08 发表
谢谢版主的回复!
我这些天都在查找这个问题的原因,也试了很多种情况。
比如
1.运行1小时,让100个vuser不停的发送消息给服务器,thinktime=0s,每条消息的发送响应时间大概0.001s。
当LR和接收消息的客 ...
有没有可能是UNIX/Linux机器的ulimit -n限制了打开文件句柄的数量呢?
建议先用ulimit查看一下,如果数目少的话再用以下命令改大点:
ulimit -c unlimited
ulimit -n 10000
我也遇到了该错误,但是只要注释掉一句lrs_receive就OK
但是要注释调的这语句是我的关键语句 sunshinelius是对的。提示说明得很清楚,连接被“peer”负责内部窥视的进程杀掉了。我没做过这类的测试,只能向你提供一些建议,简单处理的办法,就是做IP虚拟,并将发送的信息做参数化,使用不同的信息。
至于你不同的做法导致的不同结果,我估计这可能与peer机制有关。
另外,我建议你们的开发人员在socket上做个临时的log日志功能,也方便检查。 我也出现了这样的提示,不过关掉卡巴就好了
页:
[1]