강의 초반에 Kafka는 MSA의 구조에서 많이 사용한다고 했다. MSA 구조에서 어떤 식으로 Kafka를 사용하는 지 빠르게 경험할 수 있게, 정말 간단한 MSA 프로젝트를 만들어보자.
✅ 구현할 기능
회원 가입을 하면 회원가입 축하 이메일 발송하게 만들기
회원 가입 기능
회원 가입한 사용자 정보 DB에 저장하기
이메일 발송 기능
이메일 발송 기록 DB에 저장하기
✅ 프로젝트 아키텍처
사용자에 관련된 기능만 가지고 있는 User Service 서버와, 이메일에 관련된 기능만 가지고 있는 Email Service 서버를 각각 만들 것이다. (MSA 구조)
** 심플한 프로젝트 구조를 만들기 위해 User Service 서버에는 회원가입 기능만 만들 것이고, Email Service 서버에는 이메일 발송 기능만 만들 예정이다.
User Service와 Email Service는 각각의 DB를 사용하게끔 구성한다. (MSA 구조)** 심플한 프로젝트 구조를 위해 h2 데이터베이스로 구축할 예정이다.
✅ 참고 사항
해당 강의는 MSA에 초점을 맞춘 강의가 아니라 Kafka에 초점을 맞춘 강의이므로, MSA의 깊이 있는 내용을 다루진 않을 것이다. 즉, MSA에 대해서 자세히 모르더라도 쉽게 따라올 수 있도록 프로젝트를 구성했으니 너무 걱정하지 말자.