[Kafka] 하나의 토픽의 여러 Consumer 설정

AnHyunDong·2022년 6월 30일
0

MLOps 프로젝트

목록 보기
12/18

개요

  • Django -> S3 -> Kafka
  • Kafka에 메세지 큐(MQ) Subcribe하여 broker로부터 데이터를 가져옴
  • Kafka-python API를 사용하여 Python Consumer 개발 예정

TroubleShooting

  • Spark를 사용한 이유는 병렬 분산처리를 하여 빠르고, 효율적으로 사용하기 위해서이다.
  • Consumer를 같은 topic으로 연결시켜주면 모든 Consumer에 같은 데이터가 들어감 > 중복

해결방안

  • Consumer-Group을 만들어 하나의 토픽을 여러 Consumer에 분산하여 처리 시킬 수 있음

코드

  • Kafka

    • sendvideo 토픽 생성시 파티션 수를 3개로 설정
    /opt/kafka/bin/kafka-topics.sh --create --partitions 3 --topic sendvideo --bootstrap-server broker:9092
  • Consumer(Python)

    • consumer group 생성
    • group 이름은 video-group으로 생성

결과

  • Broker
    • 토픽 자세히 보기 명령어
  /opt/kafka/bin/kafka-topics.sh --describe --topic sendvideo  --bootstrap-server broker:9092

  • Consumer

URL

Walker

profile
사진은 남아 추억이 메모는 남아 스펙이 된다

0개의 댓글