[Modern Backend] 강좌의 Part 1 다섯 번째 시간, "병렬 API 호출 리팩토링 (1)" 강의입니다.
이번 강의에서는 게시판 프로젝트의 첨부파일 검사 및 썸네일 생성 로직을 기존 CompletableFuture 방식에서 Java 25의 구조화된 동시성(StructuredTaskScope) 기반 코드로 전환하기 위한 사전 구조 분석과 리팩토링 설계 과정을 진행합니다.
📌 주요 학습 내용:
-
리팩토링 대상 파일 분석 및 기존 CompletableFuture 기반 병렬 API 호출 방식 검토
-
기존 방식의 한계 분석 (예외 발생 시 다른 병렬 작업의 cancellation/취소 전파 불가능 문제 및 스레드 생명주기 문제)
-
단위 테스트(PostCreationCoordinatorTest)를 통해 취소 미전파 현상 확인
-
build.gradle 내 Java 25 프리뷰(--enable-preview) 기능 활성화 설정
-
StructuredTaskScope(fork, join, get) 기반 코드 변환 흐름과 5단계 실행 구조 이해
기존 비동기 코드가 가진 리소스 누수 및 예외 파편화 문제를 구조화된 동시성으로 어떻게 개선할 수 있는지 이론과 설계 흐름을 차근차근 확인해 보세요.