연결 풀링을 사용하여 Oracle9i 릴리스 9.2.0.4 데이터베이스에서 데이터베이스 연결을 사용하는 응용 프로그램이 있습니다. 응용 프로그램은 SJSAS 8.1에서 호스팅되며 드라이버는 ojdbc14.jar
버전 10.1.0.4입니다.JDBC getConnection 시간 초과 문제
내가 가지고있는 문제는 datasource.getConnection()
입니다. DB가 다운되었을 때 예외를 throw하는 데 약 40 초가 걸립니다. 이로 인해 DB 중단 중에 응용 프로그램에 과부하가 발생합니다. 데이터 소스로 LoginTimeout=8
설정을 시도했지만 효과가 없습니다.
내가 어떤 사람이 도움을 주시기 바랍니다 수
<jdbc-connection-pool connection-validation-method="table"
datasource-classname="oracle.jdbc.pool.OracleDataSource"
fail-all-connections="true"
idle-time out-in-seconds="600"
is-connection-validation-required="true"
is-isolation-level-guaranteed="false"
max-pool-size="100"
max-wait-time-in-millis="8000"
name="mydb"
pool-resize-quantity="80"
res-type="javax.sql.DataSource"
steady-pool-size="20"
validation-table-name="dual">
<property name="url" value="jdbc:oracle:thin:@server1:1521:mydb"/>
<property name="user" value="user1"/>
<property name="LoginTimeout" value="8"/>
<property name="password" value="pass1"/>
</jdbc-connection-pool>
를 사용하고 데이터 소스 아래를 참조하십시오? 주어진 시간 초과로 시간 초과하려면 getConnection()
메소드가 필요합니다.
질문은 'DB가 다운되었을 때'입니다. 그게 당신의 전체 대답을 무의미하게 만듭니다. – EJP
관련성이 있습니다. 처음 3 개의 글 머리 기호는 DB 측이 아닌 클라이언트 측에서하는 모든 작업입니다. 클라이언트 측에서 시간 초과를 빠르게하는 방법입니다. – mamboking