
무신사 성장과 함께 거대해져온 600줄짜리 쿠폰 쿼리와의 아름다운 이별
600줄짜리 쿠폰 쿼리를 분리·캐싱·로직 이관으로 개선한 사례를 소개했습니다. 평균 지연시간과 DB 사용률을 낮추며 유지보수성과 비용 효율을 높였습니다.
#SQL#cache
124005분

600줄짜리 쿠폰 쿼리를 분리·캐싱·로직 이관으로 개선한 사례를 소개했습니다. 평균 지연시간과 DB 사용률을 낮추며 유지보수성과 비용 효율을 높였습니다.


Spring Batch 배치가 멈춘 원인을 트랜잭션 분리 실패와 스레드 풀 정책에서 찾았습니다. `CallerRunsPolicy`와 `@Transactional` 누락이 겹치며 경합이 발생했고, 설정 개선이 필요했습니다.
![[SpringBatch 연재 05] JdbcPagingItemReader로 DB내용을 읽고, JdbcBatchItemWriter로 DB에 쓰기](https://devocean.sk.com/thumnail/2024/10/28/c6ab0423c449accde8c39729cbb0156dfab20487cabc4d636480ad301c57ef85.png)

JdbcPagingItemReader로 DB 데이터를 페이지 단위로 읽고 파일로 저장하는 방법을 다루었습니다. JdbcBatchItemWriter로 파일 데이터를 DB에 빠르게 적재하는 구성도 함께 설명했습니다.

X

SmartThings 통계 정보 가공 시스템의 데이터베이스 가용성 문제를 개선한 사례를 소개했습니다. 통계 DB 교체를 통해 가용성과 성능을 함께 높인 과정을 다뤘습니다.
웹에서 ERD를 그리고 SQL과 모델을 생성하는 Aquerytool을 소개했습니다.\n읽기 전용 공유와 회원 간 협업 권한 설정 방법, 사용 시 주의점도 함께 설명했습니다.