タグ

Javaとgcに関するpattyhamaのブックマーク (2)

  • Javaメモリ、GCチューニングとそれにまつわるトラブル対応手順まとめ - 日記のような何か

    GC周りでトラブルシューティングした際の経験や、Web等で調べたことをまとめてみる。 前提 ・JVMは、Sun Javaを想定。(他は使ったことないです。。。) ・Sun Java 1.5-1.6を想定。 目標 マイナーGC、Full GCそれぞれが頻発することなく、かつそれぞれの実行時間を1秒未満に抑えること。 マイナーGCは1秒未満どころではなく、もっと短くなるべき。どれくらいが理想かは?(0.1秒未満ぐらいを目指したい?) 連続した負荷状態(想定されるピークアクセス)でもOutOfMemoryErrorが発生しないこと。 理想的な状態は、上記に加えて、Full GCの発生が低頻度であること。 具体的には、できるだけマイナーGCで短命オブジェクト(1回使ったらもう使わないようなオブジェクト。逆にセッションオブジェクト等は長命オブジェクトとなる)を破棄させて、短命オブジェクトが、Tenu

    Javaメモリ、GCチューニングとそれにまつわるトラブル対応手順まとめ - 日記のような何か
  • Java VMのメモリ不足――原因切り分けから解決まで

    Java VMのメモリ不足の問題は、解決までに時間を要する。だが適切な初期調査を行えば、ある程度まで原因を絞り込め、早期解決につながる。今回はメモリ不足問題の対応方法を、体系立てて解説する。 問題解決のポイント Java VMでメモリ不足が発生した時に重要となるポイントは、早期に発生個所の特定と原因の切り分けである。 Webシステムでメモリが不足すると、「java.lang.OutOfMemoryError」メッセージが出力される。このメッセージが出力された時、最初に行うことは、WebサーバやJava VMのログを確認することだ。これらのログから障害の痕跡を発見できると、障害内容からメモリ不足の原因を切り分けられる。しかし、使用しているJava VMによっては、障害の切り分けに必要な情報が得られない場合もある。その場合、GCログが障害解析の資料として役に立つ。 以降、Webシステムを例に、

    Java VMのメモリ不足――原因切り分けから解決まで
  • 1