open:애그리게이트와-일관성-경계

애그리게이트와 일관성 경계

    • 모델이 취할 수 있는 상태의 수를 제한
    • 항상 참이어야 하는 조건
    • 경우에 따라 규칙을 일시적으로 해제
    • 주문 라인은 한번에 한 배치에만 할당될 수 있다
      • 주문 라인이 0 또는 1개의 배치에만 할당될 수 있고 2개 이상의 배치에 할당될 수 없음
      • 코드에서 실수로 같은 라인에 대해 Batch.allocate()를 두 가지 다른 배치에 호출하는 일이 없어야 함
  • 비즈니스 다른 요구사항
    • 주문 라인 수량보다 더 작은 배치에 라인을 할당할 수는 없다.
      • 제약조건 : 배치에 있는 재고보다 많은 재고를 주문 라인에 할당할 수 없음
      • 불변조건 : 가용 재고 수량이 0 이상이어야 함
      • 시스템 상태를 업데이트할 때마다 코드는 이런 불변조건을 어기지 않는지 확인 필요
    • 재고를 여러 주문 라인에 동시에 할당할 수 있게 되고, 배치를 변경하는 동시에 주문 라인을 할당할 수도 있음
    • 보통 DB 테이블에 락(lock)을 적용해 이런 문제를 해결
  • open/애그리게이트와-일관성-경계.txt
  • 마지막으로 수정됨: 2022/01/27 06:23
  • 저자 127.0.0.1