LostCatBox

Entity id 생성 방식 정리

Word count: 107Reading time: 1 min
2025/08/20 Share

Entity id 생성 방식 정리

빠른 ID 생성

  • 특징
    • 엔티티가 생성되기 전 ID 정책에 따라서 직접 생성된다.
    • key를 시스템에서 만들어낸다는 것은 기본적으로 충돌 내성이 필요하다
  • 예시
    • 도메인 모델에서 직접 generateId() 를 호출하여 ID를 발급
    • 엔티티 생성하기 전에 먼저 DB에게 getNextId() 호출해서 ID를 발급
    • 식별자 생성을 위한 BoundedContext를 만들고, 분산 환경에서도 유일한 ID 생성
  • 장점
    • 엔티티가 DB 저장 전이라도 도메인 이벤트 발행 시, id값이 포함될 수 있다
  • 단점
    • 직접 관리해줘야하고, 충돌의 위험이 존재한다.

느린 ID 생성

  • 특징
    • 엔티티가 생성된 후 ID가 생성된다.
  • 예시
    • AutoIncrement로 설정한 JPA-Entity ID
  • 장점
    • 엔티티 저장 시 동시성 이슈로부터 자유롭다.
  • 단점
    • ID가 명백히 DB 의존적이다.
CATALOG
  1. 1. Entity id 생성 방식 정리
    1. 1.1. 빠른 ID 생성
    2. 1.2. 느린 ID 생성