のためのベスト-プラクティスの設定はApache/Tomcat
質問
しましたが、現在使用しているApache2.2.3、Tomcat5(組み込みJBoss4.2.2)を使用 mod_proxy_jk
としてのコネクタが付いています。
で誰かを明らかにし、正しい計算/configureに以下の値とは何ることを可能とする).両Apache、Tomcatの稼働を別々のマシンとして豊富な量のram(4gbます。
関連するserver.xml 部分:
<Connector port="8009"
address="${jboss.bind.address}"
protocol="AJP/1.3"
emptySessionPath="true"
enableLookups="false"
redirectPort="8443"
maxThreads="320"
connectionTimeout="45000"
/>
関連するストします。conf部分:
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 0
</IfModule>
解決
することをどう考えるべき作業負荷のサーバーかを取得します。
最も重要な要素の数を同時に接続トリゾートホテル。う定めるのかということで、調整設定の方法で場所:
- が十分な処理のスレッドの両方Apache、Tomcatないことを要し、新しいスレッドの場合、サーバはロード
- いますが、処理のスレッドのサーバーより必要としてい廃棄物の資源です。
このようなセットアップするための内部メンテナンス費用のサーバーを助けることが多く、特にご負荷が散在している。
例えば、検討ができました~300名の受けます。各要求を必要とする平均2.5秒るものとする。この時でした~750要求する必要のある取り扱う。こういうチューニングサーバーい~750処理のスレッドを起動するために追加のようなもの約1000個の加工のスレッドでの最大限の対応が極めて高い。
も考慮した正確にどんなスレッドを必要とします。前の例の申請ごとに独立したその他の者がセッションの追跡に使用します。より"ウェブらしく"シナリオ"といったユーザのログインwebサイトによってソフトウェアの使用は、ApacheやTomcatれを利用する必要が同じスレッドの要求が一つのセッション。この場合、必要がある場合があります。す。しかしながら、知っていTomcatには少なくとも、本当に必要と考えることでスレッドプール内の?
他のヒント
クライアントはリクエストの応答
基本的なキャップの並列クライアント接続をごapacheを処理する必要があります。
とpreforkは、一の請求扱うことができた。そのためのapacheを処理できる 最 $クライアントはリクエストの応答を要求分の時間で取扱 シングル ます。もちろん、この理想最大き意がある場合、アプリケーションのニーズを満は1/$クライアントはリクエストの応答資源ります。
例えば、お出かけ第二のcpu時間の回答が単一の請求、クライアントはリクエストの応答を制限おスループットを要求り:各要求を使用してapache接続でapacheのみお取扱いにつ。ただし、サーバーには二つのCpuにもこ到達することができ、毎壁クロックに次いで二つのcpu間で要求が必要な四つのcpu秒です。
MinSpareServers
こうapacheにどのように多くのアイドルのプロセスにおけるハングす。大数のバースト荷重をapacheので飲み込む前に必要として産卵のために追加プロセスは、高価なことが鈍化の現。
正しい設定のことによって異なり負荷も大きくなっていました。場合はページは多くのサブをご希望の方は写真、iframes、javascript、css)を打つ単一のページを利用する場合がありまで多くのプロセスを短時間注入するものとする。
Maxspareserversの値
とも未使用のapacheプロセスに飾っ廃棄物メモリ、このようにこのディレクティブはapacheのmaxspareserversの値の数を制限の量の予備プロセスでは、負のバーストにします。
MaxRequestsPerChild
この数を制限する要求は単一のプロセス対応じます。の場合は非常に懸念の安定ございますのでご注意下さい実際の制限を継続的にリサイクルのapacheプロセスを防止材の漏えいに影響を与えます。
StartServers
この量はapacheプロセス開始によりデフォルトです。この設定を通常の量のapacheプロセスの削減暖機時間ます。でも場合は、この設定を無視すること、apacheを使用しMin-/maxspareserversの値値として産卵のために新しいプロセスとして必要です。
詳細情報
デフォルトの設定は一般にも開始ポイントにお申思います。わからないように動きを期待で推測のMaxThreads,クライアントはリクエストの応答とMaxServersした。ってしまうほとんどのお客様を取り扱う作業のためのlinuxウェブホストが、主にお客様のJavaアプリTomcat)をご利用のデフォルトの設定もなく多くの工夫必要です。
だから交通、そしてこれらの設定が"高すぎる"という響きは、もの凄いな効きすぎます。Apacheのない経営資源の配分のための全256潜在的な顧客ない限りが必要になります。でも同じようなことがありますTomcatしています。