LTS 버전의 안정성을 기반으로 Java 11 대비 성능 향상을 기대 (ex. GC 개선 등)
Record 타입을 활용해 간결한 불변 데이터 객체(DTO) 정의
public record CouponIssueRequest(
@NotNull(message = "쿠폰 ID는 필수입니다.")
Long couponId
) {}
Spring Boot 3 버전부터 요구되는 최소 사양을 충족
@MockitoBean 도입으로 기존 @MockBean의 컨텍스트 리로드 성능 저하 문제를 해결하고 테스트 일관성 유지 (v3.4+)단순 RDB를 넘어 특수 인덱스(GIN, GiST 등) 및 다양한 확장 모듈 지원을 통해 비즈니스 확장성 확보
개선된 쿼리 플래너와 인덱스 스캔 최적화를 통해 대량의 데이터에서 조회 성능 확보 (v17+)
Heap Table 구조를 활용한 빠른 삽입과 복잡한 Join 및 특수 인덱스 조회에 압도적 유리
| 구분 | MySQL (InnoDB) | PostgreSQL |
|---|---|---|
| 저장 구조 | Clustered Index (PK 중심 정렬) | Heap Table (삽입 순서 저장) |
| INSERT | PK 순서 의존적, 인덱스 재정렬 비용 발생 | 삽입 자체는 빠르나 중복 체크 비용 존재 |
| SELECT | 단순 조회 및 높은 TPS 처리에 유리 | 복잡한 Join, 대량 분석, 특수 인덱스 조회에 유리 |
| MVCC 방식 | Undo Log 활용 (Rollback Segment) | Tuple 내 다중 버전 관리 (Dead Tuple 발생) |