0

Kafkaプロセスのさまざまなヒープ、GC などの Java パラメータの設定に関しては、相反する考え方があるようです。

kafka-server-startあるグループは、 bash ファイルを編集するように言っています

別のグループは、システム var を設定し、kafka スタートアップにそれを取得させるように言っています

Confluent からの最新の指示では、次の「推奨事項」が表示されます。

-Xms6g -Xmx6g -XX:MetaspaceSize=96m -XX:+UseG1GC -XX:MaxGCPauseMillis=20
   -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M
   -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80

これらをどこに設定するかについての公式の Confluent パーティラインは何ですか? (デフォルトでは、小さいテスト マシンに対応するためにこれらを使用しないと思います)

4

1 に答える 1

2

これらは両方とも、本質的に同じことを行うように指示しています。つまり、 の値を手動でオーバーライドしていますKAFKA_HEAP_OPTS

これはあなたが探しているもののようですkafka-server-start.sh

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
fi

EXTRA_ARGS=${EXTRA_ARGS-'-name kafkaServer -loggc'}

コマンドラインからこれを開始している場合は、呼び出すことができます

export KAFKA_HEAP_OPTS="-Xmx2g -Xms2g"
./kafka-server-start.sh

exportまたは、最初に起動スクリプトを編集する場合は、変数がローカルで使用されるため、編集する必要はありません。

KAFKA_HEAP_OPTS="-Xmx2g -Xms2g"
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
fi

最初の利点は、kafka-source を変更する必要がなく、シェル変数だけで環境を構成できることです。

2 番目の方法は、サーバーを起動する前に環境変数を設定することを覚えておく必要がないという点で便利です。

于 2016-09-20T18:00:22.987 に答える