최대 절전 모드 3을 사용하고 있으며 연결이 닫히는 것과 관련된 문제가 있습니다.최대 절전 모드로 인해 time_wait 연결이 너무 많이 발생했습니다.
나는 c3p0-0.9.1.2.jar를 사용 중이고 최대 절전 모드로 열린 데이터베이스 서버에 대한 연결을 확인한 결과 숫자 5의 연결이 있음을 발견했다. 서버의 일부 TCP 포트에서 (아래 로그 참조).
그러나 이러한 연결은 설정되어있는 TCP 포트를 계속 변경하여 포트가 사용하는 이전 포트를 해제하므로 이러한 포트는 TIME_WAIT 상태 (닫히지 않고)로 만듭니다.
계속해서 계속해서 수백 개를 계산합니다. TIME_WAIT 조건의 연결에 사용됩니다.
나는 무슨 일이 일어나고 있는지, 그리고 포트가 Established에서 TIME_WAIT로 전환되고 이전의 포트가 닫히지 않는 이유가 확실하지 않습니다.
다음은 NETSTAT -ano | find "x.9"를 실행 한 샘플입니다. 여기서 x.9는 데이터베이스 서버 IP입니다.
TCP x.124.x.66:4379 x.124.x.9:1433 TIME_WAIT 0
TCP x.124.x.66:4381 x.124.x.9:1433 TIME_WAIT 0
TCP x.124.x.66:4382 x.124.x.9:1433 TIME_WAIT 0
TCP x.124.x.66:4383 x.124.x.9:1433 TIME_WAIT 0
TCP x.124.x.66:4384 x.124.x.9:1433 TIME_WAIT 0
TCP x.124.x.66:4385 x.124.x.9:1433 TIME_WAIT 0
TCP x.124.x.66:4386 x.124.x.9:1433 ESTABLISHED 5916
TCP x.124.x.66:4387 x.124.x.9:1433 ESTABLISHED 5916
TCP x.124.x.66:4388 x.124.x.9:1433 ESTABLISHED 5916
TCP x.124.x.66:4389 x.124.x.9:1433 ESTABLISHED 5916
TCP x.124.x.66:4390 x.124.x.9:1433 ESTABLISHED 5916
나를 사용하는 Hibernate.properties 파일.
hibernate.c3p0.min_size=5
hibernate.c3p0.timeout=2
hibernate.c3p0.max_size=50
hibernate.c3p0.idle_test_period=10000
hibernate.connection.release_mode=auto
도움 주셔서 감사합니다.