Apache Kafka

카프카(kafka)는 분산 스트리밍 플랫폼(Distributed streaming platform)이다. 분산 스트리밍 플랫폼은 아래의 기능을 가지고 있어야 한다. 데이터 스트림을 게시(Publish)하고 구독(Subscribe)할 수 있어야 한다. 이 점에서 메시지 큐 혹은 엔터프라이즈 메시징 시스템과 유사한 면이 있다. 내결함성(장애에 대한 내성)을 ...

Kafka 소개

카프카(kafka)는 분산 스트리밍 플랫폼(Distributed streaming platform)이다. 분산 스트리밍 플랫폼은 아래의 기능을 가지고 있어야 한다. 1. 데이터 스트림을 게시(Publish)하고 구독(Subscribe)할 수 있어야 한다. 이 점에서 메시지 큐 혹은 엔터프라이즈 메시징 시스템과 유사한 면이 있다. 1. 내결함성(장애에 대한...

Amazon Managed Streaming for Apache Kafka - MSK

나는 항상 우리의 고객이 스트리밍 데이터를 이용하는 것을 보며 놀라곤 한다. 예를들어 기업과 전문가 집단에게 가장 신뢰받는 뉴스기업 중 하나인 Thomson Reuters 의 경우 데이터를 수집하고 분석 및 시각화 하여 사용자 경험의 지속적 개선을 지원하는 솔류션을 구축했다. Hayday, Clash of Clan 및 Boom Beach 같은 게임을 제공하...

Docker로 Kafka 클러스터 만들기

이 문서는 Kafka에 대한 최소한의 경험을 가지고 있는 것으로 가정한다. 아래의 지식이 필요하다. 에 대한 기본 이해 에 대한 기본 이해 컨슈머와 프로듀서 파티션 컨슈머 그룹의 경우 가용 영역 갯수 만큼의 브로커를 만들어야 한다. 테스트하려는 도쿄리전은 3개의 가용 영역으로 구성돼 있으니 최소 사양으로 만들 경우 (kafka실행을 위한 최소 스펙)kafk...

Kafka 시작하기

메시지 애플리케이션은 어떤 애플리케이션에서 다른 애플리케이션으로 데이터를 보내는 시스템이다. 메시지 시스템은 두 애플리케이션 사이에서 전령 역할을 한다. 메시지의 전송과 수신은 메시지 시스템이 안전하게 처리해 줄 것이라는 것을 보증한다. 따라서 메시지 애플리케이션은 메시지의 송/수신 과정에 신경 쓸 필요 없이, 메시지(데이터)에만 신경을 쓰면 된다. 메시...

Kafka exactly-once

IoT 관련일을 하고 있다. 클라이언트로 부터 메시지를 수신하는 메시지 게이트웨이, 수집한 메시지를 백앤드 서버로 안전하게 보내기 위한 메시지 큐, 메시지큐에서 데이터를 처리하고 저장하는 부분에 관심을 가지고 있다.IoT 메시지 인프라는 비교적 작은 크기의 메시지를 대량으로처리할 수 있어야 한다. 사람과 사람과의 메시지 특성과는 차이가 있다. 이 분야는 대...

kafka를 이용한 chatting 프로그램 개발

Kafka 프로듀소와 컨슈머의 개발하는 법을 익힌다. 컨슈머 그룹에 대한 개념을 잡는다. 메시지 교환 프로그램의 구조를 개발한다. IoT응용을 찾는다.kafka의 구성을 끝냈다고 가정한다. 아직 kafka 구성을 마치지 않았다면 문서를 참고해서 구성을 끝내자.채팅 프로그램은 아래의 구조를 가진다. 가장 단순한 구조로 만들고, 이 구조를 확장해 나가자.쉽...

Kafka 디자인

우리는 대기업이가지고 있는 모든 실시간 데이터를 처리 하기 위한 통합 플랫폼의 역할을 할 수 있도록 카프카를 설계했다. 이를 위해서 광범위한 유즈 케이스를 고려했다.실시간 로그 집계와 같은 대용량 이벤트 스트림을 처리하려면 높은 대역폭을 확보 할 수 있어야한다. 오프라인 시스템에서도 주기적인 데이터로드를 지원하기 위해서는 대규모의 백로그를 처리 할 수 있어...