keytool.exe -genkey -alias juheon -keyalg RSA -keypass 1234qwer -storepass 1234qwer -keystore juheon.jks keytool.exe -export -alias juheon -storepass 1234qwer -file juheon.cer -keystore juheon.jks keytool.exe -importkeystore -srckeystore juheon.jks -destkeystore juheon.key.p12 -deststoretype PKCS12 D:\Java\32bit\jdk1.5.0_22\jre\lib\security\cacert D:\Java\32bit\jdk1.5.0_22\bin\keytool.exe -import -alias tsasample -keystore D:\Java\32bit\jdk1.5.0_22\jre\lib\security\cacert -file D:\workspace\Servers\tsa-server-web-config\tomcat.cer keytool -import -alias somansa -keystore C:\Program Files\Java\jdk1.8.0_102\jre\lib\security\cacert -file c:\somansa.cer #인증서 생성 keytool -genkey -alias keyAlias -keyalg RSA -keypass changeit -storepass changeit –validity 9999 -keystore keystore.jks keytool -export -alias keyAlias -storepass changeit -file server.cer -keystore keystore.jks keytool -import -v -trustcacerts -alias keyAlias -file server.cer ...
JDBC Driver의 socket timeout은 DBMS 비정상 종료, network 장애 발생 시 무한정 대기하지 않기 위해 설정하는 값임. statement의 timeout보다는 길게 설정해야함.
driver timeout을 설정하지 않는 경우 os timeout 시간까지 대기함.
Oracle, Mssql 가 유사. mysql, driver 가 유사.
1. Oracle JDBC driver query timeout.
- Statement 객체 생성
- Statement 객체에서 쿼리 실행
- Timer thread에 statement 객체 등록(classloader당 하나의 timer thread)
- 등록된 Statement timeout 발생
- 등록된 Statement의 cancel() 호출
2. MySql JDBC driver query timeout.
- Statement 객체 생성
- Statement 객체에서 쿼리 실행
- Timer thread에 statement 객체 등록(connection당 하나의 timer thread)
- 등록된 Statement timeout 발생
- Timer thread에서 쿼리 실행 취소요청을 위한 connection 생성 하여 DB에 쿼리 취소요청
* 출처: JDBC Internal - 타임아웃의 이해
댓글
댓글 쓰기