2016-10-21 3 views
0

Ich habe einen Leerlauf-Timeout-Handler auf meinem netty Server.Keep mit Leerlauf-Timeout auf Server

Zur gleichen Zeit schickt mir mein Klient mich keep alives (er hat keep alive Option auf seinem netty Client aktiviert).

Es scheint, dass mein Idle-Timeout-Handler auf einer Anwendungsebene ist, so dass der Keep Alive die Verbindung nicht aufrecht erhält.

Jeder Standard Umgang damit?

Antwort

0

Entfernen Sie den Leerlauf-Timeout-Handler. Warum hast du es dort, wenn du es nicht auslösen willst? Wenn die Verbindung unterbrochen ist, dann sollte die TCP-Verbindung die Alice stoppen, und die Verbindung würde ohne Ihren Handler schließen, nicht wahr?

Wenn Sie das Leerlaufzeitlimit für den Datenversand verwenden möchten, geben Sie mit einem Flag an, ob Sie sich gerade in einem Request-Antwortaustausch befinden und ignorieren alle Timeout-Ereignisse, die außerhalb eines solchen Anforderungsverarbeitungsstatus liegen.