백엔드 개발 · 기초
카프카의 '브로커(Broker)'는 무엇이며, 카프카 클러스터 내에서 어떤 기능을 담당하나요?
힌트 · 브로커는 카프카 클러스터를 구성하는 서버 노드로, 프로듀서로부터 메시지를 받아 저장하고 컨슈머에게 메시지를 전달하는 핵심 역할을 합니다.
메시지 저장파티션복제리더팔로워
모범답안
카프카 브로커는 카프카 클러스터를 구성하는 핵심 서버 노드입니다. 쉽게 말해, 메시지를 저장하고 관리하는 역할을 담당합니다.
프로듀서로부터 메시지를 받아서 토픽의 파티션에 저장하고, 컨슈머가 요청하면 해당 메시지를 전달해줍니다.
각 브로커는 여러 개의 파티션을 가질 수 있으며, 파티션은 데이터의 복제를 통해 고가용성을 보장합니다. 파티션에는 리더와 팔로워가 존재하는데, 리더는 읽기/쓰기 요청을 처리하고 팔로워는 리더의 데이터를 복제하여 장애 발생 시 리더 역할을 수행할 수 있도록 합니다.
따라서 브로커는 메시지 큐 시스템의 안정적인 운영과 데이터 유실 방지에 중요한 역할을 합니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 메시지 큐 (Kafka) 면접 질문
- 카프카 토픽의 '파티션(Partition)' 개념과 그 역할에 대해 설명해주세요. 왜 파티션이 필요한가요?
- 카프카에서 '오프셋(Offset)'은 무엇이며, 컨슈머(Consumer)가 메시지를 처리하는 데 있어 어떤 의미를 가지나요?
- 카프카의 '프로듀서(Producer)'와 '컨슈머(Consumer)'의 역할은 각각 무엇인지 설명해주세요.
- Kafka에서 토픽을 여러 파티션으로 나누는 주된 이유와 이로 인해 얻을 수 있는 이점을 설명해 주세요.
- Kafka의 Consumer Group이 무엇이며, 이를 통해 메시지 소비의 확장성과 고가용성을 어떻게 확보하는지 설명해 주세요.
- Kafka 컨슈머가 메시지를 어디까지 읽었는지 추적하는 오프셋(Offset)은 무엇이며, 컨슈머 그룹 내에서 오프셋이 어떻게 관리되는지 설명해 주세요.