ajax 怎么设置超时(一个action执行了2遍)

时间:2021-05-28

今天在测试工程时发现一个action执行了2遍 ,这个操作大致需要5分多钟才能完成,工程环境 apache2+tomcat6.0。

网上搜索发现了几个可以设置超时的地方:

1.ajax 语法去设置单位毫秒,例如:

$.ajax({ url: XXX, timeout: 600000, type: 'POST', data: { }, error: function() { show_fail_meg("启动系统失败 !"); } });

2.tomcat配置 server.xml 单位毫秒

Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>

3.apache的配置文件 httpd.conf,单位秒

# # Timeout: The number of seconds before receives and sends time out. # Timeout 60

修改以上几个地方,发现还是没有生效,最终定位在了mod_jk模块,

mod_jk 简称JK,是Apache服务器的一个可插入模块,用以为Apache或IIS服务器提供处理JSP/Servlet的能力。

也就是说JK的设置可能覆盖了apache2和tomcat以及ajax的设置。

JK的配置文件/etc/httpd/conf/workers.properties内容如下:

worker.master.socket_timeout=300

果然看到这个数字正好是5分钟,跟异常现象相一致,改大之后重启,正常!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章