42

大規模なインストールの一部としてTomcatのメモリ設定を構成する必要があるため、事後に構成アプリを使用してTomcatを手動で構成することは問題外です。JVMメモリ設定をJAVA_OPTS環境変数にスローするだけでよいと思いましたが、jconsoleでテストして、機能するかどうかを確認しています...機能しません。

以下のコメントによると、CATALINA_OPTSも機能しません。これまでのところ、それを機能させる唯一の方法は、Tomcat構成GUIを使用することであり、それは私の問題の許容できる解決策ではありません。

4

13 に答える 13

71

Serhii の提案はうまくいきます。詳細は次のとおりです。

インストールの bin ディレクトリを見ると、catalina.sh または .bat スクリプトが表示されます。これらを調べると、環境変数を設定するために setenv.sh または setenv.bat スクリプトが存在する場合はそれぞれ実行されることがわかります。関連する環境変数は、catalina.sh/bat の上部にあるコメントに記載されています。それらを使用するには、たとえば、コンテンツを含むファイル $CATALINA_HOME/bin/setenv.sh を作成します。

export JAVA_OPTS="-server -Xmx512m"

Windows の場合、setenv.bat に次のようなものが必要です。

set JAVA_OPTS=-server -Xmx768m

これが役に立てば幸いです、グレン

于 2008-12-03T17:34:48.410 に答える
24

変更する環境変数を使用して、tomcat / binディレクトリにsetenv。(sh | bat)ファイルを作成します。

catalinaスクリプトは、setenvスクリプトが存在するかどうかを確認し、それを実行して環境変数を設定します。このようにして、パラメータをtomcatの1つのインスタンスのみに変更でき、別のインスタンスにコピーするのが簡単になります。

おそらく、構成アプリがsetenvスクリプトを作成しているため、tomcatは環境変数を無視しています。

于 2008-11-28T09:11:07.880 に答える
5

CATALINA_OPTS環境変数を使用します。

于 2008-11-13T01:20:05.567 に答える
5

Ubuntu 11.10 と apache-tomcat6 (apt-get からインストール) を使用している場合、この構成を/usr/share/tomcat6/bin/catalina.shに置くことができます。

# -----------------------------------------------------------------------------

JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m \
-Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m \
-XX:MaxPermSize=512m -XX:+DisableExplicitGC"

その後、ps -ef | で構成を確認できます。グレップトムキャット:)

于 2011-11-21T03:46:36.337 に答える
3

Linux 仮想マシンに便利です。Tomcat 用に合計システム メモリの 75% を使用します。やあAWK。

「{tomcat}/bin/startup.sh」の先頭に置く

export CATALINA_OPTS="-Xmx`cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.75 } '`k"
于 2010-10-19T00:43:18.240 に答える
3

私は次のsetenv.bat内容を使用します:

==============setenv.bat============

    set JAVA_OPTS=-XX:MaxPermSize=256m -Xms256M -Xmx768M -Xdebug -Xnoagent  -Xrunjdwp:transport=dt_socket,address=7777,server=y,suspend=n %JAVA_OPTS%

====================================

また、デバッグを有効にし、デバッグ ポートを 7777 に設定し、以前の の内容を追加しJAVA_OPTSます。

于 2010-09-06T15:20:40.777 に答える
2

前のコメントに追加するだけですが、Tomcat サービス設定を更新するためのコマンド ライン ツールのドキュメント (Tomcat が Windows でサービスとして実行されている場合) はこちらです。このツールは、適切な設定でレジストリを更新します。したがって、Tomcat サービスの最大メモリ設定を更新する場合は、Tomcat5 のデフォルト サービス名を想定して、これを (tomcat/bin ディレクトリから) 実行できます。

tomcat5 //US//Tomcat5 --JvmMx=512
于 2008-11-18T18:00:43.040 に答える
2

使用可能なサーバー メモリに基づいて tomcat6 メモリを設定するというアイデアが気に入っています (ハードウェアのアップグレード後に設定を変更する必要がないので、これは素晴らしいことです)。これが私の(少し拡張されたメモリ設定)です:

export CATALINA_OPTS="-Xmx `cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.75 } '`k -Xms `cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.75 } '`k -XX:NewSize= `cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.15 } '`k -XX:MaxNewSize= `cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.15 } '`k -XX:PermSize= `cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.15 } '`k -XX:MaxPermSize= `cat /proc/meminfo | grep MemTotal | awk '{ print $2*0.15 } '`k"

「{tomcat}/bin/startup.sh」に置きます (例: Ubuntu 10.10 の場合は「/usr/share/tomcat6/bin」)。

于 2011-11-13T13:32:44.033 に答える
1

Windows で Tomcat を実行している場合は、Tomcat に同梱されているきちんとした「Tomcat Monitor」アプリケーションを使用できます。

Java タブに移動します。下部の「Java オプション」テキストエリアの下に、3 つの入力フィールドがあります。

  • 初期メモリ プール_ __ MB
  • 最大メモリ プール_ __ MB
  • スレッド スタック サイズ_ ____ KB
于 2012-06-20T13:47:09.647 に答える
1

それがあなたにとって適切な解決策になるかどうかはわかりません。しかし、実際に機能する tomcat のメモリ設定や接続数などを監視する唯一の方法はLambda Probeです。

Tomcat の調整に必要なほとんどの情報が表示されます。Tomcat 5.5 および 6.0 でテストしたところ、ベータ版の状態であり、最終更新日が 2006 年末であるにもかかわらず、正常に動作します。

于 2008-11-13T06:53:24.427 に答える
1

Tomcat を (サービスとしてではなく) 手動で開始する場合は、CATALINA_OPTS 環境変数が最適です。サービスとして開始する場合、設定はおそらくレジストリのどこかに保存されます。私のマシンにはTomcat 6がインストールされており、HKLM\SOFTWARE\Apache Software Foundation\Procrun 2.0\Tomcat6\Parameters\Javaキーで設定を見つけました。

于 2008-11-13T07:15:24.163 に答える
0

私の場合、/etc/sysconfig/tomcat5.conf ファイルが /etc/tomcat5/tomcat5.conf のすべての設定を上書きしていました。

于 2016-03-22T18:45:34.337 に答える
0

catalina/bin/startup.sh スクリプトを編集するだけです。その中に次のコマンドを追加します。

#Adjust it to the size you want. Ignore the from bit.
export CATALINA_OPTS="-Xmx1024m"
#This should point to your catalina base directory 
export CATALINA_BASE=/usr/local/tomcat
#This is only used if you editing the instance of your tomcat
/usr/share/tomcat6/bin/startup.sh

Sailab: http://www.facejar.com/member/page-id-477.html

于 2012-04-30T22:58:38.037 に答える