Sun Java System Application Server Enterprise Edition 8.1 2005Q2 高可用性 (HA) 管理ガイド

- Previous: 個々の Bean の可用性の設定
- Next: 第 9 章 Java Message Service 負荷分散とフェイルオーバー

## チェックポイントを設定するメソッドの指定

有効になっている場合、チェックポイント設定は一般に、トランザクションがロールバックする場合でも、Bean がトランザクションを完了したあとに実行されます。Bean の状態に重要な変更をもたらす非トランザクションビジネスメソッドの終了時に、SFSB のオプションのチェックポイント設定を追加で指定するには、`sun-ejb-jar.xml` 配備記述子ファイルの `ejb` 要素にある `checkpoint-at-end-of-method` 要素を使用します。

`checkpoint-at-end-of-method` 要素内の非トランザクションメソッドは、次のいずれかになります。

- SFSB のホームインタフェースで定義された `create()` メソッド。作成の直後に、SFSB の初期状態にチェックポイントを設定する場合に使用します。

- コンテナ管理によるトランザクションのみを使用している SFSB の場合は、トランザクション属性 TX_NOT_SUPPORTED または TX_NEVER でマークされた Bean のリモートインタフェースのメソッド。

- Bean 管理によるトランザクションのみを使用している SFSB の場合は、Bean 管理によるトランザクションが起動もコミットもされないメソッド。

  このリストに記述されているその他のメソッドはすべて無視されます。これらの各メソッドの呼び出しの終了時に、EJB コンテナは SFSB の状態を持続性ストアに保存します。

注 –

SFSB がどのトランザクションにも参加しておらず、`checkpoint-at-end-of-method` 要素で明示的に指定されているメソッドがない場合は、この Bean に対して `availability-enabled="true"` が設定されていても、この Bean の状態にチェックポイントは設定されません。

パフォーマンスを向上させるには、メソッドの小さなサブセットを指定します。これらのメソッドは一般に、大量の処理を実行するか、または Bean の状態に重要な変更をもたらします。

##### 例 8–2 メソッドのチェックポイント設定を指定する EJB 配備記述子の例

    <sun-ejb-jar>
        ...
        <enterprise-beans>
            ...
            <ejb availability-enabled="true">
                <ejb-name>ShoppingCartEJB</ejb-name>
                <checkpoint-at-end-of-method>
                    <method>
                        <method-name>addToCart</method-name>
                    </method>
                </checkpoint-at-end-of-method>
            </ejb>
            ...
        </enterprise-beans>
    </sun-ejb-jar>

- Previous: 個々の Bean の可用性の設定
- Next: 第 9 章 Java Message Service 負荷分散とフェイルオーバー

- © 2010, Oracle Corporation and/or its affiliates