
209
5
장
이벤트 주도 아키텍처 패턴
이벤트 주도 아키텍처
event
-
driven
architecture
는 소프트웨어 아키텍처 패러다임 중 하나로 이벤트에
기반한 일반화, 탐지, 이벤트 소비, 이벤트에 대한 반응을 사용합니다. 이벤트 주도 아키텍처를
통해 분산되고 확장 가능한 클라우드 네이티브 애플리케이션을 만들 수 있습니다. 동기 통신을
주로 사용하는 서비스 컴포지션 패턴과는 달리 이벤트 주도 아키텍처는 비동기로 동작합니다.
클라우드 네이티브 애플리케이션을 깔끔하게, 낮은 결합도로 개발할 수 있습니다. 확장도 쉽기
때문에 대규모 분산 클라우드 네이티브 애플리케이션 개발에서 기본이 되는 구조라 할 수 있습
니다.
이벤트
는 정보를 공유하기 위한 목적으로 사용합니다. 대부분의 경우 이벤트를 생성하는 애플
리케이션은 어떤 응답을 기대하지 않으며 대신 이벤트를 소비하는 애플리케이션 측이 이벤트
정보로 무슨 일을 할 것인지 결정합니다. 이벤트를 생성하는 애플리케이션 측이 응답을 요구하
는 경우에도, 이 응답은 직접적인 경로로 돌아오지 않습니다.
이벤트는 중요한 시스템 상태 변경 또는 상태 발생으로 볼 수 있습니다. 밥의 계좌에
50
달러를
입금한다고 생각해봅시다. 밥의 계좌 잔액이
50
달러만큼 증가하기 때문에, 시스템의 상태가
변경되었으며 이를 이벤트로 만들 수