この記事はWeChatの公開アカウント「Coder Reading」から転載したもので、著者はCoder Readingです。この記事を転載する場合は、Coder Reading の公開アカウントにご連絡ください。 Kafka は、オープンソースで分散型、スケーラブル、高性能なパブリッシュ/サブスクライブ メッセージング ミドルウェアです。大量のデータを処理するシステムを構築したい場合、Kafka は非常に良い選択肢になります。この記事では、Kakfa に基づいてパブリッシュ/サブスクライブ プログラムを構築する方法について説明します。 Kafka アーキテクチャ このセクションでは、まず Kafka のインフラストラクチャと関連する用語について見てみましょう。一般的に、Kafka は次のコンポーネントで構成されています。
Kafka では、データの基本単位はキーと値のペアであるメッセージです。 Kafkaはすべてのメッセージをbyte[]に変換します。プロデューサー、コンシューマー、クラスターはすべて TCP プロトコルを使用して通信することに注意してください。 Kafka クラスター内の各マシンはブローカーと呼ばれます。クラスターにマシンを簡単に追加して、容量の水平拡張を実現できます。 次の図は、Kafka の基本的なアーキテクチャを示しています。 Kafka のトピックはメッセージの論理的なコレクションを表します。わからない場合は、トピックをカテゴリとして考えることができます。カテゴリの下には自然に分類されたメッセージがあり、これらのメッセージはプロデューサーによって生成されます。 Kafka サーバーには 1 つ以上のトピックが含まれ、各トピックには 1 つ以上のパーティションを含めることができます。パーティションは、順序付けられたメッセージのシーケンスとして定義されます。パーティションが Kafka の動的拡張の鍵となることは注目に値します。つまり、パーティションを複数の Kafka サーバーに分散できます。具体的な操作プロセスは、Kafka のプロデューサーが指定されたトピックにメッセージをプッシュし、トピックをサブスクライブしているコンシューマーがメッセージを取得できることです。 Kafka と RabbitMQ の比較 Kafka と RabbitMQ はどちらも非常に人気のあるオープンソースのメッセージ ミドルウェアです。では、RabbitMQ ではなく Kakfa を選択すべきなのはどのような場合でしょうか?主な考慮事項は次のとおりです。
生産者と消費者の育成 このセクションでは、Kafka のプロデューサーとコンシューマーを構築する方法について説明します。これには、それぞれの役割を果たす 2 つのコンソール プログラムを構築する必要があります。 nuget を使用して kafka-net をインストールできます。コマンドは次のとおりです。
プロデューサーコンソールを構築する
消費者向けコンソールを構築する
最後に、プロデューサー プログラムとコンシューマー プログラムを順番に起動すると、「Welcome to Kafka!」というメッセージが表示されます。コンシューマー コンソールに表示されます。 実際、オープンソースの世界には、RabbitMQ、MSMQ、IBM MQ Series など、メッセージ ミドルウェアが数多く存在します。現在、Kafka はメッセージ ミドルウェアであるだけでなく、ビッグ データ用のストリーミング処理プラットフォームでもあります。 Kafka は、IoT プログラム、ログ集約、その他の低レイテンシで強力なメッセージ保証のシナリオでもよく使用されます。アプリケーションに高速かつスケーラブルなメッセージ ミドルウェアが必要な場合は、Kafka が最適な選択肢となります。 Kafka に関する記事を後ほど共有します。 ネットでApache Kafkaメッセージングを使用する方法 |
<<: IoT アナリティクス: 製造業者の 3 分の 1 がソフトウェアをクラウドに移行する予定
>>: 分散ストレージの技術動向(I):3つのレプリカの欠点
サーバーを水に浸す単相浸漬液冷却技術は、グリーン データ センターの新しい標準になりつつあります。 ...
ウェブマスターの間では、「コンテンツは王、外部リンクは皇帝、内部リンクは側室、コードは将軍、キーワー...
みなさんこんにちは、私はShi Touです。今朝早く、誰かがQQで私を追加しているのを見ました。この...
今週、Pinduoduoは2018年第4四半期および通年の監査されていない財務報告書を発表しました。...
ローカルウェブサイトは中国のインターネットの独特な領域であり、まだ初期段階にあります。この分野の価値...
本社は新たにネットワーク会社を設立しました。実は、2010年の時点ですでに強力なネットワークチームが...
1. 今年の共同購入の売上高は210億ドルを超えると予想されており、定期的な割引には目新しさがない独...
[[420872]]過去 2 年間で、Kubernetes は Swarm と Mesos を打ち負...
以前、サービスメッシュに関する一連のコンテンツについて触れました。しかし、アプリケーション サービス...
BuzzFeedのウェブサイトテンセントテクノロジーロイスは12月13日に報告した。 [ケーススタデ...
ガートナーは2021年4月21日、2020年の世界パブリッククラウドIaaS市場データを発表しました...
最近では、高性能マルチコア CPU、仮想化、高速でユビキタスなインターネット アクセスなどのテクノロ...
新年が近づいてきました。ramnode から新年の贈り物が届きました。すべての SVZS と SKV...
ウェブサイトの特定のキーワードのランキングが安定しているかどうかをどのように判断すればよいでしょうか...
WeChat プロモーション、WeChat マーケティング、WeChat を宣伝する方法は? WeC...