728x90
개요
우리가 사진을 찍을 때 특정 순간을 포착하여 저장하듯이, 소프트웨어 개발에서도 '스냅샷'이라는 개념으로 특정 시점의 상태를 포착하여 저장합니다.
Git에서는 commit으로, Maven/Gradle에서는 버전 관리로 이 개념이 구현되어 있습니다. 이번 글에서는 이 "SNAPSHOT"의 개념에 대해서 정리하고자 합니다.
SNAPSHOT이란 ❓
Snapshot은 특정 시점의 데이터 상태나 시스템 상태를 캡처한 것을 말합니다. 주로 다음과 같은 맥락에서 사용됩니다.
Maven/Gradle에서의 SNAPSHOT
version = '1.0.0-SNAPSHOT'
- 개발 중인 버전을 의미
- 매 빌드마다 새로운 버전으로 간주
- 항상 최신 버전을 가져옴
- 로컬 캐시를 무시하고 원격 저장소에서 확인
데이터베이스 측면
- 특정 시점의 DB 상태를 저장
- 백업/복구 용도로 활용
- 장애 발생 시 특정 시점으로 롤백 가능
가상화/클라우드 측면
aws ec2 create-snapshot \
--volume-id vol-1234567890abcdef0 \
--description "Daily backup"
- VM이나 인스턴스의 특정 시점 상태 저장
'TIL,일일 회고' 카테고리의 다른 글
[TIL, 일일 회고] 2024.12.09 - PostgreSQL : 데이터베이스 생성 설정 파라미터 이해하기 (0) | 2024.12.09 |
---|---|
[TIL, 일일 회고] 2024.12.08 - Dockerfile : ARG 명령어 알아보기 (0) | 2024.12.08 |
[TIL, 일일 회고] 2024.12.06 - Docker : RUN, CMD, ENTRYPOINT 명령어의 차이점알아보기 (0) | 2024.12.06 |
[TIL, 일일 회고] 2024.12.05 - Dockerfile의 WORKDIR 알아보기 (0) | 2024.12.05 |
[TIL, 일일 회고] 2024.12.04 - JIT 컴파일러를 통한 자바의 성능 최적화 (0) | 2024.12.04 |