Kafka

Kafka - (8) 응용 기술

카프카 기반의 여러 기술들을 간단히 소개한다. 이는 나중에 더 자세히 다루기로 하고 간단히 역할만 다루어본다.

Read
Kafka

Kafka - (7) Offset Commit

자동 커밋과 수동 커밋으로 나뉘고, 수동 커밋은 동기 커밋과 비동기 커밋으로 나뉜다. 각각 상황과 용도에 맞도록 적절하게 활용해야 성능과 가용성 차원에서 이슈가 없다.

Read
Kafka

Kafka - (6) Offset과 Consumer Group, 그리고 Lag

각 파티션마다 메시지가 저장되는 위치를 오프셋이라고 한다. 컨슈머 그룹 단위로 이 오프셋으로 줄세워진 레코드를 순차적으로 컨슘하게 되며, 컨슈머가 얼마나 더 컨슘할 게 남았는지가 Lag이다.

Read
Kafka

Kafka - (5) Replication과 ISR

고가용성을 위해 파티션을 복제해두는 걸 리플리케이션이라고 하며, 그로 인해 리더(원본) 파티션과 팔로워(복제본) 파티션이 나뉜다. 리더와 싱크가 맞는 리플리카를 ISR이라고 하여 리더 후보로 삼는다.

Read
Kafka

Kafka - (4) Topic과 Partition

카프카 내에서 데이터를 구분하기 위한 단위를 토픽이라 한다. 토픽은 분할되어 Partition이라는 형태로 여러 브로커에 분산 저장된다.

Read
Kafka

Kafka - (3) 관련 인프라

카프카의 정보를 관리해주는 Zookeeper, Avro 기반의 스키마를 관리하여 스키마를 강제해주는 Schema Registry 등이 대표적으로 카프카와 관련된 인프라이다.

Read
Kafka

Kafka - (2) Producer, Broker, Consumer

메시지를 송신하는 역할을 하는 프로듀서, 수신하는 역할을 하는 컨슈머, 그리고 그 둘 사이의 중간 매개체 역할을 하는 브로커로 이루어져있다.

Read
Kafka

Kafka - (1) Kafka란?

스트리밍 데이터를 사용하기 위해 만들어진 Pub-Sub 모델의 메시지 큐. 고성능, 고가용성의 메시지 애플리케이션이며 클러스터로 구성되어 분산환경에 특화되어 있다.

Read