반응형
2020/05/13 - [MessageQueue/Kafka] - kafka 특징
2020/05/13 - [MessageQueue/Kafka] - kafka 설치 및 clustering
kafka 란 ?
- 오픈 메세지 브로커(메세징큐)
- 실시간 데이터 피드를 관리하기 위해 통일된 높은 스루풋의 낮은 레이턴시를 지닌 플랫폼을 제공하는것이 목표이다.
- pub-sub 구조
- 분산 환경에 특화되어 설계 되어 있다.
- 클러스터 구성, fail-over , replication 과 같은 여러 특징을 가지고 있다.
kafka 특징 및 기타 Message Queue 와의 차이점
카프카와 다른 message quque 의 가장큰 차이점은 통신할때 TCP/IP통신을 통해 바로 디스크로 쓴다는 점이다. (Rabbit MQ의 경우 APMQ 프로토콜 이용) 다른 MessageQueue도 메모리에만 올리지않고 설정을 통해 서버가 다운되더라도 디스크에 저장하는 설정을 할 수 있다. 카프카는 별도의 설정 없이 디스크에 적대하며, 환경설정에서 그주기를 변경 할 수 있다. 통신방법의 차이로 인해 (TCP/IP, APMQ) 카프카는 초당 10만건, Rabbit MQ는 초당 2만건의 데이터 처리가 가능하다.
kafka 주요 용어
- producer
- 메세지 생산(발행)자.
- producer 는 선택한 topic으로 데이터를 발행한다.
- producer 는 메세지를 발행할 topic을 선택하는 책임을 제게 된다.
- 이때 전통적인 round-bin 방식을 사용하여 균등하게 발행 하거나, 메세지 키를 이용하여 특정 partition 에 특정키를 가진 메세지를 보낼수 있다.
- consumer : 메세지 소비자
- consumer group : consumer 들끼리 메세지를 나눠서 가져간다.offset 을 공유하여 중복으로 가져가지 않는다.
- broker : 카프카 서버를 가리킴
- zookeeper : 카프카 서버 (+클러스터) 상태를 관리
- cluster : 브로커들의 묶음
- topic : 메세지 종류
- partitions : topic 이 나눠지는 단위
- Log : 1개의 메세지
- offset : 파티션 내에서 각 메시지가 가지는 unique id
kafka extension
- Zookeeper
- 분산코디네이터. 브로커를 모니터링하고, 토픽, 파티션을 관리한다.
- kafka
- 스트림 프로세싱 영역에서는 산업표준이라고 할 수 있다.
- ksql
- Kafka를 위한 streaming SQL 이다.
- kafka topic ui
- topic 정보를 확인 할 수 있는 kafaka topic ui
- ZooNavigator
- 주키퍼 정보를 웹으로 네비게이션하고 편집 할 수 있다.
반응형
'MessageQueue > Kafka' 카테고리의 다른 글
Message Queue 처리 구조에 따른 종류 (0) | 2023.06.02 |
---|---|
Event broker 와 Message broker 란? (0) | 2023.06.02 |
docker kafka 보안 설정 (0) | 2023.05.31 |
kafka patitioning 과 replication, ack ISR 의 관계 (7) | 2023.05.03 |
kafka cluster 구성 (0) | 2020.05.13 |