dbcp disconnect time조절과 xml validation 체크 관련하여 질문드립니다.
- 작성자 :
- 김*규
- 작성일 :
- 2015-02-01 17:07:21
- 조회수 :
- 764
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
현재 두가지 문제점에 직면해있습니다.
첫째로 dbcp로 datasource connect 시키는데 일부 DB정보들이 로컬개발자 PC에서는 접속할 수 없는 보안서버라
개발자PC에서 톰캣을 구동시키면 해당 DB정보들의 DB Connection을 시도하느라 서버 구동이 느립니다.
그렇다고 해당 datasource를 주석처리하자니 다른 설정 값에서 해당bean id를 사용하고 있어서 그러지도 못합니다.
connection 시도 시간과 횟수를 조절하는 옵션이 없는지 여쭤보고자 합니다.
환경은 spring-mybatis에 Mapper Interface를 사용하고, 인터넷이 연결되지 않는 패쇄망입니다.
아울러 두번째로는 Mapper XML파일내에 특수문자를 잘못넣는등의 구문 오류가 있을경우
톰캣서버를 시작해도 구동 중 멈추고, 올라오지 않다가 약 10분정도 지나서 구문문제가 있는 XML관련 에러를 뱉어내면서 STOP상태로 변경됩니다.
왜 XML validation 체크가 걸렸을 경우 10분씩이나 멈추어있다가 에러가 나오는지 모르겠습니다.
이 시간을 줄이는 방법이 없는지 여쭤보고자 합니다.
환경은 spring-mybatis에 Mapper Interface를 사용하고, 인터넷이 연결되지 않는 패쇄망입니다.
첫째로 dbcp로 datasource connect 시키는데 일부 DB정보들이 로컬개발자 PC에서는 접속할 수 없는 보안서버라
개발자PC에서 톰캣을 구동시키면 해당 DB정보들의 DB Connection을 시도하느라 서버 구동이 느립니다.
그렇다고 해당 datasource를 주석처리하자니 다른 설정 값에서 해당bean id를 사용하고 있어서 그러지도 못합니다.
connection 시도 시간과 횟수를 조절하는 옵션이 없는지 여쭤보고자 합니다.
환경은 spring-mybatis에 Mapper Interface를 사용하고, 인터넷이 연결되지 않는 패쇄망입니다.
아울러 두번째로는 Mapper XML파일내에 특수문자를 잘못넣는등의 구문 오류가 있을경우
톰캣서버를 시작해도 구동 중 멈추고, 올라오지 않다가 약 10분정도 지나서 구문문제가 있는 XML관련 에러를 뱉어내면서 STOP상태로 변경됩니다.
왜 XML validation 체크가 걸렸을 경우 10분씩이나 멈추어있다가 에러가 나오는지 모르겠습니다.
이 시간을 줄이는 방법이 없는지 여쭤보고자 합니다.
환경은 spring-mybatis에 Mapper Interface를 사용하고, 인터넷이 연결되지 않는 패쇄망입니다.
A
안녕하세요. 김민규님.
우선, 일부 DBMS에 대한 부분은 해당 DBMS에 대한 테스트 DBMS를 구축하는 것이 좋으실 것 같습니다.
다만, 환경 구성 상 구축이 어려우실 경우라면, HSQL과 같은 메모리 DBMS를 사용하는 셩태로 정의하시면 되실 것 같습니다.
예)
<bean class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" id="dataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc\:hsqldb\:mem\:spring-playground" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>
또는 timeout을 지정하실 수 있는데, 이 부분은 DBCP가 아닌 JDBC URL 설정 상에 추가하시면 됩니다.
다만, 사용하시는 DBMS의 JDBC Driver에 따라 다르기 떄문에 사용하시는 DBMS의 문서를 찾조하시면 되실 것 같습니다.
마지막으로 xml validation에 대한 내용은 인터넷이 연결여부와 상관없이 jar내의 DTD 또는 xsd를 통해 xml validation을 수행하기 때문에 속도의 지연 여부는 query xml 파일 수와 관련이 있을 것 같습니다.
혹 query xml 파일이 많으신 경우라면, 개발자 별로 필요한 query xml 부분만을 정리하실 수 있을 것 같습니다.
혹 인터넷 연결여부에 대한 처리를 변경하시려면 다음 링크를 참조해 보실 수 있을 것 같습니다.
http://mybatis-user.963551.n3.nabble.com/How-to-skip-DTD-verification-when-www-mybatis-org-is-down-td4026165.html
그럼, 즐거운 하루되십시오.
감사합니다.
우선, 일부 DBMS에 대한 부분은 해당 DBMS에 대한 테스트 DBMS를 구축하는 것이 좋으실 것 같습니다.
다만, 환경 구성 상 구축이 어려우실 경우라면, HSQL과 같은 메모리 DBMS를 사용하는 셩태로 정의하시면 되실 것 같습니다.
예)
<bean class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" id="dataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc\:hsqldb\:mem\:spring-playground" />
<property name="username" value="sa" />
<property name="password" value="" />
</bean>
또는 timeout을 지정하실 수 있는데, 이 부분은 DBCP가 아닌 JDBC URL 설정 상에 추가하시면 됩니다.
다만, 사용하시는 DBMS의 JDBC Driver에 따라 다르기 떄문에 사용하시는 DBMS의 문서를 찾조하시면 되실 것 같습니다.
마지막으로 xml validation에 대한 내용은 인터넷이 연결여부와 상관없이 jar내의 DTD 또는 xsd를 통해 xml validation을 수행하기 때문에 속도의 지연 여부는 query xml 파일 수와 관련이 있을 것 같습니다.
혹 query xml 파일이 많으신 경우라면, 개발자 별로 필요한 query xml 부분만을 정리하실 수 있을 것 같습니다.
혹 인터넷 연결여부에 대한 처리를 변경하시려면 다음 링크를 참조해 보실 수 있을 것 같습니다.
http://mybatis-user.963551.n3.nabble.com/How-to-skip-DTD-verification-when-www-mybatis-org-is-down-td4026165.html
그럼, 즐거운 하루되십시오.
감사합니다.