[Kafka] 카프카 디자인 특징

Kafka Design Characteristic

카프카는 분산 시스템이며 페이지 캐시를 사용해 I/O 병목지점을 줄이고 배치 처리를 통해 처리량을 향상시킨다

Distribute System

  • 단일 시스템보다 높은 성능을 얻음
  • 분산 시스템 중 하나의 서버 또는 노드 등이 장애가 발생하면 다른 서버 또는 노드가 대신 처리
  • 시스템 확장이 용이

Page Cache

빠른 엑세스를 위한 페이지 캐시를 이용하도록 디자인 되어있다
페이지 캐시는 OS에서 물리적으로 어플리케이션이 사용하는 부분을 할당하고 남은 부분을 사용하게 되며 최근에 사용한 데이터를 캐시해둬 디스크에 I/O를 하지 않아도 되기 때문에 처리량을 높혀준다

Batch

서버와 클라이언트 사이에서 데이터를 주고 받을 때 I/O가 발생한다
작은 I/O가 빈번하게 발생하면 속도를 저하시키기 때문에 카프카는 작은 I/O를 묶어서 처리할 수 있도록 배치 작업으로 처리한다

Author: Song Hayoung
Link: https://songhayoung.github.io/2020/07/11/kafka/Kafka_Design_Characteristic/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.