![[코드가 환경을 모르는 구조 7/7] Variant와 스냅샷 캐시, 그리고 다섯 축의 총합](https://cdn.sanity.io/images/v31psllp/production/05ffda096002d40620c7bc75e64174185b7d8a1d-1684x1030.png)
14
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
이 게시물은 Variant와 스냅샷 캐시를 통해 테스트 인프라의 경계와 성능 최적화를 설명합니다.
variant: 컨테이너 계열을 식별하는 값 객체, 이미지·initScripts·env·startupTimeout·reuseEnabled·variantKey 조합으로 동일성 판정
writer/reader 분리: CQRS·CDC 환경에서 쓰기용과 조회용 스키마·changelog·초기 상태 요구가 달라서 variant로 분리하여 독립 컨테이너로 테스트
스냅샷 캐시: 한 variant와 changelog 세트 조합을 해시 키로 로컬 스냅샷을 보관해 Liquibase 재실행 비용 회피
- 캐시 키에 반영하는 네 입력: changelog 내용, DB 이미지 버전, schemaInit SQL 내용, containerEnv 및 variant 필드
![[코드가 환경을 모르는 구조 6/7] 컨테이너는 왜 폭발하는가](https://cdn.sanity.io/images/v31psllp/production/84f3d9c344480bec28c26726a1ef04c0407b32cd-1684x1030.png)

![[미래를 담아낸 뼈대 5/7] 코드가 환경을 모르는 구조](https://cdn.sanity.io/images/v31psllp/production/626db41a03292c4b57863b75c7bc5e755e395184-1684x1030.png)