wobs-batchapgroup.xml

説明

バッチアプリケーショングループ単位の配備記述ファイルです。
ファイルフォーマットは Spring の bean 定義ファイルであり、GroupDeploymentDescription型を持つ batchapgroupDD という識別子が付与された bean を配備記述設定として使用します。
バッチアプリケーショングループ配備記述ファイルおよび各バッチアプリケーション配備記述ファイルは省略可能です。省略時は各配備記述の全項目が既定値に設定されていると解釈し配置および有効化動作を行います。

パス
設定例
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:util="http://www.springframework.org/schema/util"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    <bean id="batchapgroupDD" class="com.nec.webotx.batch.core.applicationmanagement.GroupDeploymentDescriptionFactoryBean">
        <property name="applicationFolders" value="app1,app2,testapp"/>
        <property name="classLoaderProps">
            <props>
                <prop key="delegate">false</prop>
            </props>
        </property>
        <property name="stickyRequestPathPatternList">
            <list>
                <value>user1/sampleGroup/sampleApp1/*</value>
                <value>user2/sampleGroup/*/*</value>
            </list>
        </property>
        <property name="stickyTrigger">
            <list>
                <value>onDemand</value>
                <value>jobExecuting</value>
            </list>
        </property>
    </bean>
</beans>
関連

property name="applicationFolders" ノード

説明

バッチアプリケーショングループに含むバッチアプリケーション名を指定します。
未指定の場合は、バッチアプリケーショングループアーカイブの最上位フォルダ直下の lib, classes という名前のサブフォルダを除いて、全てバッチアプリケーションとして検索します。(※ V8.3互換の動作)

既定値
空リスト
空リストの場合、バッチアプリケーショングループアーカイブの最上位フォルダ直下のサブフォルダを、lib, classes を除いて、全てバッチアプリケーションとして検索します。(※ V8.3互換の動作)
設定可能値/範囲

バッチアプリケーショングループアーカイブの最上位フォルダ直下に存在するフォルダ名のリスト。
複数指定する場合には、区切り文字に「,」を使用します。

設定例

バッチアプリケーションとしてapp1, app2, testappを設定する例

<beans>
    <bean id="batchapgroupDD">
        <property name="applicationFolders" value="app1,app2,testapp"/>
    </bean>
</beans>
設定方法

バッチアプリケーションアーカイブに含めている配備記述ファイルを更新し、設定を反映させる為には、バッチアプリケーションアーカイブの再配備を行う必要があります。
${DOMAIN_HOME}/container/<コンテナ名>/直下に配置している配備記述ファイルを更新し、設定を反映させる為には、バッチコンテナの再起動を行う必要があります。

決定基準/導出式

通常は指定する必要はありません。
特に、コンテナ単位のバッチアプリケーショングループ配備記述ファイル(${DOMAIN_HOME}/container/<コンテナ名>/wobs-batchapgroup.xml)中では、本設定は設定するべきではありません。

関連

property name="classLoaderProps" ノード

説明

クラスローダに関する設定を行うノードです。
Properties型で下表のパラメータを設定することができます。

キー 説明 既定値 設定可能値/範囲 決定基準/導出式
delegate アプリケーショングループクラスローダのクラス検索において、親クラスローダを優先検索するか否かを指定します。未指定の場合は既定値 false が設定されます。
true
親クラスローダを優先検索する
false
アプリケーショングループクラスローダを優先検索する
false true | false 親クラスローダを優先させる場合に、trueを指定します。
設定例

親クラスローダを優先検索する例

<beans>
    <bean id="batchapgroupDD">
        <property name="classLoaderProps">
            <props>
                <prop key="delegate">true</prop>
            </props>
        </property>
    </bean>
</beans>
設定方法

バッチアプリケーションアーカイブに含めている配備記述ファイルを更新し、設定を反映させる為には、バッチアプリケーションアーカイブの再配備を行う必要があります。
${DOMAIN_HOME}/container/<コンテナ名>/直下に配置している配備記述ファイルを更新し、設定を反映させる為には、バッチコンテナの再起動を行う必要があります。

関連

property name="stickyRequestPathPatternList" ノード

説明

バッチアプリケーションの ApplicationContext を固定化するジョブリクエストパスパターンのリストを指定します。

固定化した ApplicationContext の生成単位は、バッチアプリケーションです。
ジョブリクエストパスパターンのジョブ名を指定した場合、指定したパターンにマッチするジョブの実行時には、固定化された ApplicationContext が使用されます。パターンにマッチしないジョブの実行時には、固定化された ApplicationContext は使用されません。

固定化処理はバッチアプリケーション、ジョブ実行リソースコンテキスト毎に順に実行されます。その為、バッチアプリケーショングループ当たりのバッチアプリケーション数、stickyRequestPathPatternListにマッチするジョブ実行リソースコンテキストの登録数に応じて、処理時間が増加します。

既定値
無効
ApplicationContext の固定化は行われません
設定可能値/範囲
ジョブリクエストパスパターン
<アカウント名>/<バッチアプリケーショングループ名>/<バッチアプリケーション名>/<ジョブ名>
設定例

user1 が sampleGroup/sampleApp1 に定義されているジョブを実行する場合は、固定化された ApplicationContext を利用する
user2 は sampleGroup 内のすべてのジョブの実行に固定化された ApplicationContext を利用する

<beans>
    <bean id="batchapgroupDD">
        <property name="stickyRequestPathPatternList">
            <list>
                <value>user1/sampleGroup/sampleApp1/*</value>
                <value>user2/sampleGroup/*/*</value>
            </list>
        </property>
    </bean>
</beans>
設定方法

バッチアプリケーションアーカイブに含めている配備記述ファイルを更新し、設定を反映させる為には、バッチアプリケーションアーカイブの再配備を行う必要があります。
${DOMAIN_HOME}/container/<コンテナ名>/直下に配置している配備記述ファイルを更新し、設定を反映させる為には、バッチコンテナの再起動を行う必要があります。

決定基準/導出式

通常は指定する必要はありません。
本設定によってバッチアプリケーションの ApplicationContext を固定化することで、ApplicationContext の生成と初期化処理に時間がかかる構成のバッチアプリケーションについてジョブリクエスト到着後ジョブが実行開始するまでの時間を短縮することができる場合があります。

既定値では、ジョブ実行リクエストごとにバッチアプリケーションの ApplicationContext を生成したうえでジョブを実行し、実行終了後に破棄することにより、ジョブ実行リクエスト間におけるオブジェクト空間の分離を行っています。本設定を行う為には、ジョブ実行リクエスト間でのオブジェクト空間の分離の要件が緩和可能なバッチアプリケーショングループである必要があります。

注意事項
関連

property name="stickyTrigger" ノード

説明

バッチアプリケーションの ApplicationContext を固定化するタイミングのセットを指定します。

stickyRequestPathPatternList に指定したジョブリプエストパスパターンにマッチするバッチアプリケーションのみが固定化の対象です。
固定化タイミングは、複数を組み合わせて指定することが可能です。

※ 本設定は、remove-bs-batchap-stickycontextsコマンドの挙動に、影響しません。

既定値
enabling
バッチアプリケーショングループの有効化時に、ApplicationContext を固定化します。
設定可能値/範囲
設定値 説明
enabling バッチアプリケーショングループの有効化時に、ApplicationContext を固定化します。
(既定値)
onDemand create-bs-batchap-stickycontextsコマンド実行時に、ApplicationContext を固定化します。
jobExecuting ジョブ実行時に固定化されたApplicationContextが存在しない場合に、ApplicationContext を固定化します。
設定例

ApplicationContextの固定化を、create-bs-batchap-stickycontextsコマンド実行時、または、ジョブ実行時に行う場合

<beans>
    <bean id="batchapgroupDD">
        <!-- snip -->
        <property name="stickyRequestPathPatternList">
            <list>
                <value>user1/sampleGroup/sampleApp1/*</value>
                <value>user2/sampleGroup/*/*</value>
            </list>
        </property>
        <property name="stickyTrigger">
            <set>
                <value>onDemand</value>
                <value>jobExecuting</value>
            </set>
        </property>
    </bean>
</beans>
設定方法

バッチアプリケーションアーカイブに含めている配備記述ファイルを更新し、設定を反映させる為には、バッチアプリケーションアーカイブの再配備を行う必要があります。
${DOMAIN_HOME}/container/<コンテナ名>/直下に配置している配備記述ファイルを更新し、設定を反映させる為には、バッチコンテナの再起動を行う必要があります。

決定基準/導出式

設定可能値/範囲 を参照し、適切な固定化タイミングを指定します。

注意事項
関連