32 ビット システムでは、JVM のメモリ制限は 1.5 ~ 2 GB です。64 ビット Linux での JVM メモリの適切な値はどれくらいですか? tomcat の最大スレッド数と最大リクエストにどのようにマッピングできますか?
JDK 6+ と tomcat 7 を使用しています。使用可能な RAM は、クアッド コア プロセッサで 12 GB です。
MRD
この質問に対するすぐに使える答えはないと思います。これは、ホストするアプリケーションの種類と、システムにどれだけの量が必要かによって大きく異なります。私は、64 ビット Linux システムで 3 ~ 4 個のアプリケーションを備えた小さなサーバーを管理しています。4GBあれば十分です。
私のアドバイスは、アプリケーションに必要な RAM の量を大雑把に推測することです。次に、モニター ツールを使用して tomcat を起動し、Tomcat の負荷を監視します。tomcat に割り当てたリソースが多すぎる可能性があります。少なすぎるかもしれません。あなたは、決して知らない
同時ユーザーに関するこの記事と、Tomcat での負荷分散に関する記事もお読みください。
基本的に、ユーザーとリクエストを区別する必要があります。サイトを閲覧しているユーザーが 5000 人いるとしますが、一度に新しいページを要求するのは 100 人だけです。デフォルトでは、Tomcat は 50 の同時リクエストをサポートします (ただし、100% 確実ではありません)。ただし、この数は tomcat 構成で変更できます。明らかに、より多くのハードウェアが必要になる場合があります。2 番目の記事では、Tomcat インスタンスあたり最大 200 のリクエストが推奨されています。2 番目の記事で説明した単純な計算ルールと、監視を行うことだけが役に立ちます。
Tomcat 用のロード バランサー マネージャーもあります。Tomcat のロード バランサを確認する
もう 1 つ考慮すべき点は、5000 人のユーザーをサポートするためのハードウェアと適切な負荷分散がありますが、それには十分な帯域幅も必要であることです。2回目の記事「Tomcatでの負荷分散」で再度説明
幸運を
アプリケーションに同時にアクセスするユーザーの数によって異なります。
特定の時点でアプリの実行が非常に遅くなることがあります。
たとえば、午前 8:00 にログイン アクションが発生すると、アプリが停止します。
「ユーザーの総数」に従って、ユーザーあたりの平均メモリを見積もることをお勧めします。
その後、ほぼほぼ正しいメモリ設定が得られる場合があります。