Heim >Web-Frontend >js-Tutorial >So legen Sie ein Ajax-Timeout fest (eine Aktion wird zweimal ausgeführt)

So legen Sie ein Ajax-Timeout fest (eine Aktion wird zweimal ausgeführt)

韦小宝
韦小宝Original
2017-12-31 10:22:581871Durchsuche

Die Ausführung dieses Vorgangs dauerte mehr als 5 Minuten, daher habe ich nach einigen Stellen gesucht, an denen ich das Timeout festlegen kann.

Ich habe es gefunden Beim heutigen Testen des Projekts wurde eine Aktion ausgeführt. Dieser Vorgang dauerte mehr als 5 Minuten. Die technische Umgebung war Apache2+Tomcat6.0.

Die Online-Suche hat mehrere Stellen gefunden, an denen ein Timeout festgelegt werden kann:

1.Ajax-Syntax zum Festlegen der Einheit in Millisekunden, zum Beispiel:

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

2.tomcat-Konfiguration server.xml Einheit Millisekunden

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

3.Apache-Konfigurationsdatei httpd.conf, Einheit Sekunden

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

Nachdem ich die oben genannten Stellen an mehreren Stellen geändert hatte, stellte ich fest, dass es immer noch keine Wirkung zeigte, und fand es schließlich im mod_jk Modul

mod_jk JK, kurz JK genannt, ist ein steckbares Modul des Apache-Servers, das verwendet wird, um dem Apache- oder IIS-Server die Möglichkeit zu geben, JSP/Servlet zu verarbeiten.

Das heißt, die Einstellungen von JK können die Einstellungen von Apache2, Tomcat und Ajax abdecken.

Der Inhalt der JK-Konfigurationsdatei /etc/httpd/conf/workers.properties lautet wie folgt:

worker.master.socket_timeout=300

Natürlich, Ich habe diese Zahl genau richtig gesehen. Es sind 5 Minuten, was mit dem abnormalen Phänomen übereinstimmt. Nach dem Ändern der Größe und dem Neustart ist es normal!

Das ist der gesamte Inhalt dieses Artikels, ich hoffe, er wird für alle hilfreich sein!

Verwandte Empfehlungen:

Wie man mit Fehlern von Ajax umgeht

Wie kann Ajax lokales JSON lesen

20 klassische AJAX-Interviewfragen

Das obige ist der detaillierte Inhalt vonSo legen Sie ein Ajax-Timeout fest (eine Aktion wird zweimal ausgeführt). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn