2016-03-30 11 views
3

Iはなぜ、PermSizeとMaxPermSizeの実際の値が異なるのですか?

JAVA_OPTS="$JAVA_OPTS -XX:PermSize=512M" 
JAVA_OPTS="$JAVA_OPTS -XX:MaxPermSize=512M" 

以下としてTomcatのJAVA_OPTS変数を使用しPermSizeをし、MaxPermSizeの値を設定してのXmsおよびXmxの値を有しているが

JAVA_OPTS="$JAVA_OPTS -Xms1024M" 
JAVA_OPTS="$JAVA_OPTS -Xmx1024M" 

として設定され、私は実際のサイズを確認するとき[プロセスID] -heapコマンドjmapのを使用して、PERM-GENそれらは

Heap Configuration: 
    MinHeapFreeRatio = 40 
    MaxHeapFreeRatio = 70 
    MaxHeapSize  = 792723456 (756.0MB) 
    NewSize   = 1310720 (1.25MB) 
    MaxNewSize  = 17592186044415 
    OldSize   = 5439488 (5.1875MB) 
    NewRatio   = 2 
    SurvivorRatio = 8 
    **PermSize   = 21757952 (20.75MB)** 
    **MaxPermSize  = 85983232 (82.0MB)** 
    G1HeapRegionSize = 0 (0.0MB) 


Perm Generation: 
    **capacity = 69271552 (66.0625MB)** 
    **used  = 69247376 (66.03944396972656MB)** 
    **free  = 24176 (0.0230560302734375MB)** 
    **99.96509967035242% used** 

なぜ実際allocatioであるように見えますpermSizeとMaxPermSizeの属性を使用して割り当てられたものとは異なる場合、permgen空間のnは異なりますか?

追加情報:

   total  used  free  shared buffers  cached 
Mem:  3089928 3006592  83336   0  67828 1874144 
-/+ buffers/cache: 1064620 2025308 
Swap:  1020088  112 1019976 
+0

私はあなたが単純に合計ヒープに比べて大きすぎる数を指定したと思います。なぜパーマネントがヒープ全体の半分の大きさになりたいのですか? – biziclop

+0

@praveen使用しているJavaのバージョンは何ですか? –

+0

'17592186044415 MB' – Thomas

答えて

1

setenv.shファイルが構築ジェンキンス中に逃したと、このファイルは、カスタムユーザー設定を調達したTomcatサーバがインストールされているLinuxマシンのRAMがありますtomcat.envからこの問題を引き起こします。

関連する問題