WarpStream - Confluent が獲得した Kafka 互換のデータストリーミングプラットフォーム
はじめに # WarpStream は Apache Kafka 互換のデータストリーミングプラットフォームです。 S3 などのオブジェクトストレージとシングルバイナリのエージェントだけで構成され、AZ(availability zone) 間のネットワーキングコストなし、ディスク管理不要、高いスケーラビリティを特徴とします...
記事を読むKRaft モードの Kafka をコンテナ環境にデプロイする
はじめに # 今年の初めに「KRaft による ZooKeeper レス Kafka クラスター構成」という記事でローカル環境で KRaft モードで Kafka を実行する方法について書きました。 この時は Docker や Kubernetes などコンテナ環境でのサポートが追いついておらず、設定にはかなりの手作業が必要でした。現在では手軽に構築できるようになっています。 macOS Sonoma / OrbStack 1.6.2 の環境で試しました...
記事を読むKRaft による ZooKeeper レス Kafka クラスター構成
はじめに # Kafka では ZooKeeper がトピック管理やブローカーのリーダー選出などを行なう構成になっています。 (以前の記事「Strimzi - Kubernetes で Kafka を運用するための Operators」から再掲) ZooKeeper に様々な管理をオフロードすることで、Kafka の実装はシンプルになります。しかし運用の観点からは2種類のクラスター管理など構成が複雑であり、ZooKeeper がボトルネックになるリスクなどが課題となっていました...
記事を読むKafka 互換の高効率なデータストリーミングプラットフォーム Redpanda
はじめに # Redpanda は Kafka 互換のイベントストリーミングプラットフォームです。 Redpanda | The streaming data platform for developers ロゴは Red Panda(レッサーパンダ)になっています。 JVM で動作する Kafka と異なり C++ で書かれており[1]、シングルバイナリで実行可能です。ZooKeeper のようなリソース管理サービスなどにも依存しません。 Kafka に比べて6倍のコスト効率が謳われています...
記事を読むイベント駆動アーキテクチャ時代の非同期 API 業界標準 AsyncAPI とそのエコシステム
はじめに # イベント駆動アーキテクチャ(Event-Driven-Architectures: EDA)について耳にする機会が増えてきました。EDA ではマイクロサービス間で同期的な通信を行うのではなく、イベントをトリガーとした非同期的な通信を行います。これによりスケーラブルで応答性の高いシステムが構築できる、IoT などの多数のイベントソースからの情報をリアルタイムに処理できるなどのメリットがあります...
記事を読むKafkaJS で Kafka Consumer / Producer を書く
Apache Kafka ではクライアントライブラリが様々な言語で開発されています。Confluent 公式では、Java / C++ / Go / .NET / Python がサポートされています。 Kafka クライアント | Confluent Documentation Node.js では KafkaJS が利用できます。個人開発のプロジェクトですが、記事執筆時点でスター3.2k、コントリビューター117人、採用プロジェクト10k以上とかなりメジャーなライブラリです...
記事を読むkcat - Kafka トピックと簡単にメッセージ送受信できる CLI
Kafka の Consumer や Producer のアプリを開発する際、Kafka トピックにメッセージを送信して開発中の Consumer アプリで受信を確認したり、Producer アプリから送信したメッセージをトピックから読み出して確認したりすることが必要になります...
記事を読むKafka Streams パイプラインを迅速に作成できる ksqlDB を触ってみる
ksqlDB は、Kafka クラスター上にリアルタイム性の高いアプリケーションを構築するための、ストリーム処理に特化したデータベースです...
記事を読むSpring Boot で作る Kafka Streams アプリケーション
Kafka Streams は Apache Kafka のクラスター上でデータのストリーム処理を実現するためのライブラリです。 Apache Kafka の公式ドキュメントには以下のようにあります(Google 翻訳による)...
記事を読むKafka の Web UI を提供する kafka-ui を試す
人気の分散メッセージングシステム Kafka では、オペレーション用のシェルスクリプト群は提供されていますが GUI は提供されていません。「Topic を作成する」、「Topic の Partition 数を増やす」、「Topic を流れるメッセージを確認する」、「Consumer によるメッセージ処理の進み具合を確認する」といったオペレーションには CLI を駆使する必要があります...
記事を読む