jeus pool 사용설정
- 작성자 :
- 강*정
- 작성일 :
- 2011-01-24 22:51:28
- 조회수 :
- 3,303
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
jeus와 webtob를 사용하고 있습니다.
1. 디비풀을 전자정부프레임웍에서 설정해서 사용하고 있는데 디비커넥션이 지연되면 계속 에러를 냅니다. "디비접속이 원활하지 않습니다."라는 에러를 뿌려주고 싶은데 그럴려면 커넥션이 맺어졌는지 여부를 어디서 어떻게 확인하고 어떤값일 경우 메세지를 띄우는지 알고 싶습니다.
2. 그런데 로그인 할 때 시간이 오래걸리는거 같습니다. 속도를 높일 수 있는 방법은 없나요?
3. jeus의 db pool을 이용하고 싶습니다.
파일명 : context-datasource.xml
-------------------------------------------------------시작-----
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list> <value>classpath:/egovframework/egovProps/globals.properties</value>
</list>
</property>
</bean>
<!-- DataSource -->
<alias name="dataSource-${Globals.DbType}" alias="dataSource" />
<bean id="dataSource-oracle" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:XE" />
<property name="username" value="a"/>
<property name="password" value="a"/>
<property name="initialSize" value="5"/>
<property name="maxActive" value="20"/>
<property name="poolPreparedStatements" value="true"/>
</bean>
</beans>
-------------------------------------------------------끝-----
위와 같이 설정해서 사용하고 있는데 이 파일을 어떻게 수정해야하는지요?
그리고 이 파일 말고 다른 파일이 수정되어져야 한다면 다른 어떤 파일을 어떻게 수정하면 되는지 알고싶습니다.
1. 디비풀을 전자정부프레임웍에서 설정해서 사용하고 있는데 디비커넥션이 지연되면 계속 에러를 냅니다. "디비접속이 원활하지 않습니다."라는 에러를 뿌려주고 싶은데 그럴려면 커넥션이 맺어졌는지 여부를 어디서 어떻게 확인하고 어떤값일 경우 메세지를 띄우는지 알고 싶습니다.
2. 그런데 로그인 할 때 시간이 오래걸리는거 같습니다. 속도를 높일 수 있는 방법은 없나요?
3. jeus의 db pool을 이용하고 싶습니다.
파일명 : context-datasource.xml
-------------------------------------------------------시작-----
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list> <value>classpath:/egovframework/egovProps/globals.properties</value>
</list>
</property>
</bean>
<!-- DataSource -->
<alias name="dataSource-${Globals.DbType}" alias="dataSource" />
<bean id="dataSource-oracle" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:XE" />
<property name="username" value="a"/>
<property name="password" value="a"/>
<property name="initialSize" value="5"/>
<property name="maxActive" value="20"/>
<property name="poolPreparedStatements" value="true"/>
</bean>
</beans>
-------------------------------------------------------끝-----
위와 같이 설정해서 사용하고 있는데 이 파일을 어떻게 수정해야하는지요?
그리고 이 파일 말고 다른 파일이 수정되어져야 한다면 다른 어떤 파일을 어떻게 수정하면 되는지 알고싶습니다.
A
안녕하세요.. 강희정님..
1. 이 경우는 직접적으로 확인하실 수는 없을 것 같습니다.
다만, 특정 시간이 지나면 connection이 끊기는 현상은 DBMS상 시간 설정으로 가능하지만..
DBCP의 경우 다음 3가지 설정을 추가하시면 끊기는 현상을 막을 수 있습니다.
<property name="validationQuery" value="select 1 from dual" />
<property name="testWhileIdle" value="true" />
<property name="timeBetweenEvictionRunsMillis" value="60000" /> <!-- 1분 -->
지정된 시간이 지나면.. connection을 유지하기 위해 validationQuery를 주기적을 던지는 방식입니다.
또는.. 말씀하신 것 처럼 메시지 처리를 위해서는 별도의 AOP를 통한 Exception 처리가 필요합니다. (연결이 되지 않았을 때에 발생되는 특정 exception에 대한 메시지 처리)
그러나 다시 DB Connection이 연결되지 않고 WAS 및 DBMS에 종속되는 문제, 적용이 어려운 문제 등으로 권해드리지 않습니다.
2. 구체적으로 어떤 부분의 처리 속도가 문제가 되는지 확인이 필요할 것 같습니다.
3. DataSource 중 "JNDIDataSource" 방식을 사용하시면 됩니다.
우선 WAS 상에 DataSource를 설정하시고... context-datasource.xml을 다음 가이드를 참조하셔서 변경하시면 됩니다.
http://www.egovframe.org/wiki/doku.php?id=egovframework:rte:psl:data_source
"JNDIDataSource" 부분 참조
그럼.. 즐거운 하루되십시오.
감사합니다.
1. 이 경우는 직접적으로 확인하실 수는 없을 것 같습니다.
다만, 특정 시간이 지나면 connection이 끊기는 현상은 DBMS상 시간 설정으로 가능하지만..
DBCP의 경우 다음 3가지 설정을 추가하시면 끊기는 현상을 막을 수 있습니다.
<property name="validationQuery" value="select 1 from dual" />
<property name="testWhileIdle" value="true" />
<property name="timeBetweenEvictionRunsMillis" value="60000" /> <!-- 1분 -->
지정된 시간이 지나면.. connection을 유지하기 위해 validationQuery를 주기적을 던지는 방식입니다.
또는.. 말씀하신 것 처럼 메시지 처리를 위해서는 별도의 AOP를 통한 Exception 처리가 필요합니다. (연결이 되지 않았을 때에 발생되는 특정 exception에 대한 메시지 처리)
그러나 다시 DB Connection이 연결되지 않고 WAS 및 DBMS에 종속되는 문제, 적용이 어려운 문제 등으로 권해드리지 않습니다.
2. 구체적으로 어떤 부분의 처리 속도가 문제가 되는지 확인이 필요할 것 같습니다.
3. DataSource 중 "JNDIDataSource" 방식을 사용하시면 됩니다.
우선 WAS 상에 DataSource를 설정하시고... context-datasource.xml을 다음 가이드를 참조하셔서 변경하시면 됩니다.
http://www.egovframe.org/wiki/doku.php?id=egovframework:rte:psl:data_source
"JNDIDataSource" 부분 참조
그럼.. 즐거운 하루되십시오.
감사합니다.