2011-12-21 39 views
5

私はubuntuを利用していますので、ヒープサイズの設定がtomcatによって使用されていることを確認する必要があります。tomcatが使用しているヒープサイズを確認したい

どうすればいいですか?

私はjmapを試しましたが、それはサーバー上にあるようではありませんが、何とか個別にダウンロードできますか?

答えて

3

他のjavaアプリケーションと同様に、tomcatによって使用されるヒープサイズは、jvm -Xmx paramによって決定されます。

したがって、あなたのtomcatがWindowsサービスとして実行されている場合は、環境変数CATALINA_OPTS = -Xms64m -Xmx256mを作成します。

次に、ファイルtomcat-install/bin/catalina.sh(.bat)とstartup.sh(.bat)を見て、param JAVA_OPTS -Xmx1024mまたは類似のものをチェックします。

グッドリンク: http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html http://www.coderanch.com/t/87422/Tomcat/increase-java-heap-size

+0

ありがとうございますが、tomcatが設定を取得したかどうかを確認したいと思います。私はjmapが何とかそれを行うことができると思います。 – codecompleting

+0

その後、JVisualVM(jdkのツール)を使用して実行中のTomcatプロセスに接続すると、jvm args tomcatが起動されたことが表示されます。 – Zorkus

5

psコマンドを使用して-Xmx256mためのプロセスパラメータを確認してください:

[email protected]:/$ ps -ef | grep java 
tomcat6 804  1 13 15:29 ?  00:00:23 /usr/lib/jvm/java-6-openjdk/bin/java 
-Djava.util.logging.config.file=/var/lib/tomcat6/conf/logging.properties 
-Djava.awt.headless=true -Xmx256m -XX:+UseConcMarkSweepGC 
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
-Djava.endorsed.dirs=/usr/share/tomcat6/endorsed 
-classpath /usr/share/tomcat6/bin/bootstrap.jar 
-Dcatalina.base=/var/lib/tomcat6 
-Dcatalina.home=/usr/share/tomcat6 
-Djava.io.tmpdir=/tmp/tomcat6-tmp org.apache.catalina.startup.Bootstrap start 
+0

メモリ情報が表示されないことがあります。おそらくあなたがそれを設定せず、デフォルトのものを使用しているからです – fanchyna

+0

私の場合、エクスポートコマンドCATALINA_OPTS = " - Xms3072M -Xmx4096M"の後も表示されません –

0

これはjmapで簡単に行うことができます。例えば

$ jmap -heap [PID] 

、最初のPIDを見つける:

$ ps aux | grep tomcat 
user123 61906 ... etc 

その後-heapオプションを使用してjmapのでプロセスにアタッチ:

$ jmap -heap 61906 

これはで、次の、非常に詳細な出力を表示しますあなたの設定が使用されているかどうかを確認することができます:

Attaching to process ID 61907, please wait... 
Debugger attached successfully. 
Server compiler detected. 
JVM version is 24.80-b11 

using parallel threads in the new generation. 
using thread-local object allocation. 
Concurrent Mark-Sweep GC 
Heap Configuration: 
    MinHeapFreeRatio = 40 
    MaxHeapFreeRatio = 70 
    MaxHeapSize  = 25769803776 (24576.0MB) 
    NewSize   = 6442450944 (6144.0MB) 
    MaxNewSize  = 6442450944 (6144.0MB) 
    OldSize   = 12884901888 (12288.0MB) 
    NewRatio   = 2 
    SurvivorRatio = 4 
    PermSize   = 21757952 (20.75MB) 
    MaxPermSize  = 1073741824 (1024.0MB) 
    G1HeapRegionSize = 0 (0.0MB) 

Heap Usage: 
New Generation (Eden + 1 Survivor Space): 
    capacity = 5368709120 (5120.0MB) 
    used  = 2529188080 (2412.021713256836MB) 
    free  = 2839521040 (2707.978286743164MB) 
    47.10979908704758% used 
Eden Space: 
    capacity = 4294967296 (4096.0MB) 
    used  = 2525489264 (2408.4942474365234MB) 
    free  = 1769478032 (1687.5057525634766MB) 
    58.80112908780575% used 
From Space: 
    capacity = 1073741824 (1024.0MB) 
    used  = 3698816 (3.5274658203125MB) 
    free  = 1070043008 (1020.4725341796875MB) 
    0.3444790840148926% used 
To Space: 
    capacity = 1073741824 (1024.0MB) 
    used  = 0 (0.0MB) 
    free  = 1073741824 (1024.0MB) 
    0.0% used 
concurrent mark-sweep generation: 
    capacity = 19327352832 (18432.0MB) 
    used  = 10172808584 (9701.546272277832MB) 
    free  = 9154544248 (8730.453727722168MB) 
    52.63425711956289% used 
Perm Generation: 
    capacity = 195915776 (186.83984375MB) 
    used  = 107975920 (102.97386169433594MB) 
    free  = 87939856 (83.86598205566406MB) 
    55.11343813374172% used 
関連する問題