2015-01-20 2 views
0

줄어들 것 : maxThreads는 3000, minSpareThreads는 800, 프로토콜 Http11AprProtocol입니다몇시에 스레드 풀 톰캣이 같이

enter image description here

톰캣 버전은 7.0.54입니다, 풀은 증가 바쁜 때 3000하지만 매우 유휴에도 내려 오지 않습니다.

톰캣이 스레드 풀을 축소하지 않는다면 어떻게할까요? 그렇지 않은 경우 메커니즘은 무엇입니까?

+0

이전 작업에서 비슷한 문제가 발생했습니다. 유일한 해결책은 미리 정의 된 간격으로 바람둥이를 다시 시작하는 것이 었습니다. : ( – Ajit

+0

왜 "keep alive"를 사용하고 있습니까? 연결을 닫지 못하게하지 않습니까? 풀에서는 모든 요청간에 공유해야합니다. – Stefan

+0

'Keep-Alive'없이 같은 결과 (나 자신에게 대답했다). – Jindong

답변

0

나는 몇 가지 테스트를 독자적으로 수행했으며, 내 결론은 현재의 QPS와 maxIdleTime 매개 변수와의 관계라고 생각합니다. 예를 들어

:

  • maxIdleTime = 30 초, RPS = 10, 스레드가 줄일 30 * 10 = 300
  • maxIdleTime = 30 초, RPS = 5 스레드 30 * 5 줄일 = 150
  • maxIdleTime = 30 초, RPS = 1은 스레드로 줄일 30 * 1 = 30

...

등등, 수 UTIL 활성 스레드가 minSpareThreads보다 작거나 같습니다.