Sun Java System Web Server 7.0 パフォーマンスのチューニング、サイジング、およびスケーリング

Web アプリケーションのセッション設定の構成

セッションの寿命が比較的短い場合、sun-web.xml 内の session-properties 要素の下にある timeOutSeconds プロパティーの値をデフォルト値の 10 分から減らすことで、セッションタイムアウトを減らしてみてください。

セッションの寿命が比較的長い場合、reapIntervalSeconds プロパティーの値をデフォルト値の毎分 1 回から増やすことで、セッションリーパーの実行頻度を減らしてみることができます。

これらの設定やセッションマネージャーの詳細については、『Sun Java System Web Server 7.0 Developer’s Guide to Java Web Applications』を参照してください。

マルチプロセスモードで、sun-web.xmlpersistence-types1ws60 または mmap のいずれかに構成されている場合、セッションマネージャーはクロスプロセスロックを使ってセッションデータの整合性を維持します。これらを次の説明に従って設定すれば、パフォーマンスを改善できます。


注 –

マルチプロセスモードは非推奨であり、下位互換性を維持するためだけに含まれています。


maxLocks のチューニング (UNIX/Linux)

maxLocks プロパティーに指定された数の意味は、maxSessions の値を maxLocks で割ってみれば理解できます。たとえば、maxSessions = 1000 の場合に maxLocks = 10 と設定すると、約 100 個のセッション (1000/10) が同じロック上で競合することになります。maxLocks を増やすと、同じロック上で競合するセッションの数が減るので、パフォーマンスが改善し、待ち時間が短縮される可能性があります。ただし、ロックの数を増やすとオープン状態のファイル記述子の数も増えます。そのため、ロックの数を増やさなければ受信接続要求に割り当てられるはずだった利用可能な記述子の数が、減ることになります。

これらの設定の詳細については、『Sun Java System Web Server 7.0 Developer’s Guide to Java Web Applications』の第 6 章「Session Managers」を参照してください。

MMapSessionManager のチューニング (UNIX/Linux)

次の例では、manager-properties プロパティーを使って persistence-type="mmap" と構成する場合に、プロセスサイズにどのような影響があるかについて説明します。詳細については、『Sun Java System Web Server 7.0 Developer’s Guide to Java Web Applications』「MMap Session Manager (UNIX Only)」を参照してください。

maxSessions = 1000
maxValuesPerSession = 10
maxValueSize = 4096

この例の場合、サイズ 1000 X 10 X 4096 バイト、つまり約 40M バイトのメモリーマップファイルが作成されます。これはメモリーマップファイルなので、起動時のプロセスサイズが 40M バイトだけ増えます。これらのパラメータに設定する値が大きいほど、プロセスサイズの増加量も増えます。