Skip to Content
Kafka: The Definitive Guide, 2nd Edition
book

Kafka: The Definitive Guide, 2nd Edition

by Gwen Shapira, Todd Palino, Rajini Sivaram, Krit Petty
May 2025
Beginner to intermediate
488 pages
8h 19m
Korean
O'Reilly Media, Inc.
Book available
Content preview from Kafka: The Definitive Guide, 2nd Edition

3장. Kafka 프로듀서: Kafka에 메시지 작성하기

이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com

큐, 메시지 버스, 데이터 저장소 플랫폼 등 어떤 용도로 Kafka를 사용하든, 항상 Kafka에 데이터를 쓰는 생산자, Kafka에서 데이터를 읽는 소비자 또는 두 가지 역할을 모두 수행하는 애플리케이션( )을 생성하여 Kafka를 사용하게 됩니다.

예를 들어 신용카드 거래 처리 시스템에서는 온라인 상점과 같은 클라이언트 애플리케이션이 결제가 완료되면 즉시 각 거래를 Kafka로 전송하는 역할을 담당합니다. 또 다른 애플리케이션은 이 거래를 규칙 엔진과 비교하여 즉시 확인하고 거래의 승인 여부를 결정할 책임이 있습니다. 그런 다음 승인/거부 응답을 Kafka에 다시 작성하고, 이 응답은 거래가 시작된 온라인 스토어로 다시 전파될 수 있습니다. 세 번째 애플리케이션은 Kafka에서 트랜잭션과 승인 상태를 모두 읽고 이를 데이터베이스에 저장하여 분석가가 나중에 결정을 검토하고 규칙 엔진을 개선할 수 있습니다.

개발자가 Kafka와 상호 작용하는 애플리케이션을 개발할 때 사용할 수 있는 기본 제공 클라이언트 API가 Apache Kafka와 함께 제공됩니다.

이 장에서는 Kafka 프로듀서의 디자인과 구성 요소에 대한 개요부터 시작하여 사용법을 배워보겠습니다. KafkaProducerProducerRecord 객체를 생성하는 방법, Kafka로 레코드를 전송하는 방법, Kafka가 반환할 수 있는 오류를 처리하는 방법에 대해 설명합니다. 그런 다음 프로듀서 동작을 제어하는 데 사용되는 가장 중요한 구성 옵션을 검토합니다. 마지막으로 다양한 분할 방법과 직렬화기를 사용하는 방법과 자체 직렬화기와 분할기를 작성하는 방법을 자세히 살펴보며 마무리하겠습니다.

4장에서는 Kafka의 소비자 클라이언트와 Kafka의 데이터 읽기에 대해 살펴봅니다.

타사 클라이언트

내장된 클라이언트 외에도 Kafka에는 바이너리 와이어 프로토콜이 있습니다. 즉, 애플리케이션이 Kafka의 네트워크 포트에 올바른 바이트 시퀀스를 전송하기만 하면 Kafka에서 메시지를 읽거나 Kafka에 메시지를 쓸 수 있습니다. 다양한 프로그래밍 언어로 Kafka의 유선 프로토콜을 구현하는 여러 클라이언트가 있어 Java 애플리케이션뿐만 아니라 C++, Python, Go 등과 같은 언어에서도 간단하게 Kafka를 사용할 수 있습니다. 이러한 클라이언트는 Apache Kafka 프로젝트의 일부가 아니지만, 프로젝트 위키에 비 Java 클라이언트 목록이 관리되고 있습니다. 와이어 프로토콜과 외부 클라이언트는 이 장의 범위를 벗어납니다.

프로듀서 개요

감사 또는 분석을 위한 사용자 활동 기록, 메트릭 기록, 로그 메시지 저장, 스마트 기기의 정보 기록, 다른 애플리케이션과 비동기 통신, 데이터베이스에 쓰기 전 정보 버퍼링 등 애플리케이션이 Kafka에 메시지를 써야 하는 이유는 다양합니다.

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Kafka: The Definitive Guide, 2nd Edition

Kafka: The Definitive Guide, 2nd Edition

Gwen Shapira, Todd Palino, Rajini Sivaram, Krit Petty
Kafka: The Definitive Guide

Kafka: The Definitive Guide

Neha Narkhede, Gwen Shapira, Todd Palino
Prompt Engineering for LLMs

Prompt Engineering for LLMs

John Berryman, Albert Ziegler

Publisher Resources

ISBN: 9798341659698