✅ 프로젝트 구조에 맞게 Kafka 셋팅하기 Kafka랑 연결되어 있는 Spring Boot 서버 종료하기 기존에 셋팅해뒀던 카프카 서버 3대를 백그라운드에서 실행시키기 기존에 생성되어 있던 토픽 삭제하기 토픽 생성하기 DLT 토픽 생성하기 3개의 k
✅ 회원 가입 비즈니스 로직 짜기 회원 가입한 사용자 정보 DB에 저장하기 Kafka에 전송할 메시지 객체 만들기 Json 형태의 String으로 만들어 주는 함수 추가하기 Kafka에 메시지 보내는 로직 추가하기 ✅ 중간 체크 전체 프로젝트 구조에서
✅ 회원가입 API 만들기 User 엔티티 생성하기 UserRepository 만들기 Controller 만들기 RequestDto 만들기 Service 만들기
✅ 이메일 발송을 처리할 Consumer 로직 짜기 Kafka의 메시지를 가져와 담을 객체 만들기 Consumer 로직 작성하기 이메일 발송 로그를 남기기 위한 엔티티, 레포지토리 생성하기 Consumer 로직 보완하기 DLT로 빠지는 메시지 처리하는
✅ Spring Boot로 UserService 서버 초기 환경 설정하기 Spring Boot 프로젝트 셋팅 application.yml에 Kafka 연결을 위한 정보 작성하기 application.yml에 H2 데이터베이스 연결을 위한 정보 작성하기
✅ 잘 작동하는 지 테스트해보기 User Service, Email Service 서버 실행하기 API 요청 보내보기 EmailService 로그 확인하기 DB 조회해보기 ✅ 정리 이번 프로젝트를 통해 MSA 구조에서 Kafka를 활용해볼 수 있었다.
✅ Spring Boot로 EmailService 서버 초기 환경 설정하기 Spring Boot 프로젝트 셋팅 application.yml에 Kafka 연결을 위한 정보 작성하기 application.yml에 H2 데이터베이스 연결을 위한 정보 작성하
강의 초반에 Kafka는 MSA의 구조에서 많이 사용한다고 했다. MSA 구조에서 어떤 식으로 Kafka를 사용하는 지 빠르게 경험할 수 있게, 정말 간단한 MSA 프로젝트를 만들어보자. ✅ 구현할 기능 회원 가입을 하면 회원가입 축하 이메일 발송하게
✅ 메시지를 어디까지 읽었는 지 기억하고, 그 다음 메시지부터 처리하기 Kafka에서 컨슈머 그룹(Consumer Group)이라는 개념을 활용하면, 각 컨슈머 그룹(Consumer Group)이 어디까지 메시지를 읽었는지를 오프셋(offset)이라는
✅ Kafka에 메시지 넣기 Producer가 Kafka로 메시지를 보내는 역할을 한다고 했다. Producer를 대신해 CLI 명령어를 활용해 Kafka에 메시지를 넣어보자. 토픽 생성 Kafka의 특정 토픽에 메시지 넣기 아무런 에러가 뜨지 않았다