아파치 카프카

카프카 개념 및 용어

레알윙 2022. 8. 21. 15:06
반응형

브로커 

  • 카프카 클라이언틑와 데이터를 주고 받기 위해 사용하는 주체
  • 데이터를 분산 저장하여 장애가 발생하더라도 안전하게 사용할 수 있도록 도와주는 애플리케이션
  • 하나의 서버에는 한 개의 카프카 브로커 프로세스가 실행되지만 데이터를 안전하게 보관하기 위해서 3대 이상의 브로커 서버를 1개의 클러스터로 묶어서 운영

 

카프카 구조

 

카프카 구조

토픽

  • 토픽은 데이터를 구분하기 위해 사용하는 단위입니다.
    • RDBS랑 비슷한 개념
  • 토픽에는 한개 이상의 파티션이 존재하는데 파티션 내부에는 프로듀서로부터 받은 데이터를 보관
    • 위의 데이터를 레코드 
  • 토픽에 저장한 데이터들은 먼저 컨슈머가 가져가는 형태로 저장이된다.(FIFO)
  • 컨슈머에서 파티션에 저장되어있는 레코드를 가져가도 삭제 되지 않는다. (RabbitMQ랑 다름)
  • 새로운 컨슈머가 등록이되었을대 파티션의 0번 오프셋 레코드부터 선서대로 가져간다.
    • auto.offset.reset = earliest 옵션이 설정되어있어야 한다.

 

반응형