Kazuaki Okui

Apache Kafka のトランザクションについて

kafka_logo

Apache Kafka(以下 Kafka)ではメッセージ送信をトランザクションにまとめてアトミックに行うことができます。

さらに Kafka から取り出したメッセージに何らかの処理を行い再度 Kafka に書き込む、という処理を行うにあたっては Offset Commit もトランザクションに含めることができます。

この記事ではトランザクションを用いて送信したメッセージが後段で読まれるまでの流れを説明し、さらに Offset Commit をトランザクション内で行う際の流れについても説明します。

続きを読む

Apache Kafka の Idempotent Producer について

kafka_logo

はじめに

この記事は SRA Advent Calendar 2025 の20日目の記事です。

Apache Kafka(以下 Kafka)には送達保証のための機能がいくつかあります。 この記事ではその中でも送達が重複するのを防止するための機能である Idempotent Producer について解説します。

Idempotent Producer は Kafka のバージョン 0.11.0.0 からある機能です。この記事ではバージョン 4.1.0 を元に解説します。

続きを読む

Ansible を用いた Kafka クラスターの構築

kafka_logo

はじめに

本記事では複数台のマシンを用いて Kafka クラスターを構築し、簡単な動作確認を行います。構築には Ansible を用いて、動作に必要な最低限の設定を行います。使用するバージョンは以下の通りです。

続きを読む