java - JVM内存一般设成多大的?
阿神
阿神 2017-04-18 09:53:19
0
2
632

我以前跑tomcat的JVM一般都设2G的内存,但是最近我看了一下Solr的服务器,JVM给了6G,通过-Xms6000M -Xmx6000M设置的。而且有人建议只要服务器有内存,JVM的内存还可以再给。
64位的JVM的内存是不是可以随便设?内存有多少一般怎么确定,有什么利弊?

阿神
阿神

闭关修行中......

全員に返信(2)
左手右手慢动作

いくつかの人気のある企業の JVM のさまざまなバージョンの最大メモリを分析した結果は次のとおりです:
その企業の JVM バージョンの最大メモリ (メガバイト) クライアントの最大メモリ (メガバイト) サーバー
SUN 1.5。 x 1492 1520
SUN 1.5.5(Linux) 2634 2660
SUN 1.4.2 1564 1564
SUN 1.4.2(Linux) 1900 1260
IBM 1.4.2(Linux) 2047 N/A
BEA JRockit 1.5 (U3) 1909 1902
特に指定がない限り、すべての JVM バージョンは Windows オペレーティング システムで実行されます。
この表を通して説明したいのは、マシンのメモリが多すぎる場合、たとえば、Tomcat をさらにいくつか実行することで、さらにいくつかの Tomcat をインストールしてクラスターを作成するなど、マシンの使用率を高めることができます。
ヒープ (ヒープ) メモリと非ヒープ (非ヒープ) メモリ 公式声明によると、「Java 仮想マシンにはヒープがあります。ヒープは実行時のデータ領域であり、すべてのクラス インスタンスと配列のメモリはここから割り当てられるヒープは、Java 仮想マシンの起動時に作成されます。「JVM 内のヒープ外のメモリは非ヒープ メモリと呼ばれます。」 JVM は主に、ヒープと非ヒープの 2 種類のメモリを管理していることがわかります。簡単に言うと、ヒープは Java コードにアクセスできるメモリであり、開発者用に予約されています。非ヒープは JVM 自体用に予約されているメモリであり、メソッド領域と JVM の内部処理または最適化 (JIT コンパイル済みコードなど) に必要なメモリです。キャッシュ)、すべてのクラス構造(実行時定数プール、フィールド、メソッド データなど)、およびメソッドとコンストラクターのコードはすべてオフヒープ メモリにあります。 ヒープ メモリの割り当て JVM によって割り当てられる初期メモリは -Xms で指定され、デフォルトは物理メモリの 1/64 です。JVM によって割り当てられる最大メモリは -Xmx で指定され、デフォルトは物理メモリの 1/4 です。物理的なメモリ。デフォルトでは、空きヒープ メモリが 40% 未満の場合、JVM は -Xmx の最大制限までヒープを増やします。空きヒープ メモリが 70% を超える場合、JVM は最小制限の -Xmx までヒープを減らします。 -Xms。したがって、サーバーは通常、各 GC 後にヒープ サイズが調整されることを避けるために、-Xms と -Xmx が等しくなるように設定します。 非ヒープ メモリ割り当て JVM は、-XX:PermSize を使用して非ヒープ メモリの初期値を設定します。デフォルトは物理メモリの 1/64 です。XX:MaxPermSize は非ヒープ メモリの最大サイズを設定します。デフォルトは です。物理メモリの 1/4。 JVM メモリ制限 (最大値) まず第一に、JVM メモリは実際の最大物理メモリに制限されます (ナンセンス!笑) 物理メモリが無限であると仮定すると、JVM メモリの最大値はオペレーティング システムに大きく関係します。 。簡単に言うと、32 ビット プロセッサの制御可能なメモリ空間は 4GB ですが、特定のオペレーティング システムでは通常、この制限が 2GB ~ 3GB に設定されます (一般的に、Windows システムでは 1.5G ~ 2G、1.5GB です)。 Linux システムでは G-2G)、64 ビットを超えるプロセッサには制限はありません。
VM パラメーターの設定が原因でプログラムを開始できない主な理由は次のとおりです。
1) パラメーターの -Xms の値が -Xmx より大きいか、-XX:PermSize の値が-XX:MaxPermSize より大きい; 2) - Xmx と -XX:MaxPermSize の値の合計が、現在のオペレーティング システムの最大メモリ制限や実際の物理メモリなどの JVM メモリの最大制限を超えています。

いいねを押す +0
大家讲道理

1. 1 日の平均リクエスト量、fullgc 後の平均メモリ サイズなど、各アプリケーションの状況によって異なります。
2. 最大値は 3/4 を超えないことをお勧めします。オペレーティング システムのメモリ

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート