SQL 처리가 오래걸릴때 timeout 설정 방법
- 작성자 :
- s***n
- 작성일 :
- 2024-12-11 19:41:48
- 조회수 :
- 90
- 구분 :
- 개발환경 / 4.1
- 진행상태 :
- 완료
Q
현재 jpql이나 native query등으로 sql을 처리할시 DB에 데이터량이 너무 많아서 처리 시간이 오래 걸리는데, timeout이 강제적으로 30초로 지정이 되어있습니다.
application.yml 등에 timeout 설정을 해줘도 강제적으로 30초인데 혹시 다른 곳에서 설정을 해야랄까요?
application.yml 등에 timeout 설정을 해줘도 강제적으로 30초인데 혹시 다른 곳에서 설정을 해야랄까요?
환경정보
-
- OS 정보 :
- 표준프레임워크 버전 :
- JDK(JRE) 정보 :
- WAS 정보 :
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요
표준프레임워크 센터입니다.
공통컴포넌트는 DBCP2를 사용 중이고,
관련 설정은 아래 경로에서 확인할 수 있습니다.
src/main/resources/egovframework/spring/com/context-datasource.xml
표준프레임워크에서는 DB 연결에 관해서는
context-datasource.xml 파일에서 확인이 가능합니다.
만약 30초로 설정되어 있다면 해당 파일에서
설정되어 있는 것은 아닌지 확인 부탁드립니다.
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${Globals.mysql.DriverClassName}"/>
<property name="url" value="${Globals.mysql.Url}" />
<property name="username" value="${Globals.mysql.UserName}"/>
<property name="password" value="#{egovEnvCryptoService.getPassword()}"/>
<!-- 쿼리 타임아웃 30초 설정 (미설정시 기본 타임아웃 시간은 무제한) -->
<property name="defaultQueryTimeout" value="30"/>
</bean>
만약 쿼리 타임아웃을 설정했다면
DataSourceTransactionManager의 Timeout 설정도 필요할 것으로 예상됩니다.
감사합니다
표준프레임워크 센터입니다.
공통컴포넌트는 DBCP2를 사용 중이고,
관련 설정은 아래 경로에서 확인할 수 있습니다.
src/main/resources/egovframework/spring/com/context-datasource.xml
표준프레임워크에서는 DB 연결에 관해서는
context-datasource.xml 파일에서 확인이 가능합니다.
만약 30초로 설정되어 있다면 해당 파일에서
설정되어 있는 것은 아닌지 확인 부탁드립니다.
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${Globals.mysql.DriverClassName}"/>
<property name="url" value="${Globals.mysql.Url}" />
<property name="username" value="${Globals.mysql.UserName}"/>
<property name="password" value="#{egovEnvCryptoService.getPassword()}"/>
<!-- 쿼리 타임아웃 30초 설정 (미설정시 기본 타임아웃 시간은 무제한) -->
<property name="defaultQueryTimeout" value="30"/>
</bean>
만약 쿼리 타임아웃을 설정했다면
DataSourceTransactionManager의 Timeout 설정도 필요할 것으로 예상됩니다.
감사합니다