본문으로 건너뛰기

Event Driven Architecture

ArchitecturalReactive1분 미만

의도

이벤트 드리븐 아키텍처를 사용하는 다른 어플리케이션에 특정 객체의 상태 변화를 알리고 관련 이벤트를 발송할 수 있습니다.

클래스 다이어그램

alt text
Event Driven Architecture

적용 가능성

아래와 같은 상황에서 이벤트 드리븐 아키텍처를 사용할 수 있습니다.

  • 느슨하게 연결된 시스템을 구축하고자 하는 경우
  • 반응형 시스템을 구축하고자 하는 경우
  • 확장성을 갖춘 시스템을 구축하고자 하는 경우

실제 적용 사례

  • Chargify라는 결제 API에서는 다양한 이벤트를 통해 결제 활동을 드러냅니다. (https://docs.chargify.com/api-eventsopen in new window)
  • Amazon의 AWS Lambda에서는 Amazon S3 버킷에서의 변경, Amazon DynamoDB 테이블에서의 수정이나 어플리케이션 및 기기에서 발생한 커스텀 이벤트에 대응하여 코드를 실행할 수 있습니다. (https://aws.amazon.com/lambdaopen in new window)
  • MySQL은 데이터베이스 테이블에서 발생하는 삽입이나 수정 이벤트를 기반으로 트리거를 실행합니다.

크레딧