inflearn logo
강의

講義

知識共有

トラフィック急増に耐えるサーバーシステム設計 - Coupon発行サービス

実戦サーバースタックを一目で見る

domain에 @Entity 와 Repository를 함께 둔 이유가 궁금합니다

解決済みの質問

108

yhr050085115

投稿した質問数 21

1

Domain 패키지에 Coupon 같은 @Entity 와 CouponRepository 를 함께 두셨더라고요!

영속성을 storage(또는 Infrastructure) 로 따로 분리하는 구성도 있는데, 여기서는 엔티티와 레파지토리 모두 domain 에 두신게 궁금했습니다.


혹시 이 서비스 규모에서는 db가 바뀔 가능성이 낮고, 엔티티를 밖으로 빼면 도메인 <-> 엔티티 매핑 비용만 늘어난다고 보셔서 의도적으로 

domain 안에 함께 두신걸까요? 아니면 다른 기준이 있으셨는지 궁금합니다.

java kotlin mysql docker spring-boot kafka redis

回答 1

2

apiece

안녕하세요 바나나님!

결론부터 말씀드리면, 이 강의는 저희 강의 주제에 집중하고자 패키지 구조는 간단한 구성으로 진행하게 되었습니다.

말씀하신 구성은 domain에는 순수한 도메인 모델만 두고, (인터페이스를 둔 뒤), 엔티티와 레포지토리를 storage 패키지 하위에 두는 패턴으로 이해했습니다.

반면에, 저희는 그것과는 다른 계열을 따랐는데요. domain 안에 엔티티객체를 그대로두고 사용했습니다. 말씀해주신 엔티티 매핑 비용도 물론 고려가 필요하지만, 그보다는 나눌 이유가 굳이 없는게 더 컸습니다. Coupon이나 Issuance 엔티티가 작아 도메인객체와 엔티티분리가 꼭 필요한 상황은 아니었고, 자주 변경되는 부분도 아니었고, 복잡한 구성보다는 간단한 구조로 실습하는게 더 유리하다고 판단했기 때문입니다.

좋은 질문 감사합니다.

ClusterIP 실습 시 Connection refused

0

7

1

서비스에서와 컨트롤러의 @Vaild 적용 차이에 대해서

0

13

2

Apple Silicon에서 CI 빌드 이미지가 재시작을 반복할 때 (jib platforms 수정)

1

19

1

제공된 스크립트를 어디서 받을 수 있나요?

0

14

0

업캐스팅 문제 예시 4번 부모 호출

0

15

1

해결했습니다

0

16

1

copilot-instruction.md

0

9

0

미션 제출 방식 건의

0

13

0

강의 슬라이드 자료

1

26

2

트랜잭션 내 Redis I/O 에 대한 궁금한점

1

17

1

모의고사 자료 해설이 너무 불친절하네요.

0

38

2

부모의 생성자 출력 관련

0

15

2

이론파트 재탕문제

0

19

0

누락코드

0

18

1

다차원 배열 포인터 질문있습니다

0

30

3

11강 [실습] Docker로 MySQL1 분만에 실행하기

0

86

2

11강 [실습] Docker로 MySQL1 분만에 실행하기

0

63

2

@Modifying에 관하여

1

69

1

Issuance 테이블에 status, couponId 인덱스가 꼭 필요할까요?

2

79

1

부하 테스트 시 설정 관련 질문드립니다

1

116

2

kafka 이벤트 발행 실패 시 at-least-once를 보장하는 방법이 궁금합니다.

2

125

1

Jib 이미지 빌드에서 docker credential 관련으로 이슈가 있다면

1

136

1

스크립트에 대해 질문 있습니다.

1

109

1

같은 사용자가 연속된 중복 호출할 경우 어떻게 되는지 궁금합니다!

2

125

1