- - PR -
FullGCが頻発しCPU100%
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-01-25 19:40
SunのJDK5.0ならjconsoleというツールもあります。
グラフィカルにメモリやGCの状況が確認できます。 結構便利ですよ。 |
|
投稿日時: 2006-01-25 20:57
色々なアドバイスありがとうございます
本日アドバイスを参考に(OLD領域を大きく取り、NEW領域を小さくしGCをより実行させるようにしました) export CATALINA_OPTS="-server -Xmx256M -Xms256M -XX:NewSize=16M -XX:MaxNewSize=16M -XX:SurvivorRatio=2" で今のところまだシステム停止は行われいません 少々様子を見ようと思っています そしてアドバイスのツールを使用し、GC・サーバ監視を試してみます たぶん前進しております ありがとうございます また報告します。 _________________ |
|
投稿日時: 2006-01-26 16:18
export CATALINA_OPTS="-server -Xmx256M -Xms256M -XX:NewSize=16M -XX:MaxNewSize=16M -XX:SurvivorRatio=2"
のGC設定を行ったところ catarina.outに以下のようなエラーが起こりました これから調査を行おうと思っています。 うまくいっていたと思っていただけに本日のサーバ停止はショックでした。。。。。 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run 致命的: org.apache.jk.common.SocketConnection@ef63f9 を実行中に例外 (java.lang.OutOfMemoryError: PermGen space) をキャッチしたので、スレッドを終了します Exception in thread "TP-Processor19" java.lang.OutOfMemoryError: PermGen space Exception in thread "TP-Processor6" java.lang.OutOfMemoryError: PermGen space Exception in thread "TP-Processor20" java.lang.OutOfMemoryError: PermGen space java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409) Caused by: java.lang.OutOfMemoryError: PermGen space _________________ |
|
投稿日時: 2006-01-26 17:12
パーマネント領域が足りないと書いてありますね。
・BEA トラブルシューティング ガイド > メモリ不足とメモリ リークに関する問題の調査 http://www.beasys.co.jp/cs/support_news/product_troubleshooting/Investigating_Out_of_Memory_Memory_Leak_Pattern.html |
|
投稿日時: 2006-01-26 17:30
アドバイスありがとうございます。
軽く調べたのですが、 現在のAPは Seasarを使用しています この辺なんだなーと意識し始めました。 難しいです。。。。 _________________ |
|
投稿日時: 2006-01-26 18:12
java.lang.OutOfMemoryError: PermGen space とでてるわけですから パーマネント領域を増やしてはいかがでしょうか。
#すいません、Old領域が足りない?ってのははずれだったっぽいです |
|
投稿日時: 2006-01-26 18:58
関係ないとは思いますが、Seasarの2.1系では
設定によってはOutOfMemoryErrorが発生するという事象があったようです。 http://lists.sourceforge.jp/mailman/archives/seasar-user/2005-March/003437.html ご参考までに。 [ メッセージ編集済み 編集者: SEY 編集日時 2006-01-26 19:34 ] |
|
投稿日時: 2006-01-26 20:31
・プロトタイプを使用すると、動的にクラスを生成するが、
要求毎にクラスを生成している ・クラスローディングに起因するメモリリークである ということですので、いくらパーマネント領域を拡張したところで、 アプリケーション停止までの寿命が長くなるだけでしょう。 根本的には解決しません。 運用中であれば、バージョンアップも難しいと思いますが・・・ |