도메인 주도 설계(9)
-
5장 : 마이크로서비스 설계
MSA에서 가장 중요한 관심사 : 기능적 응집성을 높이는 것, 타 서비스 간 의존도 낮추는 것 # 마이크로 서비스를 도출하는 방법 ## 비즈니스 능력에 근거한 도출 업무 기능 분해 : 업무 흐름에 따라 업무를 최상위에서 하위까지 대,중,소의 크기로 분리하고 수행하는 일을 체계적으로 정렬 전체적인 비즈니스를 이해할 때는 유용하나, 서비스 간 관계 파악 및 구체기능과 연관된 서비스 관리할 독립적인 데이터 식별을 어려움 ## DDD의 바운디드 컨텍스트 기반 도출 DDD에서는 하나의 큰 도메인을 중요도에 따라 도메인을 나누고 각 도메일을 하나씩 해결 ### 서브 도메인 비즈니스 도메인을 논리적으로 구분/분리되는 여러 하위 도메인 - 핵심 서브도메인 : 높은 우선순위 영역, 전략적으로 가장 큰 투자가 필요한 영역..
2023.05.22 -
3장 : 마이크로서비스 어플리케이션 아키텍처
# DB 중심 아키텍처 문제점 DB 중심 아키텍처 : 특정 RDB에 의존한 데이터 모델링을 수행한 다음 이 물리 테이블 모델을 중심에 두고 APP을 구현하기 위한 사고를 하는 방식 - 간단한 처리 로직은 편하나, 업무가 복잡해지면 점점 복잡성을 제어할 수 없음 - DB에 의존하게 되어 스케일 아웃 성능이 떨어짐 # 레이어드 아키텍처 프레젠테이션, 비즈니스로직, 데이터 엑세스 3계층으로 구분하는 것이 일반적 ## 레이어드 아키텍처 규칙 - 상위 계층이 하위 계층을 호출하는 단방향성 유지 - 바로 밑의 근접 계층만 활용 - 상위 계층이 하위 계층에게 영향 받지 않게 구성 - 하위 계층은 자신을 사용하는 상위 계층을 알지 못하게 구성 - 계층 간의 호출은 인터페이스를 통해 호출(의존성 분리) 현대 APP은 다..
2023.05.19 -
[도메인 주도 개발 시작하기 - 최범균 저] 한 장 요약
도메일 모델 시작하기 도메인에 따라 용어의 의미가 결정 여러 하위 도메인을 하나의 다이어그램에 모델링 하면 안 됨 각 하위 도메인마다 별도 모델을 만들어야 아키텍처 구성 표현 영역 : 사용자 요청 처리/사용자에게 정보 제공 HTTP 요청을 응용영역이 필요로 하는 형식으로 변환헤서 전달 응용 영역 : 사용자가 요청한 기능 실행 : 업무 로직을 직접 구현하지 않음 응용 서비스를 로직을 직접 수행하지 않고, 도메인 모델에 로직 수행을 위임 도메인 영역 : 시스템이 제공할 도메인 규칙 구현 도메인 핵심 로직 구현 인프라스트럭처 영역 : DB나 메시징 시스템 같은 외부 시스템 연동 처리 상위 계층에서 하위 계층으로의 의존만 존재 DIP 적용시 하위 기능을 추상화한 인터페이스는 고수준 모듈 관점에서 도출 도메인 영..
2023.01.13