/member-system-example

event driven 방식을 연습해보고 싶어서 만드는 프로젝트

Primary LanguageKotlin

이벤트 기반 아키텍처 연습용 저장소

간단한 회원 시스템을 기반으로 이벤트 기반 아키텍처를 구성해본다.

  • 회원 가입이 가능하다.

  • 신규 가입 환영 쿠폰을 발급한다.

  • 회원 가입 시 신규 가입 쿠폰을 발급한다.

    • ApplicationEventPublisher 사용하여 회원가입 이벤트를 발행하도록 변경
  • 회원, 쿠폰 시스템 분리

  • 회원 가입 시 쿠폰 API 에 HTTP 요청을 보내 신규가입 쿠폰을 발급한다.

  • AWS SNS, SQS 연결하여 회원가입 이벤트 발행

  • SQS 에서 회원가입 이벤트를 구독하여 신규가입 쿠폰 발급

  • SNS 주제 발행 시 이벤트 발행 이력 테이블에 저장

    • published 는 기본값 false
    • 구독 확인 SQS가 SNS 주제를 받으면 published 값이 true로 업데이트 되도록 수정