コンセプト
キーワードブローカ メッセージの保存と転送を担当する Kafka サーバー。 トピック メッセージ カテゴリ、Kafka はトピックに応じてメッセージを分類します。リレーショナル データベースのテーブルに似ています。 パーティション トピックのパーティション。トピックには複数のパーティションを含めることができ、トピック メッセージは各パーティションに保存されます。 オフセット ログ内のメッセージの位置は、パーティション上のメッセージのオフセットとして理解でき、これはメッセージを表す一意のシーケンス番号でもあります。 プロデューサー メッセージ プロデューサーは、Kafka クラスター内のブローカーにメッセージをプッシュします。 消費者 メッセージ コンシューマーは Kafka クラスターからメッセージをプルし、メッセージを消費します。 消費者団体 消費者のグループ化、各消費者はグループに属している必要があります 動物園の飼育員 クラスター ブローカー、トピック、パーティションなどのメタデータを保存します。また、ブローカーの障害検出、パーティション リーダーの選出、負荷分散などの機能も担います。 Kafka アーキテクチャ設計を抽象から具体まで理解するマクロ的な視点で見ると、それはストレージシステムです。 詳しく言うと、複数のプロデューサー、複数のコンシューマー、ブローカー クラスター、および Kafka で構成されます。 さらに詳しく説明すると、ブローカーにはコントローラーの役割があります。各ブローカーは複数のトピックの異なるパーティションを保存でき、各パーティションにはリーダーとフォロワーが存在します。この情報はすべて zk に登録されます。 クラスタアーキテクチャと新バージョンの最適化の理解コントローラよく知られているルールがあります。ビッグデータ分散ファイルシステムでは、95% がマスタースレーブアーキテクチャであり、一部は ElasticSearch などのピアツーピアアーキテクチャです。 Kafka にもマスタースレーブアーキテクチャがあります。マスターノードはコントローラーと呼ばれ、残りはスレーブノードと呼ばれます。コントローラーは、Zookeeper と連携して Kafka クラスター全体を管理する必要があります。 効果クラスター全体を調整および管理します。 責任
コントローラーの選出これは Zookeeper に基づいて実装されており、Zookeeper の znode モデルと監視メカニズムを利用します。 コントローラのフェイルオーバー単一障害点がありますが、各ブローカー ノードはコントローラーになることができます。 フェイルオーバーも、Zookeeper、znode モデル、監視メカニズム、/controller ノードに基づいて実装されます。 Kafka と Zookeeper はどのように連携しますか?
Kafka の新しいバージョンでは ZooKeeper が廃止されます!!!!!!2021 年 3 月 30 日、Kafka を開発する Confluent 社は、次期バージョン 2.8 では ZooKeeper をまったく必要とせずに Kafka を実行できるようになるとブログ記事を公開しました。このバージョンでは、ZooKeeper に依存するコントローラーが Kafka Raft に基づく Quorm コントローラーに変換されます。 以前のバージョンでは、Kafka は ZooKeeper がないと機能しませんでした。ただし、2 つの異なるシステムを管理および展開すると、運用と保守の複雑さが 2 倍になるだけでなく、Kafka が重くなり、軽量環境での Kafka の適用が制限されます。同時に、ZooKeeper のパーティショニング機能によって Kafka の収容能力も制限されます。 初めて、ユーザーは ZooKeeper なしで Kafka を実行できるようになりました。 これはアーキテクチャの大幅なアップグレードであり、常に「重い」Kafka をよりシンプルにします。軽量なシングルプロセス展開は、ActiveMQ や RabbitMQ の代替として使用でき、エッジ シナリオや軽量ハードウェアを使用するシナリオにも適しています。 10 年間使用してきた ZooKeeper をなぜ放棄するのでしょうか?zk の欠点:
ZooKeeper は、クラスター内のトポロジの変更を更新するための Kafka のリーダーとして機能します。 ZooKeeper によって提供される通知に基づいて、プロデューサーとコンシューマーは、Kafka クラスター全体に新しいブローカーまたはブローカーの障害があるかどうかを検出します。容量拡張やパーティション移行などのほとんどの運用および保守操作では、ZooKeeper とのやり取りが必要です。 つまり、Kafka コードベースの大部分は、クラスター内の複数のブローカー間でのパーティション (つまりログ) の割り当て、リーダーシップの割り当て、障害の処理などの分散システム機能の実装を担当しています。業界で広く使用され、検証されている ZooKeeper は、分散コード作業の重要な部分です。 ZooKeeper がなければ、Kafka はプロセスを開始することすらできませんが、ZooKeeper に大きく依存することで、Kafka にも制約が生じます。 ただし、現在ほとんどの人は、ZK と組み合わせたバージョンの Kafka を使用しています。 |
<<: デジタル産業を支援し、インテリジェントな未来をつなぐ――西安航空基地企業「ファーウェイ参入」デジタル変革社長クラス
インターネット時代を迎え、多くの企業がインターネットを取り入れ、自社のウェブサイトをカスタマイズして...
私たちの業界では、毎日一つのことを強調しています。それは外部リンクです。外部リンクの重要性については...
360 の検索業界への参入は草の根のウェブマスターに希望の光をもたらしましたが、最適化の鍵は依然とし...
昨日は、内部リンクと外部リンクの構築に関する洞察をいくつか共有しました。今日は、いくつかのヒントを共...
moosevz.com は、超低価格のローエンド VPS ブランドです。openvz 仮想化、sol...
ホストユンはどうですか? Hostyun は、米国ロサンゼルスの multacom データセンターで...
現在、タオバオ SEO はますます人気が高まっています。すべてのタオバオ店長は、検索バーでの自社製品...
[[428873]]調査会社ガートナーの調査によると、2022年末までに世界中の企業がクラウドコンピ...
1.百度は360をウェブマスタープラットフォーム文書の盗用で訴え、50万元の損害賠償を請求した8月8...
いわゆるバイラル マーケティングとは、ユーザーの口コミによる宣伝ネットワークを通じて情報がウイルスの...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています最近、多く...
私たちは皆、インターネットの急速な発展を経験しました。 2008年、米国の検索エンジン大手Googl...
女性の消費に関しては、少し誇張した言い方をすれば、世界の消費決定の 80% は女性によって行われてい...
buyvm はここ数日の最新ニュースを発表しました。ルクセンブルクのデータセンターは完全にアップグレ...
[[227471]] 「フォグ コンピューティング」という名前はもともとニューヨークのコロンビア大学...