飼育係たちはカフカ内で特定の作業内容の飼育係を調べる必要がありますので、その重要性を示す、カフカの不可欠な部分です。
そして、私はまた、多くの場合、インタビューで尋ねたんです。
飼育係の消費者とブローカーに関するいくつかの情報を格納し、それは二つの側面から飼育係の役割を示しています。
1.ブローカー
- 状態
すべてのブローカーの生存状況の飼育係の記録は、ブローカーが飼育係に自分の状況を報告するハートビート要求を送信します。
飼育係は、実行中のリストブローカーとクラスタの一部を維持しています。
- コントローラの選挙
カフカのクラスタの複数のブローカー、コントローラで選出されるの1。
コントローラは、パーティションのリーダーが失敗したなどとして、コントローラは新しいリーダーを選出する、すべてのパーティションとレプリカのクラスタ全体の状態を管理する責任があります。
コントローラは、複数のブローカーから選択され、この仕事を担当する飼育係です。
- リミット権限
カフカは、いくつかのクライアントは、生産と消費の異なる制限が可能です。
クォータの構成情報は、飼育係の内部に格納されています。
アクセス制御情報のすべてのトピックは、飼育係によって維持されています。
- 録音ISR
ISR(イン同期レプリカ)はパーティションの同期組の集合で、その部分内のすべてのフォロワーの最も活性の同期化です。
メッセージは、ISRのメンバーは、それが「同期」状態として扱われ、受信されます。
唯一のコピーのISRコレクション内のリーダーとして選出される資格を得るために。
ISR飼育係は、情報を記録し、リアルタイムで更新され、限りメンバーが発見したとして、正常ではない、すぐに削除します。
- ノードおよびトピックの登録
飼育係は、すべてのノードおよびトピックの登録情報を保持している、あなたは簡単に各ブローカが保持しているものをトピックを見つけることができます。
ノードおよびトピックは閉じられたセッションの飼育係は、彼らのメッセージがない限り、一時的なノードが存在するで飼育係の形です。
- 設定のトピック
飼育係は、そのようなトピックのリストとして、パーティションの数をトピック関連の設定を保持し、各トピック、位置のコピーなど。
2.消費者
- オフセット
カフカ古いバージョン、個人消費は、オフセットは、飼育係にデフォルトで保存されます。
カフカ新バージョン、カフカ自身によって行われた作業は、特別なオフセットマネージャーをしました。
- 登録
そしてブローカーのように、消費者にも登録する必要があります。
消費者が自動的に登録され、消費者のダウンを自動的に破棄した後、登録は、また一時的なノードを作成する方法です。
- 地区登録
カフカだけカフカ消費者団体、消費者が消費できる各パーティションには、すべてのパーティションの消費者との関係を知っている必要があります。