スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

TomcatのGCログ出力とヒープ関連の設定

↓のシェルスクリプトを作成

【CATALINA_HOME/bin/env.sh】

#!/bin/sh

date=$(date +%Y-%m-%d-%H%m%S)
gc_opts="-Xloggc:${CATALINA_HOME}/logs/gc.log.${HOSTNAME}.${date} -XX:+PrintGCDetails"
heap_opts="-Xmx1024m -Xms1024m -XX:NewSize=256m -XX:PermSize=128m -XX:NewRatio=2 -XX:SurvivorRatio=25 -XX:+UseParallelGC -XX:ParallelGCThreads=4"
JAVA_OPTS="-server $heap_opts $gc_opts"

次に、CATALINA_HOME/bin/catalina.sh
の先頭に↓を追加

. `dirname $0`/env.sh

これでCATALINA_HOME/logsに
gc.log.HOSTNAMe.2008-10-13-100851
みたいなファイル名でGCのログが出力されるようになる。

ヒープ関連のパラメータは
-Xms → ヒープ全体の初期値。
-Xmx → ヒープ全体の最大値。
-XX:NewSize → New領域の初期値。
-XX:PermSize → Permanent領域の初期値。
-XX:NewRatio → New領域とOld領域の比率(2だとnew:old = 1:2)。
-XX:SurvivorRatio → Survivor領域とEden領域の比率(25だとsurvivor:eden = 1:25)。
-XX:+UseParallelGC → パラレルGC→New領域のGC処理を複数スレッドで。
-XX:ParallelGCThreads → パラレルGCを行なうスレッド数。CPU数で良いと思う。

Permanent領域っていうのは、クラスとかメソッドの情報が格納されるらしく、クラスとかjspがたくさんあれば多めに取った方が良いということらしい。

この記事のトラックバックURL

http://ysmt.blog21.fc2.com/tb.php/224-f6d2fcc2

コメント

コメントする

管理者にだけ表示を許可する

Template Designed by DW99

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。