-Xms256m -Xmx1024mでTomcatを実行しているが、ヒープ使用量を増やしたいとします。
割り当てることができる最大の安全なヒープサイズはどれくらいですか?
この質問の目的上、システムには5GB RAMであり、z/Linuxシステムであると想定してください。ただし、可能であれば、より広い経験則で答えてください。
また、これが重複している場合は、申し訳ありません。このようなことについてこれ以上の情報が見つからなかったのには驚きました。
重複していません:私は ここ を見ました、しかし、彼の答えは単なる推測であり、バックアップはありません。その質問の他の答えは、あまり明確ではなく、および/または私の問題に固有のものではありません。 1)私はウィンドウ32ビットシステムを使用していません。2)PermGenについて質問していませんでしたが、良い答えで言及されているかもしれません。3)3番目の答えは「最後に、他のことも考慮に入れる必要があります。サーバー上で実行されていて、RAM too "が必要なものですが、これは正確な答えではありません。今のところ、OSのメモリ使用量が心配です。
編集:これは専用システムなので、OSのメモリ使用量が気になります。他のプログラムについては心配していません。
GC
割り当てる最大ヒープサイズは、システム自体のリソース、実行中の他のサービスなどのシステムの使用率に基づきます。不要なメモリページングを防ぐために、OSで十分なメモリを使用できるヒープサイズを割り当てます。これはWindowsの方が問題ですが、Linuxでも問題が発生します(私はLinuxよりもWindowsの専門家なので、申し訳ありません)。
まず、システムのリソース使用率を確認します。 http://www.cyberciti.biz/faq/linux-check-memory-usage/
次に、ページファイルがどのように構成されているかを確認します。 http://www.cyberciti.biz/faq/linux-check-the-size-of-pagesize/
次に、以前に収集した情報に基づいてさまざまな構成を試し、ページファイルの使用率を監視する必要があります。 http://www.cyberciti.biz/faq/linux-check-swap-usage -コマンド/
ページファイルが頻繁に使用されている場合は、ヒープサイズが大きすぎます。使用率が非常に低いか、まったく使用されていない場合は、ヒープサイズを増やしてパフォーマンスを向上させることができます(実際のパフォーマンス結果はJavaアプリによって異なり、ヒープサイズを増やすと、一部のアプリのパフォーマンスが低下する可能性があります。それらがプログラムされる方法に)。
OSにページファイルを簡単に維持するのに十分な空きRAMがあり、アプリケーションに十分なメモリが割り当てられているように、適切な量のメモリを割り当てていることを確認する必要があります。 Windowsでは、負荷がかかった状態で少なくとも25%の空きRAMを維持しようとしています。さまざまな構成を試して、システムのパフォーマンスを監視します。
もう1つの重要な注意事項:Java 8では、これらの項目を定義する必要はまったくありません。Java 8は、これらの値を単独で維持する方が優れているようです。それらを静的に割り当てます。