2014-08-28 4 views
7

jetty7.6에서 jetty-9.2로 마이그레이션 중입니다. 부두 연결에 대한 idletimeout의 기본값이 10 배 감소했습니다. 왜 이렇게Jetty IdleTimeout

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

: 부두 - 7.6 부두 - 9.2에서

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

에서

?

그리고이 때문에 나는 계속해서 예외 아래에 무엇입니까의

:

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).......... 

감사합니다, 아누 즈

답변

8

는 이전의 기대를 복원 당신의 ${jetty.base}/start.ini

http.timeout=300000 

에 넣고.

대부분의 웹 사이트에서 더 나은 선택이기 때문에 시간 초과로 기본값이 5 분에서 30 초로 변경되었습니다.

+0

나는 jetty-http.xml에서 보았습니다 : Set name = "idleTimeout"><속성 이름 = "http.timeout"default = "30000"/> 그러나 자바 속성 "http.timeout" 300000. 여전히 "30000 (이전 값)"과 동일한 오류가 표시됩니다. 새 값으로 설정되지 않은 이유 (Java 속성에서이 값을 변경할 수없는 이유는 무엇입니까?) –

+1

이것은'System.setProperty' 자바가 아니며'jetty-start' /'jetty-xml' 시작 속성입니다. 'start.jar --list-config'를 사용하여 출력을 캡쳐 한 다음 질문을 편집하여이 출력을 포함시킵니다. –

+0

FYI,이 속성은 이제'jetty.http.timeout'입니다. – Golly

0

Jetty 9.4와 HTTPS를 사용하면 위의 해결책이 작동하지 않습니다.

jetty.ssl.idleTimeout=180000

이 부두 설정이 추가 :이 문제를 해결하려면 나는 .INI 파일에 나타나지 않는 문서화되지 않은 설정을 발견했다. start.d/<whatever>.ini 또는 start.ini.

0

올바른 설정이 ssl.mod 파일에서 찾을 수 있습니다

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

입니다.