본문 바로가기

(3)
[완독 후기] "가상 면접 사례로 배우는 대규모 시스템 설계 기초" 정리 및 후기 라꾸라꾸 프로젝트를 하면서 진행했던 스터디가 거의 2년째 꾸준히 이어오고 있는데요! 이번에는 "가상면접 사례로 보는 대규모 시스템 설계"책을 선정하여 스터디를 진행했습니다. 각자 책을 읽고 요약본을 정리한 후 발표했습니다. 이때, 이해가 되지 않은 부분은 ChatGPT를 활용하여 추가적으로 정리했습니다!  📘 느낀점어떤 상황을 주고 시스템 아키텍처를 설계해봐라라고 하면-> 이에 대한 대답으로 4단계를 나누어 "문제 정의 -> 대략적 설계 -> 상세 설명 -> 추후 고려해야할 점"으로 나눠 설명하는 구조였습니다. 1대의 서버에서 시작하여 어떻게 분산구조로 확장할 수 있는지 설명하는 부분이 흥미로웠습니다!그리고 책을 읽기 전 시스템을 설계할 때 막막한 경우가 많아 비슷한 서비스의 설계를 참고하곤 했는데 이..
Chap 7. 도메인 서비스 들어가며 이 부분은 내용은 짧지만 내용을 한 번에 이해하기 어려웠습니다…ㅠ 여러 애그리거트가 필요한 기능일 때는.. “도메인 서비스”를 이용한다. 🤔상황 : 결제 시 필요한 애그리거트는 상품, 주문, 할인, 회원 등이 있다. 이때, 할인 부분에서 쿠폰 할인, 등급 할인, 시즌 할인 등 다양한 조건들이 있다. 결제 금액 계산 로직을 한 애그리거트로 구현할 수 없다고 해서 억지로 주문 애그리거트에 넣는다면? ❌문제 : 코드가 길어지고 외부에 대한 의존이 높아지게 되며 코드를 복잡하게 만들어 수정을 어렵게 만드는 요인 도메인의 개념이 애그리거트에 숨어들어 명시적으로 드러나지 않는다. ⇒ “할인 금액 계산 로직을 위한 도메인 서비스”를 별도로 구현!그러면 다음과 같이 도메인 서비스를 구현해볼 수 있다. publ..
Chap1 - 1. 도메인 모델 시작하기 📘 1.1 도메인이란? 예를 들어, 온라인 서점 = “소프트웨어로 해결하고자 하는 문제 영역, 즉 도메인에 해당한다” 한 도메인은 다시 하위 도메인으로 나눌 수 있다. ex) 주문, 혜택, 회원, 결제, 배송 등 한 하위 도메인은 다른 하위 도메인과 연동하여 완전한 기능을 제공한다. ex) 고객이 물건을 구매하면 주문, 결제, 배송, 혜택 하위 도메인의 기능이 엮이게 된다. 소프트웨어가 도메인의 모든 기능을 제공하진 않는다. 특정 도메인을 위한 소프트웨어라고 해서 도메인이 제공해야 할 모든 기능을 직접 구현하는 것은 아니다. → 쇼핑몰 자체 시스템이 아닌 외부 배송 업체의 시스템을 사용하고 배송 추적 정보를 제공하는 필요한 기능만 일부 연동하는 방식 도메인마다 고정된 하위 도메인이 존재하는 것은 아니다...