【Kafka】Kafka参数

プロデューサーのパラメータ

1、buffer.memory:
プロデューサのメモリバッファのサイズを設定するために使用される、そのメッセージをプロデューサがサーバに送信されるバッファ。アプリケーションの速度がサーバーに送信されたメッセージを送信した場合、速度は十分なスペースの生産につながる超えました。今回は、send()メソッドの呼び出しは、いずれかのブロックされているかのパラメータがblock.on.buffer方法に応じて、例外をスロー

2、compression.type:
メッセージが送信されるときにデフォルトで、圧縮されません。このパラメータは、メッセージブローカ圧縮に送られる前に圧縮アルゴリズムを指定する集合てきぱきと、gzipやLZ4、することができます。グーグルの発明によるssnappy圧縮アルゴリズムは、それがより少ないCPUを消費し、それはより良いパフォーマンスとかなりの圧縮率を提供することができ、より多くのパフォーマンスおよびネットワーク帯域幅を懸念している場合、あなたはこのアルゴリズムを使用することができます。GZIP圧縮アルゴリズムは通常、ネットワーク帯域幅が制限されている場合ので、あなたは、このアルゴリズムを使用することができ、より多くのCPUを取るが、より高い圧縮率を提供します。使用圧縮は、多くの場合、ボトルネックカフカにメッセージを送信されたネットワークのオーバーヘッドの伝送およびストレージのオーバーヘッドを減らすことができます

3、リトライ:
サーバから受信したプロデューサーエラーは、一時的なエラーである可能性があり、この場合には、生産者の数がメッセージを再送信することができる決定するパラメータリトライの値が、この数に達している、生産者は、重いを与えますテストとエラーを返します

4、batch.size:
複数のメッセージがある場合、同じパーティションに送信する必要がある、プロデューサは、同じバッチでバッチそれらを取るこのパラメータは、メモリサイズを指定するバイト数に応じて、使用することができます計算。

5、linger.ms:
このパラメータには、追加のメッセージのバッチのバッチ添加時間を送信する前に待機するプロデューサーを指定します。

図6は、client.id:
このパラメータは、サーバーがメッセージのソースを識別するために使用する、任意の文字列であってもよく、クォータにログにも使用することができます

7、max.in.flight.requests.per.connection:
このパラメータは、プロデューサーがどのように多くのメッセージが正午はずサーバーを受信する前に送信することができますを指定します

8、timeout.ms、request.timeout.msとmetadata.fetch.timeout.ms:
request.timeout.msプロデューサは応答を返すときにデータ送信サーバを待機する時間を指定し、metadata.fetch.timeout.msは、生産を指定しました(このようチーフターゲット・パーティションが誰であるかのような)メタデータを取得する際に、応答時間を返すためにサーバーを待つ人々 。タイムアウトが応答を待っている場合には、生産者のいずれかの再試行がデータを送信し、または(例外がスローまたはコールバックされる)エラーを返します。timeout.msは時間を確認戻りメッセージの同期コピーを待つためにブローカーを指定し、コンフィギュレーションが承認の11同期コピーが指定された時間内に受信されないと一致するかどうかを尋ねる、ブローカはエラーを返します

9、max.block.ms:
このパラメータは、コールのsend()メソッドまたはpartitionsFor()メソッドプロデューサーを取得し、ブロッキング時間のメタデータを指定します

10、max.request.size:要求のサイズがプロデューサによって送信されたこのパラメータの制御は、合計サイズのすべてに単一の要求メッセージを参照することができる送信することができる単一のメッセージの最大、を指すことができます

11、receive.buffer.bytesとsend.buffer.bytes:彼らはに設定されている場合、これら2つのパラメータは、データパケットを受信及び送信するためのTCPソケットバッファサイズを指定-1、オペレーティングシステムのデフォルト値を

消費者のパラメータ

1、fetch.min.bytes:
この属性は、サーバーからの最小バイトのレコードを取得するために、消費者の数を指定します

2、fetch.max.wait.ms:
それは消費者に返却され、十分なデータがあるまで、私たちはカフカに語ったfetch.min.byte、待ちます。
指定されたブローカーのための待ち時間をfetch.max.wait.ms

3、max.partition.fetch.bytesは:
デフォルト値は1MBです、この属性は、消費者に、各サーバー・パーティションから返されるバイトの最大数を指定します。

4、session.timeout.ms:死がサーバーから切断考えることができる前に、デフォルト3Sは、この属性は、消費者を指定します

5、auto.offset.reset:
この属性は、消費者の失敗に長い時間のためにオフセットまたはオフセットパーティションの場合(なし消費者を読んで、無効を指定し、オフセットも含めて記録が古くなっていますどこの仕事)を削除

6、enable.auto.commit:
このプロパティで指定自動的に消費者を提出するかどうかは、デフォルト値がtrueのオフセット。

7、partition.assignment.strategy:
割り当てポリシーコンシューマ・グループへのパーティションは、以下の2つの戦略があります。

  • 範囲:いくつかの連続したパーティションは、消費者のテーマにポリシーを割り当てます
  • ラウンドロビン:個別消費者にテーマに割り当てられたすべてのパーティションにポリシー

図8は、client.id:
通常、ログ、およびメトリクスでクォータで使用される、上でこの属性は、任意の文字列を指定することができ、ブローカがメッセージを識別するためにそれを使用するクライアントから送信されました。

9、max.poll.records:
この属性を使用すると、ポーリング処理に必要なデータの量を制御することができますレコードの数を返すように呼び出し()メソッドへの単一の呼び出しを制御するために使用されます。

10、receive.buffer.bytesとsend.buffer.bytes:
ソケットサイズバッファ読み出しおよび書き込みデータTCPに使用が提供されてもよいです。彼らは-1、オペレーティングシステムのデフォルト値に設定されている場合。生産者又は消費者とブローカーが異なるデータ・センターにある場合、データセンター間のネットワークは、一般に比較的高遅延及び低帯域幅を有するので、これらの値は適切に増加させることができます。

公開された82元の記事 ウォンの賞賛328 ビュー220 000 +

おすすめ

転載: blog.csdn.net/qq_43733123/article/details/104977576