java nio-SocketChannel压力测试场景下,收发消息时间不断变长

采用SocketChannel给服务端发信息(socketChannel.write),并接受返回的信息(socketChannel.read),结果在loadrunne... 采用SocketChannel 给服务端发信息(socketChannel.write),并接受返回的信息(socketChannel.read),结果在loadrunner的压力测试下,跑一会,SocketChannel收发处理时间越来越长?有大虾遇到过么,可能的原因是什么啊?
例如在的开发发消息前加一个long started = System.currentTimeMillis();在消息返回后System.out.println("tcpCaller pay time:"+(System.currentTimeMillis()-started));,在控制台就会看到这个时间在loadrunner测试时就会不断的增大
展开
 我来答
非鱼共享
2014-09-24 · 专注互联网技术,快速了解互联网研发
非鱼共享
采纳数:204 获赞数:695

向TA提问 私信TA
展开全部
跑的线程太多了吧,你是用的Linux还是Windows服务器?再者,看看服务端那块数据接收正常不?这个没有那么简单的
更多追问追答
追问
windows的。服务器端的代码我用winsocket测试过,是正常的。
就起了20个loadrunner的vuser,就是开始看一次socket收发消息是几时毫秒,跑了十分钟左右吧,就变成几百毫秒了,导致整体的吸能下降,还看不出什么问题,郁闷啊。。
追答
你可以分几个步骤去调试,这个不好说啊,一个一个排除吧
自己开20个线程去连接你的服务端,同样跑十几分钟,看看是不是也慢,如果也很慢,那去看看是不是你的网络有问题,如果网络没问题,那就再去看服务端那块的日志,调试一下,看看服务端是不是有问题。如果这时候正常,那是不是应该LoadRunner的脚本没写好吧,是不是哪里资源没有释放,参数LoadRunner配置看看,是不是哪里配置的也不对
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式