>웹 프론트엔드 >JS 튜토리얼 >Ajax 시간 초과를 설정하는 방법(작업이 두 번 실행됨)

Ajax 시간 초과를 설정하는 방법(작업이 두 번 실행됨)

韦小宝
韦小宝원래의
2017-12-31 10:22:581864검색

작업이 두 번 실행되었습니다. 이 작업을 완료하는 데 5분 이상이 걸렸기 때문에 시간 초과를 설정할 수 있는 곳을 몇 군데 검색해 봤습니다.

오늘 프로젝트를 테스트할 때 저는 이렇게 말했습니다. 작업이 두 번 실행된 것으로 나타났습니다. 이 작업을 완료하는 데 약 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 또는 IIS 서버에 JSP/Servlet 처리 기능을 제공하기 위한 Apache 서버 플러그 가능 모듈의 일부입니다.

즉, JK의 설정은 apache2, tomcat 및 ajax의 설정을 포함할 수 있습니다.

JK의 구성 파일 /etc/httpd/conf/workers.properties 내용은 다음과 같습니다.

worker.master.socket_timeout=300

물론 이 숫자도 정확히 5분으로 이상현상과 일치하는 것으로 확인되었습니다. 더 큰 사이즈로 변경 후 다시 시작하니 정상이더군요!

이 글의 내용은 여기까지입니다. 모든 분들께 도움이 되었으면 좋겠습니다!

관련 권장 사항:

Ajax 오류 처리 방법

Ajax가 로컬 json을 읽는 방법

20가지 클래식 AJAX 인터뷰 질문

위 내용은 Ajax 시간 초과를 설정하는 방법(작업이 두 번 실행됨)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.