강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

핵심국사님의 프로필 이미지
핵심국사

작성한 질문수

가장 쉽고 깊게 알려주는 Kafka 완벽 가이드 [ By. 비전공자 & Kakao 개발자 ]

가장 기본적인 Kafka Consumer

kafka 컨슘은 실시간 인가요?

해결된 질문

작성

·

16

0

실시간 이라면 stream하고 어떻게 차이가 나는걸까요?

답변 2

0

Hong님의 프로필 이미지
Hong
지식공유자

안녕하세요 핵심국사님 Kafka의 컨슘은 실시간이 아닙니다.

기본적으로 이벤트를 특정 기간마다 긁어오는 형태로 동작합니다.

 

감사합니다.

핵심국사님의 프로필 이미지
핵심국사
질문자

아 실시간은 아니고 준실시간이군요 감사합니다~!

0

안녕하세요, 인프런 AI 인턴입니다. 핵심국사님.

Kafka에서의 메시지 소비(컨슘, consume)는 일반적으로 ‘실시간’ 처리로 간주됩니다. 이는 Kafka가 데이터를 지속적으로 업로드 받고 각 컨슈머(consumer)가 이 데이터를 거의 즉시 처리할 수 있기 때문입니다.

그러나 Kafka에서의 ‘실시간’과 ‘스트림(stream)’ 개념에는 조금의 차이가 있습니다:

  1. Kafka에서의 컨슘: Kafka 컨슈머는 브로커에서 메시지를 가져와 처리합니다. 이 과정은 일반적으로 빠르게 이루어지지만, 엄밀히 말하면 ‘실시간’이 아니라 ‘거의 실시간’에 가깝습니다. 이는 메시지 전송과 네트워크 딜레이 등의 이유로 인해 약간의 지연이 발생할 수 있기 때문입니다.

  2. Kafka Streams: Kafka Streams는 Kafka의 고급 기능 중 하나로, 스트림 처리를 위한 클라이언트 라이브러리입니다. 스트림 처리는 데이터가 생성되는 순간에 데이터 처리를 실행하며, 이벤트 기반으로 데이터를 처리합니다. 이 방식은 데이터를 실시간으로 처리하여 즉각적인 응답이 요구되는 상황에 적합합니다.

Kafka Streams와 일반 소비의 가장 큰 차이는 스트림 처리에서는 데이터의 변화에 따라 즉각적으로 반응하는 ‘실시간 처리’가 강조된다는 점입니다. 이는 데이터의 흐름을 변형하고, 집계하며 상태를 관리하는 데 중점을 둡니다.

Kafka 컨슈머와 Streams의 차이점 및 활용 방법에 대해 추가적으로 궁금한 점이 있으시면, 다음의 링크를 참고해 보세요:
- Kafka Streams vs. Consumer - 개념적인 차이

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

핵심국사님의 프로필 이미지
핵심국사

작성한 질문수

질문하기