반응형
mybatis 사용중에 5000건 정도를 조회해서 화면에 표현해야하는 업무가 있었습니다.
툴에서 조회시에는 0.5 초 정도 걸리는데 웹상에서 jdbc를 통해 조회를하면 10초를 넘기는 상황이 발생했습니다.
구글링을 통해 찾아보니 mybatis에 fetchSize라는 옵션이 있더군요. 아래 처럼 추가했더니 0.5 초 이하로 속도가 나옵니다. @.@
1 | <select id="selectListByDate" resultMap="logRM" fetchSize="1000"> |
fetchSize 어떻게 작동하길래 이렇게 속도가 빨라지나 찾아보았습니다.
설정하지 않으면 기본 값은 10 이라고 합니다.
fetchSize 가 10 이면 5000건을 조회하면 실제 db에서 500번을 조회하게 되는 겁니다.
fetchSize 가 1000 이면 5번이면 되는 겁니다.
이해하기 쉽게 예를 들면 같은 결과 값을 조회하는데 쿼리를 500번 날려서 받는 것과 5번만 날려서 받는 것 중에 어떤게 빠를까요?
반응형
'java' 카테고리의 다른 글
Spring RestTemplate Request Parameter Encoding (0) | 2018.08.16 |
---|---|
spring boot main args - ApplicationArguments (0) | 2018.08.16 |
java file create time (0) | 2018.08.13 |
org.apache.ibatis.type.TypeException: Could not resolve type alias (4) | 2018.08.09 |
gc overhead limit exceeded excel download 엑셀 대용량 쓰기 (2) | 2018.08.06 |
spring boot junit test in linux (0) | 2018.08.02 |
maven cache clear. 메이븐 캐시 클리어. (0) | 2018.07.31 |
spring boot 2.0 default connection pool (2) | 2018.07.25 |