https://pythaac.tistory.com/424
- Vartalap 포기
- 이미 구현된 채팅서버로 모니터링을 시도하려 했었음
- 어찌저찌 Docker에 올려보는 테스트까지는 성공
- 사전지식이 부족해서 많이 해맸음 - 1. 모니터링 대상이 모호
- 무엇을 모니터링 해야하지?를 고민하니 잘 모르겠다 - 2. 서브태스크가 커짐
- 주요 목적은 마이크로서비스 환경 + 모니터링인데, 이 코드를 숙지하는데에 로드가 커질 것으로 생각된다 - 3. 모니터링 대상을 숙지해야함
사전 지식이 부족해서 해맸던만큼, 간단하더라도 직접 구현하여 데이터 발생 환경에 익숙해지는 것이 더 낫다
https://pythaac.tistory.com/432
- 구현할 서비스
- 간단한 주문 서비스(버거킹에서 주문할 때 생각함)
- 이유
- 위의 글에서 정리했던 블로그 글이 있다
- 이해하기쉽고 물흐르듯 글의 흐름이 정말 좋았다
- 마이크로서비스 아키텍처 -> 문제점(트랜잭션) -> 해결방법(이벤트-드리븐) - 위 글에서 들어주신 예시와 비슷하게 구현해보는 것이 목적
- 구성
- 지점 서비스(branch-service)
- 지점
- 이름 - 기능
- 지점 CRUD
- 지점
- 상품 서비스(product-service)
- 상품
- 이름
- 가격 - 기능
- 상품 CRUD
- 상품
- 주문 서비스(order-service)
- 주문
- 상품
- 수량
- 상태
- 카드번호 - 결제정보
- 카드번호
- 금액 - 기능
- 주문
- 주문
- 결제 서비스(payment-service)
- 결제정보
- 카드번호
- 금액 - 기능
- 결제확인
- 결제정보
- 지점 서비스(branch-service)
- 일단 이렇게 해보자
- 처음부터 욕심나서 이벤트 주도 아키텍처로 만들고
- CQRS 해보고 싶어서 그려보다가
- 그러면 Data Store는 Hadoop에 Hive같은 걸로 해야하지 않나?
- 이래서 언제 만들지...하다가 그냥 간소화하기로 함
- 데이터베이스가 전부 Redis?
- 일단은 MySQL이든 Redis든 구현하자
- 상품조회 / 지점조회가 빈번히 일어나서 (api-gateway나 order-service가 일단 캐싱을 안하기로 했으니)
- order-service는 원래 payment-service의 이벤트 처리를 기다리는 동안 저장하려했는데
- 그냥 주문조회 쌓아두는 목적으로 RDB로 저장하면 될듯?
- 일단은 MySQL이든 Redis든 구현하자
'만들기 > EagleEye' 카테고리의 다른 글
[EagleEye][환경세팅] 쿠버네티스 설치 1 - 설치 (0) | 2022.05.14 |
---|---|
[EagleEye][서비스구현] Spring boot with Docker (0) | 2022.05.13 |
[EagleEye][환경세팅] 채팅 서버 설치 (Vartalap) - 2차 시도 (0) | 2022.05.04 |
[EagleEye][환경세팅] 채팅 서버 설치 (Vartalap) - 1차 시도 (0) | 2022.05.03 |
[EagleEye][환경세팅] MongoDB 설치 (0) | 2022.05.02 |