Sun Java System Application Server Enterprise Edition 8.2 パフォーマンスチューニングガイド

共有変更済みクラス変数を避ける

サーブレットのマルチスレッドモデル (デフォルト) では、個々のアプリケーションサーバーインスタンスに対して単一のサーブレットインスタンスが作成されます。そのアプリケーションインスタンス上のサーブレットに対するすべての要求は、同じサーブレットインスタンスを共有します。このことが原因で、サーブレットコードに同期ブロックが存在する場合にスレッド競合が発生する可能性があります。したがって、共有変更済みクラス変数は同期の必要性を作り出すため、使用を避けます。