World Map
Java Service Wrapperは、御社Javaアプリケーション製品の安定した信頼性を高める最短最善の方法です。
  • Free Trial
  • Buy Now
wrapper.java.maxmemory プロパティ

インデックス

wrapper.java.maxmemory プロパティ

対応バージョン : 1.0.0
対応エディション :プロフェッショナル版スタンダード版コミュニティー版
対応プラットフォーム :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/OSIBM z/Linux

このプロパティには、JVMが利用できる「最大のメモリ容量」をメガバイト(MB)で設定します。 デフォルト値は「0 (ゼロ)」で、JVMのデフォルト値を利用します。 ほとんどのJVMでは、そのデフォルト値は「64MB」です。

もし、このプロパティに、ゼロ以外の値を指定した場合、 Wrapperによって生成されたJavaコマンドへ、 適切な[-Xmx]パラメーターが加えられます。 もし値を指定した場合、最大メモリは、 [wrapper.java.initmemory] プロパティに設定した値より大きいか等しくなければなりません。 上限制限はJVMに依存しますが、 32ビットJVMでは、2048MBより少ない値で、ほとんどのケースでは1800MB近くになる傾向があります。 64ビットJVMでは、もっと高い設定でも大丈夫で、それが64ビットJVMを利用する主たる理由の一つです。

もし、このプロパティ値を「0 (ゼロ)」に設定すると、 [wrapper.java.additional.<n>] プロパティを使って、 [-Xms]パラメーターを手動で指定することも可能になります。

設定例:(64MB)
wrapper.java.maxmemory=64

注意

もし、アプリケーションに [java.lang.OutOfMemoryErrors]が発生して悩んでいる場合には、 アプリケーションに対する有効なメモリ最大容量を増やす必要がある、という事を示していることも時折あります。 マシン上の実際のメモリ量より大きい値を、この最大メモリに設定すると、 メモリのスワッピングを発生させる結果となりますので注意してください。 メモリのスワッピングは、OS(オペレーティング・システム)の機能の1つであり、 そのパフォーマンスは、OSのスペックに高く依存します。 しかしながら、経験上、これは、アプリケーションのパフォーマンスの著しい低下につながる傾向にあります。 ほとんどのケースでは、最大メモリを、有効なメモリ以内におさまる値に設定した方が良く、 Javaのガベージ・コレクションに依存します。

注意

もし、Javaのメモリやガベージ・コレクションについて全てを熟知していない場合には、 下記の文書を一読することをお薦めします。 初期メモリや最大メモリがどのようにJavaのパフォーマンスに影響を与えるのか、詳細に説明されています。 また、アプリケーションのパフォーマンスを改善するためにはどうするべきかの詳細まで踏み込んでいます。

wrapper.java.maxmemory.percent プロパティ

対応バージョン :3.3.0
対応エディション :プロフェッショナル版スタンダード版コミュニティー版 (未対応)
対応プラットフォーム :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/OSIBM z/Linux

このプロパティには、システム上で有効な物理メモリの量に対して相対的な「しきい値」でメモリを設定します。 このプロパティの値は、 「1」から「100」のパーセントで指定し、MBサイズへ変換されます。 Wrapperの32ビット版では、物理メモリか2048MBのより低い値への相対的な値を計算します。

設定例:(60%)
wrapper.java.maxmemory.percent=60

上記の例(60%)では、もしシステムに「1GB (1024MB)」のメモリがインストールされているならば、 最大メモリは「614MB (=1024x60%)」として設定されます。

注意

Javaでは、JVMにスワップ・メモリが発生すると、Javaの動作がとても鈍くなります。 だから、安全なメモリ・レベルを決定する際に、 OS要求や他のいかなるアプリケーションにも配慮することは大切なことなのです。

注意

この機能は、現在のところ、AIX バージョン上では正しく動作しません。 その問題は調査中ですが、その理由のためだけにWrapper製品のリリースを停滞させたくなかったため、 リリース公開を継続しています。

参照: Javaメモリ