TagCloud

Thursday, November 8, 2012

MySQL JNDI Connection Pool


JNDI 사용중, 부족한 지식을 위해, 관련 자료를 아래와 같이 조사함..


Web Application Server 당 여러개의 Web Application 이 존재할 수 있고, 각 Web Application 마다 여러개의 리소스가 존재할 수 있음.

이때 리소스마다의 Pool  관리를 어플리케이션별로 관리할 경우, DBMS 의 리소스를 기준으로 최적화할 경우,
WebApplicationServer의수N1 * WebApplication x N2 x WebApplication의Resource수N3 만큼의 Resource 수를 고려하여 적용하여 관리해야 함.

JNDI 를 이용할 경우,
WebApplicationServer의수N1 * Resource의수N2 만큼의 전체 Resource 를 고려하면 되며, pool 에 대한 관리는 WAS 에서 관리할 수 있음

MySQL interactiveClient
- 기본값 false WAIT_TIMEOUT  대신 INTERTACTIVE_TIMEOUT을 기준으로 타임아웃 설정됨
MySQL HA구성 과 클러스터링 구성시 참고사항
- MySQL 의 Default autoReconnect,  autoReconnectForPools 의 기본값은 false 임. ( autoReconnect true일 경우, initialTimeout-기본값2초, 외의 값들을 추가로 지정해야함)
JDBC URL Parameter 참고사항
- JDBC Driver 지정시,  jdbc.url=jdbc:mysql://localhost:3306/nutch?autoReconnectForPools=true 와 같이 지정

참고자료

MySQL Driver/DataSource Class Names, URL Syntax and Configuration Properties for Connector/J
http://dev.mysql.com/doc/refman/5.6/en/connector-j-reference-configuration-properties.html

The Tomcat JDBC Connection Pool
http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html

Resin Database Configuration - Connection Pool
http://caucho.com/resin-4.0/admin/database.xtp#JDBC20ConnectionPoolDataSource

DB Connection Pool 사용하기
http://pinkfish7.egloos.com/3437890