24资源网

24资源分享网,分享资源,收集整理资源,有态度的分享资源网

做好了项上,其中包含有一个上传的功能。在开发环境和测试环境运行、测试都没什么问题。也许是由于本地的局域网的问题,一切都运行的比较快,但把它发布到外网的服务器上去时。就特别的慢。上传小的文件还算比较过得去。但是大的文件 ,只见request在请求,但就没有进度条在走。等了半天,最后死了。还报了一个郁闷的错:

#org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:227)# – Processing of multipart/form-data request failed. Read timed out

看到request failed,看到Read timed out,那个纠结啊。从代码到服务器弄了半天,没成~~~

劳师动众的查了些资料,最后在服务器加长了连接、请求的时间:

connectionTimeout=”60000″

keepAliveTimeout=”200000″

connectionTimeout – 网络连接超时,单位:毫秒

keepAliveTimeout – 长连接最大保持时间(毫秒)

测试一下,每次上传一个正常的文件要多长时间,把keepAliveTimeout的时间设置成比上传的时间长一些便可。

晕呼呼的一早上,最后搞定。

哎,是应该再学学服务方面的了。最后贴上另外一些参数和说明,以供以后学习和借鉴:

maxThreads:Tomcat可创建的最大的线程数,每一个线程处理一个请求;

minSpareThreads:最小备用线程数,tomcat启动时的初始化的线程数;

maxSpareThreads:最大备用线程数,一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程;

acceptCount:指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,就是被排队的请求数,超过这个数的请求将拒绝连接。

maxKeepAliveRequests – 最大长连接个数(1表示禁用,-1表示不限制个数,默认100个。)

maxHttpHeaderSize – http请求头信息的最大程度,超过此长度的部分不予处理。一般8K。

URIEncoding – 指定Tomcat容器的URL编码格式。

enableLookups – 是否反查域名,取值为:true或false。为了提高处理能力,应设置为false 

maxProcessors – 最大连接线程数,即:并发处理的最大请求数,默认值为75

port=”80″  

protocol=”HTTP/1.1″ 

disableUploadTimeout=”true

最后找到了问题所在。。。是因为文件夹里的文件太多,达到了几百G,文件写不进去了导致的。。。所以状态是W(waiting)

原文:https://blog.csdn.net/ywl570717586/article/details/52311945

打开凤凰新闻,查看更多高清图片

               
发表评论