1. Apache Kafka 소개 및 아키텍쳐

kafka
출처 :https://kafka.apache.org/intro

[목차]
1. 소개 및 아키텍쳐
2. 다운로드 및 실행 ( Windows )
3. JAVA를 이용한 producer 와 consumer 작성
4. Intellij 환경에서 Spring boot를 이용하여 Kafka api 구축 (1)

 

# kafka 란?

Apache Kafka (아파치 카프카)는 분산형 스트리밍 플랫폼입니다. Linkedin에서 개발되었고 2011년에 오픈소스로 공개되었습니다.

# 카프카는 일반적으로 두 가지 광범위한 종류의 응용 프로그램에 사용됩니다.

  1. 시스템 또는 응용 프로그램간에 데이터를 안정적으로 얻는 실시간 스트리밍 데이터 파이프 라인 구축
  2. 데이터 스트림을 변환하거나 이에 반응하는 실시간 스트리밍 애플리케이션 구축

# 기본 개념

  1. Kafka는 여러 데이터 센터로 확장 될 수있는 하나 이상의 서버에서 클러스터로 실행됩니다.
  2. 카프카 클러스터는 주제 라는 카테고리 에 레코드 스트림을 저장 합니다 .
  3. 각 레코드는 키, 값 및 타임 스탬프로 구성됩니다

 

# 카프카는 4 가지 핵심 API를 제공합니다.

카프카 아키텍쳐
출처 : https://kafka.apache.org/intro
  • Producer API
    한 개 이상의 topic에 스트림을 게시 할 수있는 응용 프로그램을 제작
  • Consumer API
    한 개 이상의 topic을 구독하고 생성 된 레코드 스트림을 처리 할 수 있습니다.
  • Streams API
    한 개 이상의 topic에서 입력 스트림을 소비하고 출력 스트림을 생성합니다.
    효과적으로 입력 스트림을 출력 스트림으로 변환 할 수 있습니다.
  • Connector API
    kafka 에 기록된 데이터를 기존 응용 프로그램 또는 DB에 연결하는 재사용 가능한 Producer 또는 Consumer를 구축 및 실행할 수 있습니다.