WebSphere Application Server for z/OS, Version 6.0.x   
             オペレーティング・システム: z/OS

             目次と検索結果のパーソナライズ化

アクセス・インテント・サービス

アクセス・インテントは、 アプリケーションのパーシスタンスに対するより厳密な管理を可能にする WebSphere Application Server ランタイム・サービスです。

アクセス・インテント・サービスは、 エンティティー Bean アクセスのパフォーマンスを最適化するために Enterprise JavaBeans (EJB) コンテナーとそのエージェントが使用する、 宣言された注釈のセットを定義します。 これらの注釈は、アクセス・インテント・ポリシー と呼ばれるセットに編成されます。

アクセス・インテント・ポリシーには、EJB コンテナーとそのエージェントによるヒントと考えられる注釈のセットが含まれています。 ほとんどのアクセス・インテント・ポリシーは、特定のバックエンド・リソース・マネージャーにマップできる高水準の抽象化を表すヒントです。 パーシスタンスの詳細を実行する際に必要な並行性制御、接続、およびキャッシュ管理を保証するのは、EJB パーシスタンス機構の役割です。 EJB パーシスタンス・マネージャーは、 アクセス・インテントのヒントを使用することで、 それに割り当てられたタスクを実行する際に、パフォーマンスについてより適切な判断を行うことができます。 より少数のアクセス・インテントは、EJB コンテナーへのヒントであり、 EJB コレクションの管理に影響を与えます。

一般に、アプリケーションでは、Bean レベル のアクセス・インテントを構成します。 アクセス・インテント・ポリシーは、 アプリケーション・プロファイル の有効範囲内の Bean に適用することもできます。 したがって、 複数の対立するアクセス・インテント・ポリシーを持つ Bean を構成することができます。 アプリケーション・プロファイルの資料に、 ある要求の Bean に特定のアクセス・インテント・ポリシーを適用するアプリケーションを構成し、 次に異なる要求の同じ Bean に別のアクセス・インテント・ポリシーを適用する方法についての、より詳しい説明があります。

アクセス・インテント・ポリシーをメソッド・レベルで適用することは、 WebSphere Application Server バージョン 6.0 では推奨されていません。 この方法でアクセス・インテントを構成する場合は、EJB モジュールの スコープ内のメソッドにポリシーを適用して、 そのポリシーが、メソッド上のすべての要求に対する、 デフォルトのアクセス・インテントになるようにします。

アクセス・インテントの設計に関する考慮事項

ベスト・プラクティス: アプリケーションが過剰調整にならないようにします。 アクセス・インテント・サービスを不適当に使用すると、エラーが起こる可能性があります。 例えば、wsPessimisticUpdate-NoCollision ポリシーを誤って使用した結果、 更新が失われることがあります。 また、コレクション増分値の設定が不適切な場合は、パフォーマンス上の問題が発生することがあります。 さらに、複数のアクセス・インテント・ポリシーを使用してアプリケーションの構成を複雑にすると、 問題判別がより難しくなります。 bprac
注: アクセス・インテント・サービスを使用する際は、明確かつ簡潔であることを指針の基本とすべきです。 これは、アプリケーション・プロファイルの有効範囲内でアクセス・インテント・ポリシーを適用する際に、より一層重要になります。

アクセス・インテント・ポリシーは、エンティティー Bean のあらゆるメソッドで構成できますが、 ポリシーの属性の中には、一定の条件下にあるランタイム環境によってのみ活用できるものがあります。 例えば、CMP エンティティー Bean で並行性およびアクセス・インテントが使用されるのは、 所定のリソースへの接続をオープンし、そのリソースからデータを読み取るために ejbLoad() メソッドが駆動されるときだけです。そのデータはキャッシュされ、ejbStore() メソッドの呼び出し中に正しい照会を駆動するために使用されます。 先読みヒントは、Bean に対してファインダーを実行しているときだけ使用されます。 最後に、コレクション増分およびリソース・マネージャー事前取り出し増分は、 マルチ・オブジェクト・ファインダーでのみ使用されます。 ポリシーを使用しないメソッドについてのポリシーを構成しても、 エラーにはなりません (ポリシーがメソッドに正しく適用されている場合であっても、 ポリシーの特定の属性だけが使用されます)。 ただし、アプリケーション全体で不必要にポリシーを構成すると、 アプリケーションの設計が不明確になり、そのアプリケーションの保守が複雑になります。

アクセス・インテントと BMP エンティティー Bean

アクセス・インテントの宣言機能は、ユーザーに、CMP エンティティー Bean 開発者としての大きな力を与えてくれます。 WebSphere Application Server が、アプリケーション内からパーシスタンス論理を明示的に管理することなく、 パーシスタンスの詳細を管理する方法について、ヒントを提供することができます。 ただし、BMP エンティティー Bean を開発しなければならない場合があります。 BMP コンポーネントと CMP コンポーネントの間における唯一の意味のある違いは、 誰がパーシスタンス論理を提供するかということにあるため、 WebSphere Application Server が CMP エンティティー Bean のために行うように、 BMP エンティティー Bean もアクセス・インテントのヒントを活用できる必要があります。 アクセス・インテント・サービスを使用する BMP エンティティー Bean は、 アプリケーションのプロファイル作成に参加します。 つまり、アクセス・インテント属性の値には要求と要求の間で異なるものを使用でき、 BMP エンティティー Bean はシームレスにそのパーシスタンス戦略を変更できるようになります。

アクセス・インテント・ポリシーは、BMP エンティティー Bean メソッドと CMP エンティティー Bean メソッドの両方に適用できます。 アクセス・インテントのヒントは、本来契約で保証されたものではないため、 BMP エンティティー Bean がそれらのヒントを活用する義務はありません。 BMP エンティティー Bean は、その特定の Bean にとって重要なアクセス・インテント属性のみを使用することが予期されます。

現行のアクセス・インテント・ポリシーは、特定の BMP エンティティー Bean の java:comp ネーム・スペースにバインドされます。 そのポリシーは、 アクセス・インテント・ポリシーが検索されたメソッド呼び出しの期間にのみ適用されます。 一般的なシナリオでは、ejbLoad() メソッドの呼び出し中にアクセス・タイプをキャッシュし、 ejbStore() メソッドの呼び出し中に適切なアクションが取られるようにします。

アクセス・インテントのベスト・プラクティス

Enterprise JavaBeans (EJB) メソッドにアクセス・インテント・ポリシーを適用する場合は、次の問題を考慮してください。




関連概念
並行性制御
アクセス・インテント・ポリシー
関連タスク
アクセス・インテント・ポリシーの使用
関連資料
アクセス・インテント -- 分離レベルおよび更新ロック
関連情報
AccessIntent インターフェース
タスクの概要: アプリケーション・プロファイル
概念トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 10:52:11 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.zseries.doc/info/zseries/ae/cejb_axiover.html