✅ 깔끔한 테스트를 위해 기존에 생성되어 있는 Kafka 리소스 삭제하기 전체 토픽 조회하기 토픽 삭제하기 전체 컨슈머 그룹 조회하기 컨슈머 그룹 삭제하기 토픽 다시 생성하기 ✅ Spring Boot가 Kafka에 메시지 잘 넣는 지 테스트해보기 Sp
✅ Spring Boot로 하나의 컨슈머로 메시지 병렬적으로 처리하기 하나의 컨슈머 서버만 실행시키기 컨슈머 서버의 코드 수정하기 컨슈머 서버 재실행시키기 API 요청 보내면서 컨슈머 서버 로그 확인하기 ✅ 그림으로 이해하기 하나의 컨슈머 서버에서 하
✅ 여러 개의 파티션에 메시지가 골고루 들어가는 지 확인해보기 이전 강의에서 특정 토픽에 메시지를 넣으면 여러 파티션에 메시지가 적절하게 분산된다고 했다. 이 때, 메시지의 형태에 따라 파티션에 분배되는 방식이 달라진다. key가 포함되지 않은 메시지
✅ 리더 파티션에 장애가 발생하면 어떻게 될까? 이전 강의에서 아래와 같이 설명했었다. 정말 그런지 실습을 통해 확인해보자. 리더 파티션에 장애가 발생하면 팔로워 파티션이 리더 역할(프로듀서로부터 메시지를 받고, 컨슈머가 메시지를 처리)을 대신 수행한
✅ 하나의 파티션에는 정말 하나의 컨슈머만 할당될까? 이전 강의에서 ‘하나의 파티션은 하나의 컨슈머에게만 할당된다’라는 파티션의 특징을 배웠다. 이번 강의에서는 아래 그림과 같이 하나의 파티션에는 정말 하나의 컨슈머만 할당이 되는 지 실습을 해볼 것이
✅ 적정 파티션 개수 계산하는 방법 적정 파티션 개수를 정할 때의 핵심은 ‘처리가 지연되는 메시지가 생기지 않는 선에서 파티션을 최소로 설정하는 것’이다. 공식으로 표현하자면 다음 공식을 만족하게 파티션 수를 결정하면 된다. 프로듀서가 보내는 메시지량
✅ Spring Boot로 Kafka에서 메시지 조회하기 (Consumer) 위 그림과 같이 Consumer 역할을 하는 Spring Boot 서버를 추가로 만들어 Kafka에 들어있는 메시지를 처리해보자. Spring Boot 프로젝트 셋팅 appl
이전 강의에서는 Kafka에서 비동기적으로 메시지를 처리하고, 재시도(Retry) 정책을 통해 메시지 처리에 실패했을 때의 대응법을 배웠다. 그러나 재시도를 여러 번 했음에도 불구하고 처리에 실패하는 메시지는 어떻게 해야 할까? ✅ Dead Lette
✅ 회원 가입 비즈니스 로직 짜기 회원 가입한 사용자 정보 DB에 저장하기 Kafka에 전송할 메시지 객체 만들기 Json 형태의 String으로 만들어 주는 함수 추가하기 Kafka에 메시지 보내는 로직 추가하기 ✅ 중간 체크 전체 프로젝트 구조에서
✅ 카프카(kafka)란? Kafka의 의미를 검색해보면 아래와 같이 나온다. Apache Kafka는 수천 개의 회사에서 고성능 데이터 파이프라인, 스트리밍 분석, 데이터 통합 및 미션 크리티컬 애플리케이션에 사용되는 오픈 소스 분산 이벤트 스트리밍