본문 바로가기

인프라

카프카 (KAFKA)란 무엇인가?

728x90

카프카 하면 책 변신을 쓴 프란츠 카프카 밖에 몰랐는 데, 이번시간을 계기로 정리하게 되었다.

KAFKA란 고성능 분산형 이벤트 스트리밍 플랫폼이다!

사실 이것만 들어서는 무슨말인지 감이 잘 안온다.

 

하나하나 풀어서 살펴보자 이벤트 스트리밍 이게 핵심인거 같은 데,

이벤트라는 것은 발생한 활동을 말하고, 이 이벤트는 보통 프로세스의 일환으로 또 다른 활동을 촉발한다. 주문하기, 항공기 좌석예매하기 등등이 모두 이벤트.

 

이러한 이벤트들의 전체 프로세스, 흐름을 이벤트 스트림이라고 하고

소비자, application은 스트리밍 플랫폼을 통해 이러한 이벤트 스트림을 매우 빠른 속도로 일련의 프로세스 및 순서에 맞게 처리하게 된다.

이러한 일들을 분산형으로 진행하는 것이 kafka이다.

 

Kafka 기능

  • 애플리케이션에서 데이터 또는 이벤트 스트림을 게시하거나 구독할 수 있음
  • 장애가 발생하더라도 안전하고 안정적으로 레코드 저장
  • 레코드를 실시간 처리
  • 메시지 브로커
    • 애플리케이션, 시스템, 서비스간 메시지 프로토콜을 변환해주며 상호통신을 가능케 해줌

Use case

  • 실시간 스트리밍 데이터 파이프라인
  • 실시간 스트리밍 애플리케이션
    • 이벤트 스트림에 의해 구동되는 애플리케이션 ,자체적으로 스트림을 생성하는 애플리케이션
      • 가까운 매장의 제품 재고량을 계속 업데이트 해주는 리테일 사이트
      • 클릭 스트림 분석을 토대로 개인별 추천이나 광고를 보여주는 사이트

이렇게 정리하고도 잘 이해가 안되서 좀 더 잘 이해하기 위해 추가적으로 포스팅을 작성해봤다.

https://ddevgrit.tistory.com/59 

 

KAFKA 더 쉽게 이해하기

KAFKA를 이전에 설명 했지만, 사실상 완전히 와닿지는 않았고 이해하기 어려웠다. 이에 좀 더 자세히 살펴볼까하다 이해하기 쉽게 그림으로 잘 설명되어있는 게 있어 보여주려 한다. 출처: https://w

ddevgrit.tistory.com

 

728x90

'인프라' 카테고리의 다른 글

쿠버네티스 노드 란?  (0) 2024.03.29
ElasticSearch란?  (0) 2024.03.28
캐시가 db보다 빠른 이유  (0) 2024.03.14
Redis란?  (0) 2024.03.13
쿠버네티스 이미지란?  (0) 2024.03.09