비동기 논의
- https://hyeon9mak.github.io/why-occurs-deadlock-from-select-query/
- https://happy-coding-day.tistory.com/299
- https://happy-coding-day.tistory.com/299
# 레이어드 아키텍처 vs 헥사고날 아키텍처 비교
- 레이어드 아키텍처에서 무리한 DIP를 추구하려고 하면
- 퍼시스턴스 레이어의 메서드를 추가할 때도
- 비스니스 레이어 먼저 봐야하는 복잡함이 있음
- 헥사고날-> 포트 인 아웃이 많음
- 기능을 찾을 때 포트먼저 봄
- 퍼시턴스 어댑터를 먼저 보지 않음
- 무신사 집중 채용 중 -> 써보기 ..
- 반버논 도메인주도 설계 핵심-> 얇은 책 추천
- 도메인 vs 성능 고민
- 성능은 인덱스 튜닝 정도로
- 경험 위주 (도메인 + 구조)
- 서비스를 어떻게 풀어서 돈을 벌게 했는지..
- 사이드 프로젝트 만들어서 운영중에 있다면 많은 가산점이 있을 것
- 헥사고날 이벤트 질문
- 관리하기가 어려움??
- 글로벌 이벤트 & 로컬 이벤트
- 둘다 관리하기 어려움
- 어디서 리스닝을 하고 있는지 모름
- 트랜잭션 문제도
- 유지보수 관점은 좋을 수 있어도 구현이 어려울 수 있음
- 코드 위에 어디서 리스닝 하고 있음을 주석으로 남긴 적이 있음
- 메시지 큐를 위한 사전을 만들기도 했음 -> 맵
- 이벤트 처리할 경우 장점 - 유지보수가 API보단 용이
- 느슨한 결합
- 받는 쪽에서는 받는 것만
- 보내는 것에서 보내는 것만
- 응답값이 필요 없는 경우 -> 푸시 같은 것
- API는 응답값이 올떄까지 기다려야함
- 제 3의 방법으로 프로토콜 버퍼를 많이 쓰기도 함 (구글에서 만듬)
- 메시지큐
- 데이터 정합성의 단점
- EDA - 트랜잭션 아웃박스 패턴
- 보상 트랜잭선 -> 보상이 안되는 이벤트도 있음
- **API 문서 작성 & 애그리게이트**
- 애그리게이트
- 메시지를 중요시 생각하기
- 객체의 책임과 메시지
- 필드를 일단 생각하지 말기
'학습일지 > 학습일지' 카테고리의 다른 글
학습일지 - 241006 (0) | 2024.10.06 |
---|