프론트엔드

Multirepo VS Monorepo

bread-gee 2024. 2. 26. 10:04

모노리포, 멀티리포는 간단히 생각하면 리포지토리를 어떻게 나눌 것이냐에 대한 방법론

 

모노레포 방식

모노레포, 즉 하나의 repository 내에서 각각의 기능을(상품, 결제, 장바구니) 패키지로 구현하여 이들을 import해가는 방식으로 구현하는 것이다.

즉, 모노레포는 관심사만 분리하는 것이다.

이렇게 하면 결제가 필요한 다른 페이지에서도 결제 패키지를 import하기만 하면 바로 페이지에서 사용이 가능하다는 장점이 있다.

또한 페이지와 패키지 사이에 인터페이스를 뚫어서 패키지 다운에 대한 처리를 더욱 유연하게 대응할 수 있다.

 

시스템의 각 서비스를 모두 하나의 리포지토리에서 일괄 관리한다.

서비스 간의 연동이 소스 단위로 이루어진다.

최상위 폴더부터 트리 구조로 서비스 폴더가 구성된다.

 

멀티레포 방식

시스템의 서비스별로 리포지토리를 각자 만들어서 관리한다.

서비스 간의 연동이 소스 단위로 이루어지지 않는다.

각 서비스가 별도의 폴더로 구성된다.

 

더보기

Monorepo !== Monolith

 


📌참고 사이트

https://blog.nrwl.io/misconceptions-about-monorepos-monorepo-monolith-df1250d4b03c

https://medium.com/@magenta2127/monorepo-vs-multi-repo-vs-monolith-7c4a5f476009

https://tech.buzzvil.com/handbook/multirepo-vs-monorepo/