0

JVM アプリケーションを調整しています。私が設定したJAVA_OPTSは次のようなものです:

JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"
JAVA_OPTS="$JAVA_OPTS -server"
JAVA_OPTS="$JAVA_OPTS -Xms2048m"
JAVA_OPTS="$JAVA_OPTS -Xmx2048m"
JAVA_OPTS="$JAVA_OPTS -XX:NewSize=256m"
JAVA_OPTS="$JAVA_OPTS -XX:MaxNewSize=256m"
JAVA_OPTS="$JAVA_OPTS -XX:PermSize=256m"
JAVA_OPTS="$JAVA_OPTS -XX:MaxPermSize=256m"

ジェネレーションズについては大体理解できました。しかし、私の設定が適切かどうかはわかりません。私の知る限り、新世代のサイズは 256 なので、remain(1792m) は旧世代のサイズです (Perm 世代はヒープではないため)。

私は正しいですか?そして、私の設定は適切ですか?

4

1 に答える 1

1

平均的な Java アプリケーションの最適な設定は次のとおりです。

JAVA_OPTS=""

または、Java の作成者が、誰もが変更するデフォルトを指定する必要があるのはなぜですか。

アプリケーションと使用可能なメモリについて何も知らなければ、デフォルトを変更しても意味がありません。

実際に-Dfile.encoding=UTF-8は、デフォルトで別のものを使用しているシステムで UTF-8 を使用したい場合は理にかなっています (ただし、OS を変更する方がよいでしょう)。必要なメモリ量がわからない限り、他のものは忘れてください(そして-Xmx、残りのものを使用しても忘れてしまいます)。

于 2014-06-20T18:49:31.290 に答える