公開日

カフカはなぜ速いのでしょうか?

著者

"Kafka のパフォーマンスに貢献した設計上の決定は数多くあります。この投稿では 2 つに焦点を当てます。この 2 つが最も重要な意味を持つと考えられます。

1️。 1 つ目は、Kafka のシーケンシャル I/O への依存です。

2️。 Kafka にパフォーマンス上の利点をもたらす 2 番目の設計上の選択は、効率を重視すること、つまりゼロ コピーの原則です。

以下の図は、プロデューサとコンシューマの間でデータがどのように送信されるか、およびゼロコピーが何を意味するかを示しています。

🔹ステップ 1.1 - 1.3: プロデューサーがデータをディスクに書き込む

🔹ステップ 2: 消費者はゼロコピーなしでデータを読み取ります

2.1: データはディスクから OS キャッシュにロードされます

2.2 データが OS キャッシュから Kafka アプリケーションにコピーされます

2.3 Kafka アプリケーションはデータをソケット バッファーにコピーします

2.4 データはソケットバッファからネットワークカードにコピーされます

2.5 ネットワーク カードは消費者にデータを送信します

🔹ステップ 3: 消費者がゼロコピーでデータを読み取る

3.1: データはディスクから OS キャッシュにロードされます

3.2 OS キャッシュは、sendfile() コマンドを介してデータをネットワーク カードに直接コピーします。

3.3 ネットワーク カードは消費者にデータを送信します

ゼロ コピーは、アプリケーション コンテキストとカーネル コンテキストの間で複数のデータ コピーを保存するためのショートカットです。 "

日本語版は Ai 支援を使用しているため、小さな間違いが存在する可能性があることをご了承ください。 カフカはなぜ速いのでしょうか?

著者

Ai Base Network (ABN), ABN ASIAは、アカデミアに深く関わり、アメリカ、オランダ、ハンガリー、日本、韓国、シンガポール、ベトナムでの仕事経験を持つ人々によって設立されました。ABN ASIAは、学問とテクノロジーが機会と出会う場所です。最先端のソリューションと優れたソフトウェア開発サービスにより、ビジネスがレベルアップし、グローバルシーンに挑戦できるよう支援しています。 私たちの取り組み: より速く。 より良い。 より信頼性が高くなります。 ほとんどの場合、価格も安くなります。

いつでも、ITサービス、デジタルコンサルティング、既製のソフトウェアソリューション、または提案依頼書(RFP)をお探しの際は、お気軽にお問い合わせください。お問い合わせ先は[email protected]です。お客様のテクノロジーに関するニーズにお応えします。

ABNAsia.org

© ABN ASIA