今天在測(cè)試工程時(shí)發(fā)現(xiàn)一個(gè)action執(zhí)行了2遍 ,這個(gè)操作大致需要5分多鐘才能完成,工程環(huán)境 apache2+tomcat6.0。
網(wǎng)上搜索發(fā)現(xiàn)了幾個(gè)可以設(shè)置超時(shí)的地方:
1.ajax 語法去設(shè)置單位毫秒,例如:
$.ajax({ url: XXX, timeout: 600000, type: 'POST', data: { }, error: function() { show_fail_meg("啟動(dòng)系統(tǒng)失敗 !"); } });
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
修改以上幾個(gè)地方,發(fā)現(xiàn)還是沒有生效,最終定位在了mod_jk模塊,
mod_jk 簡稱JK,是Apache服務(wù)器的一個(gè)可插入模塊,用以為Apache或IIS服務(wù)器提供處理JSP/Servlet的能力。
也就是說JK的設(shè)置可能覆蓋了apache2和tomcat以及ajax的設(shè)置。
JK的配置文件/etc/httpd/conf/workers.properties內(nèi)容如下:
worker.master.socket_timeout=300
果然看到這個(gè)數(shù)字正好是5分鐘,跟異常現(xiàn)象相一致,改大之后重啟,正常!
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com