2012-03-07 5 views
1

でJAVA_OPTSためどのくらいのメモリ、我々は以下の私のシステム構成は次のとおりcatalina.sh

java version "1.6.0_17" 
Tomcat 6.0.18 
OS : Cent OS 5.7 

enter image description here

を設定しなければならないのは、Catalina.sh

JAVA_OPTS =の私のJAVA_OPTSです"-Djava.awt.headless = true -Dfile.encoding = UTF-8 -server -Xms1536m -Xmx1536m -XX:NewSize = 256m -XX:MaxNewSize = 1024m -XX:PermSize = 256m -XX:MaxPermSize = 1024m -XX :+ DisableExplicitGC "

多くの場合、次のエラーが発生します。 Tomcatクラッシュ..

java.lang.OutOfMemoryError: Java heap space 
    at java.util.Arrays.copyOf(Unknown Source) 
    at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source) 
    at java.lang.AbstractStringBuilder.append(Unknown Source) 
    at java.lang.StringBuffer.append(Unknown Source) 
    at org.htmlparser.parserHelper.TagParser.checkFinishedState(TagParser.java:157) 
    at org.htmlparser.parserHelper.TagParser.automataInput(TagParser.java:93) 
    at org.htmlparser.parserHelper.TagParser.find(TagParser.java:76) 
    at org.htmlparser.tags.Tag.find(Tag.java:192) 

このエラーが発生しないように、正しい設定をJAVA_OPTSに伝えてください。ありがとうございました。

EDIT: 最後に私は、Javaがこの

JAVA_OPTS = "など付き合えた - Djava.awt.headless =真の-Dfile.encoding = UTF-8 -server -Xms1536m -Xmx3072m -XX:NewSize = 256m -XX:MaxNewSize = 1024m -XX:PermSize = 256m -XX:MaxPermSize = 1024m

+2

あなたのアプリケーションが必要とする限り。 –

+0

CPUが保持できる最大値を与えなければならないことを正確に教えてください。それはこれが私のサーバーで実行されている唯一のサイトだからです。 –

+0

誰もあなたにそれを伝えることはできません。アプリケーションで使用可能なすべてのメモリが使用されています。バグか、JVMで使用可能なメモリ量を増やす必要があります。 –

答えて

2

JVMのメモリ調整は簡単な作業ではありません。

最初に行うべきことはJVMメモリを増やすことですが、JVMのメモリ消費を調査するためのツールもいくつか見てください。 jvisualvmまたはjconsole(どちらも$ {JDK_HOME}/binに置く必要があります)から始めることもできます。

+0

altanisありがとう。私はjvisualvmとjconsoleを調べます。 –

+0

Xmx3072mとして作成しましたが、今はクラッシュしていません。プロフィール作成方法はわかりません。Linuxで最大限のファイルを開くとアプリケーションがハングアップします。 .. "開かれたファイルの数Nb \t 122/1,024" ..あなたはファイルの漏洩を見つけてそれを止める方法を知っていますか?私はJava Melodyから上記の読み方を得ました。 –

+0

こんにちはDilip、開いているファイルの数が問題になる場合は、それを増やすことができます - この記事を見てください:http://lj4newbies.blogspot.com/2007/04/too-many-open-files.html – altanis

関連する問題