사용자 도구

사이트 도구


springframework:lazyconnectiondatasourceproxy

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

springframework:lazyconnectiondatasourceproxy [2013/01/04 08:58] (현재)
kwon37xi 새로 만듦
줄 1: 줄 1:
 +====== LazyConnectionDataSourceProxy ======
 +  * 스프링은 트랜잭션 시작시 컨넥션의 실제 사용여부와 무관하게 커넥션을 확보한다.
 +  * 이로인해 트랜잭션 시작 후 커넥션과 무관한 다른 작업으로 많은 시간이 지체되면 그 시간 동안 해당 트랜잭션의 커넥션은 사용불가 상태가 되어, 데이터소스에 커넥션 풀이 부족해지는 사태를 유발할 수도 있다.
 +  * 혹은 혹은 캐시를 사용하여 커넥션이 전혀 필요없는 상태에서는 아예 커넥션을 맺지 않고 지나갈 수도 있다.
 +  * [[http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/jdbc/datasource/LazyConnectionDataSourceProxy.html|LazyConnectionDataSourceProxy]]를 사용하면 트랜잭션이 시작 되더라도 실제로 커넥션이 필요한 경우에만 데이터소스에서 커넥션을 반환한다.
 +  * [[http://jolbox.com/index.html?page=http://jolbox.com/configuration-springlazy.html|BoneCP Spring LazyConnectionDataSourceProxy 설정하기]]
 +  * 설정 예<code xml>
 +<bean id="dataSource"
 +    class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
 +    <property name="targetDataSource">
 +        <ref local="mainDataSource" />
 +    </property>
 +</bean>
  
 +<!-- BoneCP configuration -->
 +<bean id="mainDataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">
 +    <property name="driverClass" value="com.mysql.jdbc.Driver" />
 +    <property name="jdbcUrl" value="jdbc:mysql://127.0.0.1/yourdb" />
 +    <property name="username" value="root"/>
 +    <property name="password" value="abcdefgh"/>
 +    <property name="idleConnectionTestPeriod" value="60"/>
 +    <property name="idleMaxAge" value="240"/>      
 +    <property name="maxConnectionsPerPartition" value="60"/>
 +    <property name="minConnectionsPerPartition" value="20"/>
 +    <property name="partitionCount" value="3"/>
 +    <property name="acquireIncrement" value="10"/>                              
 +    <property name="statementsCacheSize" value="50"/>
 +    <property name="releaseHelperThreads" value="3"/>
 +</bean>
 +</code>
springframework/lazyconnectiondatasourceproxy.txt · 마지막으로 수정됨: 2013/01/04 08:58 저자 kwon37xi