독립적 배포
- 하나의 마이크로 서비스만 단독으로 배포 가능해야함.
도메인을 중심의 모델링
- 한 마이크로서비스, 한 기능(즉, 결합도를 최대한 낮춰야함)
고유한 상태를 가짐
- 마이크로서비스 간 DB를 고유하지 않음. 데이터를 공유하지 않음
크기가 적당해야함
- 마이크로서비스는 조직이 다룰 수 있는 개수 이상을 넘어가지 말아야함(복잡도를 키우지 말아야한다는 뜻인듯)
- 마이크로서비스 간의 경계를 명확하게 정의
유연함
- 판을 키우지 말고 점진적으로 마이크로서비스로 넘어가는 것을 권장
- 마이크로서비스는 옵션이기 때문에 맹목적으로 매몰될 필요는 없다라고 해석됨
- 전 회사에서도 MSA로 가기로 결정 후 장바구니 관련 서비스를 따로 마이크로서비스로 뺐었음
아키텍쳐와 조직을 맞추기
- 조직 구조를 아키텍쳐에 맞게, 도메인에 맞게 편성
- 프론트팀, 백엔드팀, 데브옵스팀, DB팀 등으로 나누는게 아니라 '상품팀' '유저팀' '구매팀'처럼 도메인에 맞춰 조직을 편성
가장 중요한 건 '독립적 배포'라 했으니 나머지는 유연하게 회사 상황에 맞춰 꾸리는 것이 중요해보인다.
728x90
'개발일기' 카테고리의 다른 글
개발의 세계관 (0) | 2023.06.21 |
---|---|
[Node] node로 크롤러 개발 이슈들 정리 (0) | 2023.05.15 |
암호학에서의 솔트(salt) (0) | 2023.04.12 |
처음으로 외주를 하면서 느낀 점 (0) | 2022.10.03 |
자고 일어나니 회사가 사라졌다 (0) | 2022.08.31 |
댓글