首页 文章

在asp.net应用程序上使用jmeter对100个用户进行负载测试,从而在jquery上给出错误

提问于
浏览
1

我正在使用jmeter对我的asp.net应用程序进行负载测试,只有100个用户 .

我在页面“Scripts / jquery.min.js”上有jquery Jquery存在于文件夹中 . 20%的用户错误如下 .

` sample result : - 线程名称:线程组1-25示例开始时间:2014-07-31 11:45:43 IST加载时间:189003延迟:0大小(字节):2000标头大小(字节):0主体大小(字节):2000示例计数:1错误计数:1响应代码:非HTTP响应代码:javax.net.ssl.SSLHandshakeException响应消息:非HTTP响应消息:握手期间远程主机关闭连接

响应标头:

HTTPSampleResult字段:ContentType:DataEncoding:null`

request - GET https://www.mydomain.com/Scripts/jquery.min.js

[没有 Cookies ]

请求 Headers :连接:保持活动接受:text / html,application / xhtml xml,application / xml; q = 0.9,image / webp,/; q = 0.8 User-Agent:Mozilla / 5.0(WindowsNT6.2; WOW64; rv:21.0)Gecko / 20100101Firefox / 21.0 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en; q = 0.8

responcedata - javax.net.ssl.SSLHandshakeException:在sun.security.ssl上的sun.security.ssl.SSLSocketImpl.performInitialHandshake(未知来源)sun.security.ssl.SSLSocketImpl.readRecord(未知来源)握手期间远程主机关闭连接位于org.apache.http的org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:436)的sun.security.ssl.SSLSocketImpl.startHandshake(未知来源)的.SSLSocketImpl.startHandshake(未知来源) . 位于org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:294)的impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180)atg.apache.http.impl.client.DefaultRequestDirector.tryConnect( DefaultRequestDirector.java:643)org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:479)org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)at org .apache.http.impl.client.AbstractHttpClient.exec ute(AbstractHttpClient.java:805)org.apache.jotocol.http.sampler.HTTPHC4Impl.executeRequest(HTTPHC4Impl.java:481)at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl . java:298)org.apache.jot.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase $ ASyncSample.call(HTTPSamplerBase.java: 1826)atg.apache.jmeter.protocol.http.sampler.HTTPSamplerBase $ ASyncSample.call(HTTPSamplerBase.java:1794)at java.util.concurrent.FutureTask.run(Unknown Source)at java.util.concurrent.ThreadPoolExecutor . 在java.lang上的org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase $ 1 $ 1.run(HTTPSamplerBase.java:1257)的java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知来源)的runWorker(未知来源) .Thread.run(Unknown Source)引起:java.io.EOFException:SSL对等关闭错误sun.security.ssl.InputRecord.read(未知来源)... 21更多

注意:我试过100个用户 . 80用户没有得到此错误休息20用户得到此错误 . 服务器非常强大 . 它位于具有高配置的 Cloud 服务器上 . 我只尝试了100个用户,只有80%是成功率 . 20%我得到了失败的回应 .

请分享你的想法 .

2 回答

  • 1

    尝试在jmeter.properties文件中设置 https.use.cached.ssl.context=false . 它也可以在user.properties文件中覆盖,或者通过-J命令行参数设置为单次运行

    jmeter -Jhttps.use.cached.ssl.context=false -n -t /path/to/your/test/plan.jmx -l /path/to/results.jtl
    

    有关属性配置高级信息,请参见Apache JMeter Properties Customization Guide .

  • 1

    堆栈跟踪中的SSL握手失败可能是由客户端和/或服务器端引起的 . 要查找哪一个负责,您可以使用wireshark(或其他网络数据包嗅探器)捕获所有数据包并找到SSL握手失败的TCP会话 .

    在所有捕获的数据包中查找TCP会话可能需要一些工作 . 一个技巧是将所有数据包摘要导出到文本文件中并编写脚本以搜索“坏”tcp会话 . 您可能很高兴您比以往更了解SSL ;-)

相关问题