티스토리 뷰

MSA

1. 모놀리틱 아키텍처 이해

wavid 2020. 12. 21. 16:52

모놀리틱 아키텍처 예시

  • 주문 ↔ 상품 간 서로 정보를 가져다 쓰기 위해서 Share.jar를 두고, 공유해서 사용.
  • 대부분의 개발은 Share.jar에 개발하게 됨.
  • Share.jar의 전체적인 싱크를 맞춰야하므로, 배포작업이 커지게 됨.
  • 버저닝할 때 SNAPSHOT으로 넣어둠. (SNAPSHOT이란 고정된 버전이 아님. SNAPSHOT이면 계속 원격 레포지토리에서 새로 받아오게 됨.)
  • 하나의 DB
  • 소스 코드만 100MB 이상 (수백만 라인의 공통 코드)

모놀리틱 아키텍처 정리

  • 대부분 IT 회사의 시작은 모놀리틱
  • 장점
    • 개발이 단순함 (repository 하나 체크아웃 받아서 띄우면 되니까)
    • 배포가 단순함 (war 하나만 배포하면 되니까)
    • Scale-out이 단순함 (서버 하나 복사하면 되니까)
      • 하지만 DB 성능으로 인한 한계가 있음
  • 단점
    • 무겁다 - IDE가 못 받쳐줌
    • 어플리케이션 시작이 오래 걸린다
    • 기술 스택을 바꾸기가 어렵다
    • 높은 결합도
    • 코드베이스의 책임 한계와 소유권이 불투명

 

[참고 및 출처]

www.youtube.com/watch?v=D6drzNZWs-Y&list=PL9mhQYIlKEhdtYdxxZ6hZeb0va2Gm17A5&index=1

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
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
글 보관함