`

TextArea提交失败(Tomcat 关于表单提交数据量过大导致数据丢失的问题)

阅读更多

Tomcat 关于表单提交数据量过大导致数据丢失的问题

     使用ajax的方式提交TextArea内容过大无法提交的原因,使用POST提交也是一样,后台没接收到故怀疑是提交失败,郁闷ing。

     随便上传了一个字符串 ,发现可以正常的提交,不用问肯定是提交的内容超过了限制。

     alert了一下字符串长度 ,超过了3百万页面加载缓慢。想了想,post的提交规则,八成是tomcat的问题。

     在网上查了查 ,果然是这个问题 

 

     通过查看资料,发现tomcat默认传输最大的数据限制为2M,最后的解决办法是设大tomcat的conf下的server.xml中<Connector 的maxPostSize的值.(设为0是取消POST的大小限制)

     打开tomcat目录下的conf目录,修改server.xml 文件 增加 maxPostSize="0" 即可。其中单位为:byte

 

<Connector  

debug="0"  

acceptCount="100"  

connectionTimeout="20000"  

disableUploadTimeout="true"  

port="8080"  

redirectPort="8443"  

enableLookups="false"  

minSpareThreads="25"  

maxSpareThreads="75"  

maxThreads="150"  

maxPostSize="0"  

URIEncoding="GBK"  

/>  

 

Connector元素属性介绍 

   1、maxHttpHeaderSize

 

   属性:maxHttpHeaderSize;

 

   含义Tomcat可以传输与接受的HTTP请求或响应标题的最大长度,以字节为单位;

 

   默认值:8192(8kB)

 

   2、maxKeepAliveRequests

 

   属性:maxKeepAliveRequests;

 

   含义:由每个客户端到Tomcat的HTTP keep-alive连接能完成的最大请求数。在完成指定的请求数以后,Tomcat关闭了连接,而客户端必须重新连接。

 

   设置该值为-1,配置无限连接(注意,在不产生更多的请求的时候,这可能导致连接一直处于open状态)。设置为1表示彻底禁止keep-alive连接;

 

   默认值:100

 

   3、maxPostSize

 

   属性:maxPostSize;

 

   含义:POST请求参数的最大值,将由容器自动分析;

 

   默认值:2097152(2 MB)


   4、maxSavePostSize

 

   属性:maxSavePostSize;

 

   含义:POST请求参数的最大值,在认证过程中将由容器保存;

 

   默认值:4096(4 kB)

 

   5、maxSpareThreads

 

   属性:maxSpareThreads;

 

   含义:该Connector应保持active实际却处于idle状态的请求处理最大线程数,只要活跃线程数不超过maxThreads的设置值就行。如果在APR或NIO连接器上设置该属性,则不会起作用;

 

   默认值:50

 

   6、maxThreads

 

   属性:maxThreads;

 

   含义:该Connector应并发运行的请求处理线程最大数。如果把该值设得太高,则服务器将无法阻挡线程调度且需要太长的时间才能完成请求。

 

   如果设置太小,则Tomcat将不能充分利用服务器计算机的硬件资源,而请求的时间比所需要的时间要长。有关设置最优的硬件与软件组合的细节,请参见Tomcat性能调效。如果在APR或NIO连接器上设置该属性,则不会生效;

 

   默认值:200

 

   7、minSpareThreads

 

   属性:minSpareThreads;

 

   含义:只要活跃线程数没有超过maxThreads的设置值,该Connector应该保持alive却保持idle状态的请求处理线程的最小数量。如果在APR或NIO连接器上设置该属性,则不会起作用;

 

   默认值:4


   8、noCompressionUserAgents

 

   属性:noCompressionUserAgents;

 

   含义:对Web服务器声明的一些HTTP客户端,支持HTTP 1.1 GZIP压缩,但不能正常工作。可以将该属性设置为以逗号分割的常规表达式列表,与阻碍HTTP客户端的用户代理字符串相匹配,而且该连接器对与之相匹配的客户端不使用GZIP压缩;

 

   默认值:空字符串

 

参考:http://my.oschina.net/fangliwen/blog/68164

         http://yqling2008.iteye.com/admin/blogs/1517684

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics