
345
16
장
이벤트 기반 마이크로서비스 배포
WARNING
_
마이크로서비스는 독립적인 배포가 가능해야 하며 그렇지 않은 경우라면 안티패턴입니다. 어
떤 마이크로서비스를 정기 배포할 때 다른 마이크로서비스도 배포를 동기화해야 한다면 경계 콘텍스트가 잘
못 정의되어 있으니 반드시 다시 검토해야 한다는 뜻입니다.
16.2
마이크로서비스 배포 아키텍처 컴포넌트
마이크로서비스 배포 아키텍처에는 크게 코드를 만들어 배포하기 위한 시스템과 마이크로서비
스가 사용하는 컴퓨팅 리소스, 두 가지 컴포넌트가 핵심적인 역할을 합니다.
16.2.1
지속적 통합, 전달, 배포 시스템
지속적 통합, 전달, 배포 시스템은 리포지터리에 커밋된 코드 변경분을 반영하여 마이크로서
비스를 빌드, 테스트, 배포합니다. 마이크로서비스를 성공적으로 관리하고 대규모로 배포하려
면 반드시 치러야 할 마이크로서비스 세금의 일부입니다. 이런 시스템 덕분에 마이크로서비스
소유자는 자신의 마이크로서비스를 언제 배포할지 결정할 수 있는데, 이는 조직에서 사용 중인
마이크로서비스 수를 확장하는 데 있어 필수적인 기능입니다.
지속적 통합
continuous
integration
(
CI
)은 여러 기여자가 변경한 코드를 자동으로 통합해서 하나의 소
프트웨어 프로젝트를 완성하는 과정입니다. 변경 시점부터 프로덕션 배포 시점까지 ...