web-dev-qa-db-fra.com

Jetty IdleTimeout

Je migre de jetty7.6 à jetty-9.2. Je constate que la valeur par défaut d’idletimeout pour les connexions Jetty est réduite de 10 fois. 

Dans la jetée-7.6

<Set name="maxIdleTime">300000</Set>

Dans la jetée 9.2: 

<Set name="idleTimeout"><Property name="http.timeout" default="30000"/></Set>

Pourquoi 

Et à cause de cela, je reçois continuellement des exceptions inférieures:

WARN:oejs.HttpChannel:qtp607635164-14195: Commit failed
Java.util.concurrent.TimeoutException: Idle timeout expired: 30000/30000 ms
at org.Eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.Java:156)
at org.Eclipse.jetty.io.IdleTimeout$1.run(IdleTimeout.Java:50)
at Java.util.concurrent.Executors$RunnableAdapter.call(Executors.Java:511)
at Java.util.concurrent.FutureTask.run(FutureTask.Java:266)..........

Merci, Anuj

8
Anuj Khandelwal

mettez ceci dans votre ${jetty.base}/start.ini

http.timeout=300000

cela restaurera vos attentes précédentes.

Le délai par défaut est passé de 5 minutes à 30 secondes par défaut, car il s'agit d'un meilleur choix pour la majorité des sites Web.

8
Joakim Erdfelt

Le réglage correct est

## Connector idle timeout in milliseconds
# jetty.ssl.idleTimeout=30000

Cela peut être trouvé dans le fichier ssl.mod.

0
Nandan Phadke

Avec Jetty 9.4 et HTTPS, la solution ci-dessus ne fonctionne pas. Pour résoudre ce problème, j'ai trouvé un paramètre non documenté qui n'apparaît pas dans les fichiers .ini:

jetty.ssl.idleTimeout=180000

Ajoutez cela à vos paramètres de jetée. start.d/<whatever>.ini ou start.ini.

0
Golly