대량 데이터 저장, 어떻게 처리할까?
1. 상황백오피스 시스템에서 1000건 이상의 대량의 데이터를 저장할 때, 3초라는 처리 속도 기준을 충족시키지 못했고, 이를 개선해야 했습니다. 해당 데이터를 저장할 때, 트랜잭션의 정합성이 보장되어야 했고, 처리 도중에 실패 발생 시 전체 롤백을 해야 하는 상황이었습니다. INSERT 건수 : 1000건 이상기술 스택 : Java, Spring Boot, JPA, MyBatis트랜잭션 처리 도중 실패 발생 시 전체 롤백 필요처리 속도 : 3초 이하 2. 문제처음에는 대량의 데이터를 저장할 때, 성능을 높이기 위해 CompletableFuture를 활용하여 멀티스레드로 병렬처리를 하여, 각 스레드에서 병렬적으로 데이터 저장 작업을 처리하게끔 하려고 했습니다. 그러나 JPA 트랜잭션은 ThreadLoca..
2025. 6. 1.