Interstage Application Server J2EE ユーザーズガイド |
目次 索引 |
第3部 EJB編 | > 第9章 EJBサービスの機能 | > 9.2 Entity Beanの実行環境 |
EJBサービスでは、EJB規約に準拠して、Entity Beanのインスタンス用領域を仮想メモリ上でプール管理しています。
ユーザは、プール管理するインスタンスの数を設定できます。
インスタンスは、インスタンス生成モードに設定したタイミングで生成され、停止するまで保持されます。
設定したインスタンス数以上のデータ操作をした場合、アプリケーションの動作に問題はありませんが、データベースへのアクセスが行われるので処理性能に若干影響します。
EJBサービスでは、処理性能やメモリ性能の向上を図るため、ユーザの用途に合わせたきめ細かいインスタンス管理モードを用意しています。
インスタンス管理の種類とそれぞれの用途を以下に示します。
インスタンス管理モード |
用途 |
ReadWrite(デフォルト) |
トランザクション単位にインスタンスをキャッシュすることで、同一トランザクション内でデータアクセスの性能向上を図っています。検索および更新処理を行うオンライン処理に有効です。 |
ReadOnly |
トランザクションにまたがってインスタンスをキャッシュすることで、検索処理に特化して高速化を図っています。例えば、オンライン中に更新されないマスタ情報の検索処理などに有効です。 |
Sequential |
データを順番に取り出して操作するような処理に対して、メモリ性能の向上を図っています。大量データを操作するバッチ処理に有効です。ただし、上記モードと比べてレスポンス性能が若干低下します。 |
Entity Beanに対して、「インスタンス数」に指定したインスタンスの生成タイミングを選択できます。
インスタンスを生成するタイミングを、以下の表に示します。
インスタンス生成モード |
タイミング |
At Start-Up |
Entity Bean起動処理の延長で、インスタンス数だけEntity Beanインスタンスを生成します。 |
At First Access |
Entity Bean起動完了後の初回アクセス時に、インスタンス数だけEntity Beanインスタンスを生成します。 |
As Required |
Entity Bean起動完了後、アクセス時にEntity Beanインスタンスがプールに存在しない場合、毎回生成を行います。生成したインスタンスは非活性化の延長(passivate時)でプーリングされます。 |
インスタンスの生成は、「Entity Beanのインスタンス数」を上限として行われます。
インスタンスの生成オプションの設定は、Interstage管理コンソールの[ワークユニット] > [IJServer名] > [EJBアプリケーション] > [アプリケーション環境定義] > [Interstage拡張情報]で行います。
Entity Beanのインスタンス生成モードを選択する基準を、以下の表に示します。
インスタンス生成オプション |
選択基準 |
At Start-Up |
1)Entity Beanの運用開始直後の処理性能を向上させたい場合 |
At First Access |
1)Entity Beanの起動性能を向上させたい場合 |
As Required |
1)Entity Beanの起動性能を向上させたい場合 |
インスタンス数、インスタンス管理モードおよびインスタンス生成モードは、Entity Bean単位に設定できます。
目次 索引 |