
47
1
장
마이크로서비스란?
독립적 배포를 위해서는 마이크로서비스를 느슨하게 결합
loosely
coupled
시켜야 한다. 즉, 다른 서
비스를 변경하지 않고도 한 서비스를 변경할 수 있어야 한다. 이는 서비스 간에 분명하고, 잘
정의되며, 안정적인 계약이 필요하다는 것을 의미한다. 몇몇 구현 방법은 이런 노력을 어렵게
만들기도 한다. 예를 들면 데이터베이스 공유는 특히 문제가 된다.
독립적 배포성, 그 자체로 매우 가치가 높지만 독립적 배포에 도달하려면 그 자체로 이점이 있
는 다른 요소들도 제대로 갖춰야 한다. 따라서 독립적 배포성에 중점을 둔다면 그 결과로 많은
부수적 혜택을 얻을 것이다.
안정적인 인터페이스를 갖고 느슨하게 결합된 서비스를 요구하는 목소리가 커지면서 마이크로
서비스 경계를 찾는 방법을 가장 먼저 생각하게 됐다.
1.2.21.2.2
비즈니스 도메인 중심의 모델링 비즈니스 도메인 중심의 모델링
도메인 주도 설계와 같은 기술을 사용하면 소프트웨어가 동작하는 실제 도메인을 더 잘 표현하
도록 코드를 구성할 수 있다.
44
마이크로서비스 아키텍처에서는 동일한 개념을 사용해 서비스
경계를 정의한다. 비즈니스 도메인을 중심으로 서비스를 모델링함으로써 새로운 기능
feature
을
좀 더 쉽게 출시하고 마이크로서비스를 다양한 방식으로 재결합해 사용자에게 새로운 ...