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

EJB のプール処理とキャッシュ処理の概要

ステートレスセッション Beans とエンティティー Beans はどちらも、サーバーのパフォーマンスを改善する目的でプール内に格納できます。さらに、ステートフルセッション Beans とエンティティー Beans はどちらも、パフォーマンスを改善する目的でキャッシュ内に格納できます。

表 3–1 Bean タイプ別のプール処理またはキャッシュ処理

Bean 型 

プール 

キャッシュ 

ステートレスセッション 

可 

不可 

ステートフルセッション 

不可 

可 

エンティティー 

可 

可 

プール Bean とキャッシュ Bean の違いは、プール Beans はどれも等価であり、互いに区別できない、という点にあります。これに対し、キャッシュ Beans には、ステートフルセッション Beans の場合は対話状態が格納され、エンティティー Beans の場合は主キーが関連付けられます。エンティティー Beans は、ejbActivate() 呼び出し時にプールから削除されてキャッシュに追加され、ejbPassivate() 呼び出し時にキャッシュから削除されてプールに追加されます。ejbActivate() は、必要なエンティティー Bean がキャッシュ内に存在しない場合に、コンテナによって呼び出されます。ejbPassivate() は、キャッシュがその設定された上限を超えた場合に、コンテナによって呼び出されます。


注 –

Sun Java Studio を使って EJB コンポーネントを開発および配備する場合、個々の Bean 記述子の設定を、Bean プールや Bean キャッシュ向けに編集する必要があります。これらの設定は、本番レベルの配備に適していない可能性があります。