JSCODE Logo
프로그래밍 과외블로그후기멘토진
회사명 : JSCODE대표 : 박재성사업자 등록번호 : 244-22-01557통신판매업 : 제 2023-인천미추홀-0381 호
학원 명칭 : 제이에스코드(JSCODE)원격학원학원설립ㆍ운영 등록번호 : 제6063호

서울특별시 구로구 경인로 20가길 11(오류동, 아델리아)

Copyright ⓒ 2025 JSCODE - 최상위 현업 개발자들의 프로그래밍 교육 All rights reserved.

이용약관개인정보처리방침
← 블로그 목록으로 돌아가기

컨슈머가 메시지를 하나씩만 처리하는 현상

JSCODE 박재성
JSCODE 박재성
2025-12-06
author
JSCODE 박재성
category
Kafka
createdAt
Dec 6, 2025
series
실전에서 바로 써먹는 Kafka 입문
slug
consumer-one-message-at-a-time
type
post
updatedAt
Dec 6, 2025 05:39 AM

✅ Consumer가 메시지를 한 번에 하나씩만 처리하는 현상

  1. API 요청 여러 번 보내보기
    1. 이전 실습에서 만들어놨던 Prodcuer와 Consumer 서버를 실행시킨 뒤에, 이번에는 API 요청을 한 번이 아니라 세 번 연속으로 보내보자.
      notion image
      Consumer에서 요청을 성공적으로 처리할 수 있게 to에 입력하는 이메일을 fail@naver.com이 아닌 다른 메일로 수정해서 요청을 보내자.
       
  1. Consumer 서버의 로그 확인하기
    1. notion image
      코드에서 이메일 발송 작업이 오래 걸리는 걸 가정하기 위해 Thread.sleep(3000); 코드를 넣어뒀다. 그래서 API 요청을 보내고 나서 로그를 확인해보면 3초마다 이메일 발송 작업이 완료되는 걸 확인할 수 있다. 그런데 한 번에 하나의 이메일 발송 작업만을 처리하기 때문에, 총 3개의 이메일을 보내는 데 9초나 걸린다.
       
      Consumer 역할을 하는 Spring Boot는 멀티 쓰레드를 기반으로 여러 개의 요청을 병렬적으로 처리할 수 있는 구조를 가지고 있는데도 불구하고, 왜 비효율적으로 한 번에 하나의 요청만 처리하고 있는 걸까? 이 문제에 대한 원인은 Kafka의 중요 개념인 파티션(Partition)과 밀접한 관련이 있다. 따라서 다음 강의에서 파티션(Partition)이 뭔지 알아보자.
       
       
author
JSCODE 박재성
category
Kafka
createdAt
Dec 6, 2025
series
실전에서 바로 써먹는 Kafka 입문
slug
type
series-footer
updatedAt
Dec 6, 2025 05:39 AM
📎
이 글은 실전에서 바로 써먹는 Elasticsearch 입문 (검색 최적화편) 강의의 수업 자료 중 일부입니다.