今天在测试工程时发现一个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分钟,跟异常现象相一致,改大之后重启,正常!

标签:
ajax,超时

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
桃源资源网 Design By www.nqtax.com

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

暂无“ajax 怎么设置超时(一个action执行了2遍)”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。