Sun Java System Application Server Enterprise Edition 8.1 2005Q2 管理ガイド

ProcedureEJB キャッシュを設定する

コンテナは、もっともよく使われる Enterprise JavaBeans の Enterprise JavaBean データのキャッシュを保持します。これにより、コンテナはその Enterprise JavaBeans のデータに対するほかのアプリケーションモジュールからの要求により速く応答できます。この節が適用されるのは、ステートフルセッション Beans とエンティティー Beans だけです。

キャッシュされた Enterprise JavaBeans は、アクティブ、アイドル、非活性化の 3 つのうち、いずれかの状態になっています。アクティブな Enterprise JavaBean には、現在クライアントがアクセスしています。アイドル Enterprise JavaBeans のデータは現在キャッシュにありますが、この Bean にアクセスしているクライアントはありません。非活性化 Bean のデータは一時的に保存されていて、クライアントが Bean を要求した場合はキャッシュに読み込まれます。

手順
  1. ツリーコンポーネントで、「設定」ノードを選択します。

  2. 設定するインスタンスを選択します。

    • 特定のインスタンスを設定するには、そのインスタンスの設定ノードを選択します。たとえば、デフォルトインスタンス server の場合は、server-config ノードを選択します。

    • すべてのインスタンスのデフォルト値を設定するには、default-config ノードを選択します。

  3. 「EJB コンテナ」ノードを選択します。

  4. 「最大キャッシュサイズ」フィールドで最大キャッシュサイズを調整します。

    Bean の作成と破棄のオーバーヘッドをなくすために、キャッシュする Beans の最大数を大きくします。ただし、キャッシュを大きくした場合、サーバーはより大きなメモリーとリソースを消費します。キャッシュ設定に対して動作環境が十分であることを確認してください。

  5. 「キャッシュのサイズ変更量」フィールドで、キャッシュのサイズ変更量を調整します。

    キャッシュされた Beans の最大数に達すると、コンテナは複数の非活性化 Beans を、デフォルトで 32 に設定されたバックアップストアから削除します。

  6. 「キャッシュアイドルタイムアウト」フィールドで、エンティティー Beans にスケジュールされたキャッシュクリーンアップの間隔を秒単位で調整します。

    キャッシュされたエンティティー Bean が一定時間アイドル状態になった場合、Bean は非活性化されます。つまり、その Bean の状態がバックアップストアに書き込まれます。

  7. 「削除タイムアウト」フィールドで、ステートフルセッション Beans をキャッシュストアまたは非活性化ストアから削除する時間を秒単位で調整します。

  8. 「選択内容の削除ポリシー」フィールドで、コンテナがステートフルセッション Beans を削除するために使用するポリシーを設定します。

    「選択内容の削除ポリシー」フィールドに設定されたポリシーに基づいて、コンテナは削除するステートフルセッション Beans を決定します。コンテナがキャッシュから Beans を削除するために使えるポリシーには次の 3 つがあります。

    • 最近使用されていない (NRU)

    • ファーストインファーストアウト (FIFO)

    • 最近の使用頻度がもっとも低い (LRU)

    NRU ポリシーでは、最近使われていない Bean を削除します。FIFO ポリシーでは、キャッシュ内でもっとも古い Bean を削除します。LRU ポリシーでは、最近もっともアクセスされていない Bean を削除します。デフォルトでは、コンテナがNRU ポリシーを使うように設定されています。

    エンティティー Beans は常に FIFO ポリシーを使って削除されます。

  9. 「保存」をクリックします。

  10. Application Server を再起動します。