Kafka

kafka 설치 및 실행

https://itstudy402.tistory.com/59

openJDK21 설치

https://www.rosehosting.com/blog/how-to-install-java-21-on-ubuntu-24-04/

가장 마지막 데이터를 읽고 싶다!

그렇다면 해야 할 일

  1. consumer group 지정
  2. auto-offset-reset latest로 설정
spring:
  kafka:
    consumer:
      bootstrap-servers: 3.39.174.63:9092
      group-id: myGroup  # 컨슈머 그룹 ID 설정
      auto-offset-reset: latest  # 최신 메시지부터 읽기
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      enable-auto-commit: true  # 자동 커밋 활성화
# 오프렛 리셋
[kafka 설치 경로]/bin/kafka-consumer-groups.sh --bootstrap-server [Server IP]:9092 --group [myGroup] --reset-offsets --to-latest --execute --topic [your-topic-name]

# 오프셋 위치 확인
[kafka 설치 경로]/bin/kafka-consumer-groups.sh --bootstrap-server [Server IP]:9092 --describe --group [myGroup]

만약 여러 서비스가 동일한 데이터를 받아야 한다면?

  1. producer가 1개의 토픽에 데이터를 밀어넣는다
  2. consumer를 그룹으로 나눈다
  3. partition을 나눌 필요 없이 그룹ID로 데이터를 가져온다

Kafka cluster 구성net