MSA

Jiny's 개발 일기·2023년 11월 30일
0

memoir

목록 보기
3/3

개발하다 보면 Security, Filter, Validation 등 DDD의 관점에서 말하자면 어그리거트 별로 서로 다른 조건이 필요할 때가 있다. 이러한 부분을 세밀하게 관리하자면 Monolithic에서는 복잡한 조건 절로 분기하여 처리하게 될 것이고 이러면 유지보수는 물론이고 클린 코드의 관점에서 봐도 딱히 좋은 상황은 아니다.

MSA로 도메인을 분리하게 되면 분기처리는 필요가 없어질 뿐 아니라 세밀한 관리에 있어서도 큰 도움이 된다.

예를 들어 특정 Client(A 그룹)가 조회하는 API(1)가 있고 모든 Client가 조회하는 API(2)가 있다고 했을 때 Monolithic은 A 그룹을 제외한 모든 사용자에 대해서 1을 사용하지 못하도록 막아야(F1)하며 2 API에 대해서는 F1이 적용되지 않도록 하여야한다. 여기에다 권한(로그인 했냐 안했냐 등)컨트롤 까지 들어가면 해야하는 일이 한두가지가 아니게 된다.

하지만 MSA에서는 각자의 도메인에서 각자의 역할만 하면 되니 누구는 막고 누구는 풀고 하는 세세한 컨트롤 작업이 줄어들 수 밖에 없다.

profile
옛날 블로그 주소 : https://jeongjin984.github.io/

0개의 댓글