In meinem Setup sehe ich zeitweise eine Reihe von Fehlern wie folgt:Löst Tomcat Connection Timeout eine 500 an den HTTP-Client aus?
2016-07-07 12:22:04,248 ERROR [com.biltz.krieg.endpoints.controllers.ControllerBase] (http-nio-8080-exec-25) Caught Exception:
java.io.EOFException: Unexpected EOF read on the socket
at org.apache.coyote.http11.InternalNioInputBuffer.fill(InternalNioInputBuffer.java:152)
at org.apache.coyote.http11.InternalNioInputBuffer$SocketInputBuffer.doRead(InternalNioInputBuffer.java:177)
at org.apache.coyote.http11.filters.IdentityInputFilter.doRead(IdentityInputFilter.java:110)
at org.apache.coyote.http11.AbstractInputBuffer.doRead(AbstractInputBuffer.java:413)
at org.apache.coyote.Request.doRead(Request.java:460)
Die Zeiten dieser Fehler übereinstimmen mit dem Zugriffsprotokoll folgende zeigt:
[07/Jul/2016:12:36:36] 172.31.2.246 POST /v1/blitz 500 59.499 133
[07/Jul/2016:12:37:29] 172.31.2.246 POST /v1/blitz 500 59.186 133
[07/Jul/2016:12:39:41] 172.31.2.246 POST /v1/blitz 500 59.889 133
Das Interessante über die oben es jedem Anfrage, dass eine 500 vom Server ausgelöst hat, dauerte etwa 60 Sekunden verarbeitet werden.
60 Sekunden, wie Tomcat Connection Timeout konfiguriert ist:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="60000"
redirectPort="8443" />
So scheint es wirklich zu dem dieses Timeout verwandt, aber ich verstehe nicht, warum, wie die Dokumentation über die Verbindung Timeout dieses
sagtDie Anzahl der Millisekunden, die dieser Connector nach dem Akzeptieren einer Verbindung wartet, damit die Anforderungs-URI-Zeile angezeigt wird. Verwenden Sie einen Wert von -1, um keine (d. H. Unendliche) Zeitüberschreitung anzuzeigen. Der Standardwert ist 60000 (d. H. 60 Sekunden), aber beachten Sie, dass die standardmäßige server.xml, die mit Tomcat geliefert wird, diese auf 20000 (d. H. 20 Sekunden) setzt.
Die oben genannten Mittel zu mir, dass nach diesem Timeout auftritt, würde die TCP/HTTP-Verbindung, ohne etwas senden geschlossen werden. Liege ich falsch?
Löst Tomcat Verbindungstimeout eine 500 an den HTTP-Client aus?
Thx. Ich benutze keinen Apache. Dies geschieht auf Amazon hinter einem Amzaon ELB. –