jmeter测试文件上传接口报错:connection reset by peer: socket write error
最近在对文件上传接口性能测试时,设置150线程数并发时,总会出现以下错误:connection reset by peer: socket write error
在网上搜索了一下,得到的原因有这些:
服务器的并发连接数超过了其承载量,服务器会将其中一些连接Down掉;
客户关掉了浏览器,而服务器还在给客户端发送数据;
浏览器端按了Stop;
和开发一起讨论了半天,谁都说不出个所以然来。开发说后台Tomcat没报错,不是代码的问题,会不会是工具的问题,于是乎找到网上一篇文章:
Jmeter遇到线程链接被重置(Connection reset by peer: socket write error)的解决方法
根据文章对jmeter进行了相应配置也没用。
后来还是一位开发大神找到了错误原因,原来,当jmeter报错时,后台Tomcat没报错,但是后台Nginx报错了!!!由于服务器只开通了80端口,开发人员使用Nginx将应用的端口进行了反向代理,反向后的端口为80,从而使测试机可以访问应用。
测试是否确实是Nginx的问题:将应用端口直接改为80,关闭Nginx后测试,结果显示不再报错,这证明这个错误确实是Nginx引起的。测试后将端口改回来。
在D:\nginx-1.15.0\logs\error.log中报错信息如下:
malloc(31457280) failed (8:Not enough storage is available to process this command)
网上很多人说是Nginx内存不足了,但是也没有人具体说怎么解决。尝试修改了Nginx的一些配置也没有用(可能是没改到点子上)。
后来将Nginx负载均衡改为Apache负载均衡,发现错误更多性能更差了。
最后还是大神将Nginx 32位改为了Nginx 64位(在官网没找到64位的,还是在某个网站上下载的)后,发现性能大大提升。
测试发现,并发300线程数时,jmeter都没报错!!!
当然长时间并发时,偶尔还是会有connection reset by peer: socket write error这个错误发生,但是总的来说接口性能已经大大提升了。
虽然还是没有完全搞清楚这个错误的发生原因以及解决办法,但总归是有点进步,在此记录,也给各位遇到此问题的朋友一点思路。
jmeter测试文件上传接口报错:connection reset by peer: socket write error的更多相关文章
- spring+ibatis问题1—— 程序报错:java.sql.SQLException: Io 异常: Connection reset by peer, socket write error; ”或“java.sql.SQLException 关闭的连接”异常
转自:http://blog.sina.com.cn/s/blog_1549fb0710102whz2.html spring+ibatis程序测试时报错:java.sql.SQLException: ...
- postman测试文件上传接口教程
postman是一个很好的接口测试软件,有时候接口是Get请求方式的,肯定在浏览器都可以测了,不过对于比较规范的RestFul接口,限定了只能post请求的,那你只能通过工具来测了,浏览器只能支持ge ...
- jmeter测试文件上传功能
最近为了完成自动化KPI开始慢慢接触jmeter,其中遇到了不少问题,今天就遇到了文件上传的问题,在这里记录下加深记忆,也可供jmeter初级使用者作为一个参考.另外论坛上已有同事发过关于jmeter ...
- jmeter随笔(2)--上传接口报错
黑夜小怪(2016-8-24 23:45) 微信订阅号: 问题:今天同事遇到问题,一个图片上传接口,单独跑是ok的,但是放在和其他接口一起就跑不通,如图 分析:查看该接口fiddler的抓包,发现请 ...
- 文件上传相关报错: The current request is not a multipart request或is a MultipartResolver configured?
1:from中涉及到图片上传的就要用post提交方式.否则就会报这个错误. 2:第一中:在jsp页面的<head></head>标签里面加上<meta http-equi ...
- Jmeter遇到线程链接被重置(Connection reset by peer: socket write error)的解决方法
做性能测试的时候遇到一个很奇怪的问题,多线程的计划,有一个线程第一次能跑过,第二次确跑不过,单独跑这个线程跑多少次都没有问题,把思考时间改短也没有问题,唯独出现在特定的状态下,特定状态是啥,也不得而知 ...
- 转 Jmeter测试实践:文件上传接口
Jmeter测试实践:文件上传接口 1.打开jmeter4.0,新建测试计划,添加线程组.根据实际情况配置线程属性. 2.添加HTTP请求. Basic部分修改如下: Advanced部分我做任何 ...
- soapUI 之 测试文件上传 [6]
在接口测试中会遇到需要上传文件的操作,比如头像修改等.那么soapui是怎么实现这部分测试的呢.以下以文件上传接口为例. 一.获取文件上传接口 可以通过开发直接提供的接口文档,或者自己抓包获取接口信息 ...
- Ceph RGW服务 使用s3 java sdk 分片文件上传API 报‘SignatureDoesNotMatch’ 异常的定位及规避方案
import java.io.File; import com.amazonaws.AmazonClientException; import com.amazonaws.auth.profile ...
随机推荐
- [Artoolkit] ARSimpleNativeCarsProj for Multi Markers Tracking
效果简直了,但代码架构有点坑,慢慢道来. libc++_shared.so应该是c++的库:libARWrapperNativeCaresExample.so也有对应的c++文件:那么,libARWr ...
- 【!Important】Zookeeper用来做什么的,有几种类型的节点
zookeeper=文件系统+通知机制 一.Zookeeper提供了什么 1.文件系统 Zookeeper维护一个类似文件系统的数据结构 每个子目录项如NameService都被称为znoed,和文件 ...
- 转载->C#异常处理
C# 异常处理 异常是在程序执行期间出现的问题.C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零. 异常提供了一种把程序控制权从某个部分转移到另一个部分的方式.C# 异常处理时建立 ...
- HashMap和Hashtable的区别 2
导读: 1 HashMap不是线程安全的 hastmap是一个接口 是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值.HashMap允许null k ...
- 实验一:基于STM32F1的流水灯实验(库函数)
参考原子哥学习程序 条件:实验板STM32103ZET6:固件库STM32F10x_StdPeriph_Lib_V3.5.0:环境MDK5: 目的:了解STM32 的 IO 口如何作为输出使用 :以两 ...
- 【vue】如何在 Vue-cli 创建的项目中引入 iView
根据vue项目的搭建教程,以下记录如何在Vue-cli创建的项目中引入iView. 1)iView的安装,在项目下使用 npm 安装iView cnpm install iview --save ...
- spark - Locality Level
这几个值在图中代表 task 的计算节点和 task 的输入数据的节点位置关系 PROCESS_LOCAL: 数据在同一个 JVM 中,即同一个 executor 上.这是最佳数据 locality. ...
- Pretty Smart? Why We Equate Beauty With Truth
Pretty Smart? Why We Equate Beauty With Truth With some regularity we hear about the latest beauty-p ...
- checkbox做全部选中,全部取消效果
批量选中.取消多个checkbox的用法很简单,这个功能也很常用.这里做个总结. 在HTML中的写法: <div id="ftpFileDownTr"> <but ...
- opencv学习笔记——cv::CommandLineParser函数详解
命令行解析类CommandLineParser 该类的作用主要用于命令行的解析,也就是分解命令行的作用.以前版本没这个类时,如果要运行带参数的.exe,必须在命令行中输入文件路径以及各种参数,并且输入 ...