일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Problem Solving
- English
- realclass
- 개발자
- Daily Challenge
- 30분
- 운동
- 뭐든
- 사이드
- 스탭퍼
- leetcode
- 파비최
- 매일
- 미드시청
- 링피트
- FIT XR
- 프로젝트
- 읽기
- 3줄정리
- 영어원서읽기
- 괜찮음
- 쓰릴오브파이트
- 영어공부
- Writing
- 리얼 클래스
- 10분
- 월간
- 만화도
- 화상영어
- 잡생각
- Today
- Total
파비의 매일매일 공부기록
파이썬으로 살펴보는 아키텍처 패턴 - 14장 #3 본문
14.7 기술 리뷰어들의 질문
- 이 모든 것을 한 번에 적용해야 하는가? 조금씩 적용은 불가한가? : 당연히 조금씩 적용해도 됨. 기존 시스템이 있다면 서비스 계층을 만들어서 오케스트레이션을 한 곳에 모으는걸 권함.
- 일단 서비스 계층이 생기면 로직을 모델에 넣고 검증이나 오류 처리 같은 미묘한 관심사를 진입점에 넣기가 쉬움.
- 유즈 케이스를 추출하면 기존 코드 중 상당 부분이 망가진다면? : 그냥 복사해서 붙여 넣는걸 권함. 단기적으로는 더 많은 중복도 가능. 큰 코드 기반을 고치는 과정은 지저분하고 고통스러운 프로세스.
- 모든 게 순식간에 좋아지리라 기대하지 말고, 애플리케이션의 일부가 더 지저분해지더라도 걱정하지 말 것.
- CQRS가 꼭 필요한지? : 저장소만 써도 됨. 이 책의 기법들은 삶에 더 쉽게 도움이 되려고 하는 것. 반드시 강제로 지켜야 하는 규율은 아님.
- 큰 시스템에서 유스 케이스가 어떻게 서로 상호 작용하는지? 어떤 유스 케이스가 다른 유스 케이스를 호출하면 문제가 생기는지? : 메시지 버스를 이용해 관심사 분리가 필요할 수 있다.
- 여러 저장소나 애그리게이트를 사용하는 유스 케이스인가? : 애그리게이트는 일관성 경계이므로 유스 케이스가 두 애그리게이트를 원자적으로 업데이트해야 한다면 일관성 경계가 잘못된 것. 이상적으로는 동시에 변화시키려는 모든 대상을 포함한 새로운 애그리게이트로 옮겨야 하는지 생각해봐야 함.
- 읽기 전용이지만 비즈니스 로직이 많이 있는 시스템이라면? : 뷰 모델에 복잡한 로직이 있을 수도 있음. 읽기와 쓰기 모델의 일관성과 스루풋 요구사항이 달라 두 모델을 분리하는 걸 권함. 대부분의 경우 읽을 때는 간단한 로직을 쓰지만 항상 그렇지는 않음. 특히 권한과 인증 모델이 있으면 읽는 부분에서 복잡도 증가.
- 마이크로 서비스로 꼭 만들어야 하는가? : 그럴 필요는 없음. 꼭 필요하지 않음.
- 장고는 계속 써도 되는가? : 부록에 해당 내용 남겨둠.
14.8 풋건
- 신뢰성 있는 메시징은 어렵다 : 레디스 발행자/구독자는 신뢰할 수 없고, 일반적인 메시징 도구로 사용하면 안 됨.
- 서로 독립적으로 실패할 수 있게 작고, 초점이 한정된 트랜잭션을 명시적으로 선택
- 멱등성에 대해서는 다루지 않음 : 핸들러를 재시도할 시 어떤 일이 발생하는지에 대해서는 다루지 않음. 실전에서는 핸들러를 멱등적으로 만들어 같은 메시지로 핸들러를 반복 호출해도 상태 변경이 단 한 번만 일어나게 해야 함.
- 시간이 지나면 이벤트의 스키마를 바꿔야 할 수도 있음 : 이벤트를 문서화하고, 스키마를 고객과 공유할 방법을 찾을 필요가 있음. 그래서 JSON 스키마와 마크 다운을 선호.
'Study > Python' 카테고리의 다른 글
프로그래머를 위한 파이썬 - 1장 #1 (0) | 2021.11.08 |
---|---|
프로그래머를 위한 파이썬 - 0장 (0) | 2021.11.07 |
파이썬으로 살펴보는 아키텍처 패턴 - 14장 #2 (0) | 2021.11.05 |
파이썬으로 살펴보는 아키텍처 패턴 - 14장 #1 (0) | 2021.11.04 |
파이썬으로 살펴보는 아키텍처 패턴 - 13장 #3 (0) | 2021.11.03 |