ホームページ >ウェブフロントエンド >jsチュートリアル >Ajaxタイムアウトの設定方法(アクションが2回実行される)

Ajaxタイムアウトの設定方法(アクションが2回実行される)

韦小宝
韦小宝オリジナル
2017-12-31 10:22:581869ブラウズ

アクションが 2 回実行されました。完了するまでに 5 分以上かかったので、タイムアウトを設定できる場所をいくつか探しました。

アクションが 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 サーバーまたは IIS サーバーに JSP/サーブレットを処理する機能を提供する Apache サーバー Pluggable モジュールの一部です。

つまり、JKの設定はapache2、tomcat、ajaxの設定を網羅している可能性があります。

JK の設定ファイル /etc/httpd/conf/workers.properties の内容は次のとおりです:

worker.master.socket_timeout=300

案の定、この数字はちょうど 5 分であり、異常現象と一致しています。大きめのサイズに変更して再起動したら正常になりました!

この記事の内容は以上です。皆さんのお役に立てれば幸いです。

関連する推奨事項:

Ajax エラーに対処する方法

Ajax でローカル JSON を読み取る方法

AJAX 面接の古典的な質問 20 選

以上がAjaxタイムアウトの設定方法(アクションが2回実行される)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。