ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Express Java EE運用ガイド
FUJITSU Software

4.23.4 クライアント(呼び出し元)の設定

EJBアプリケーションを呼び出す側の設定について以下に説明します。

4.23.4.1 ロードバランス機能を使用しない場合

IJServerクラスタの設定

呼び出し元がIJServerクラスタの場合、呼び出す接続先を指定する方法には以下の2つの方法があります。

  1. JNDIサービスの設定で他ネーミングサービスの接続先を指定する

  2. 環境ネーミングコンテキストの設定で接続先を指定する

以下にそれぞれの指定方法について説明します。

  1. JNDIサービスの設定で他ネーミングサービスの接続先を指定する
    JNDIサービスの設定では、ネーミングサービスURLを指定することで、自サーバーインスタンスに指定されたJNDI名のオブジェクトリファレンスが登録されていない場合に、指定されたURLの別サーバーインスタンスのネーミングサービスに問い合わせを行うための設定ができます。
    このURLにEJBアプリケーションを運用するサーバーインスタンスのIIOPリスナー情報を指定します。
    詳細な定義方法については、「6.4.2 JNDIサービスの定義項目」を参照してください。

  2. 環境ネーミングコンテキストの設定で接続先を指定する
    Interstage deployment descriptorファイルにInteroperable Naming Service(以降、INS)の規則を使用して、他プロセスまたはリモートサーバのホスト名、IIOPリスナーのポート番号、JNDI名を指定することができます。この設定にEJBアプリケーションが運用されているサーバーインスタンスのIIOPリスナー情報を指定します。
    詳細は「2.14.2 環境ネーミングコンテキスト(Environment Naming Context)」を参照してください。

アプリケーションクライアントコンテナの設定

Interstage ACC deployment descriptor(sun-acc.xml)にtarget-server要素を定義します。このtarget-server要素には、EJBアプリケーションが運用されているサーバーインスタンスの接続先を指定します。target-server要素のname属性に一意の名前、address属性に接続先ホストをFQDN形式またはIPv4のIPアドレス、port属性にIIOPリスナーのポート番号を指定します。
property要素のプロパティcom.sun.appserv.iiop.loadbalancingpolicyは指定しない、もしくは、"disable"を指定してください。

<client-container>
    <target-server name="server1" address="host1" port="23700"/>
    <property name="com.sun.appserv.iiop.loadbalancingpolicy" value="disable"/>
</client-container>

スタンドアロンクライアントの設定

エンドポイントの指定として以下を設定してください。このプロパティを指定する場合、同一プロセスで動作するアプリケーションでは同一の値を指定してください。同一サーバーインスタンス上のアプリケーションで別々の値を指定したり、途中で接続先を変更することはできません。システムプロパティのcom.sun.appserv.iiop.loadbalancingpolicyは指定しない、もしくは、"disable"を指定してください。

プロパティ名

説明

com.sun.appserv.iiop.endpoints

ホスト名とポート番号のリスト

EJBアプリケーションを運用するサーバーインスタンスのホスト名とIIOP通信ポート番号を以下の書式で指定します。

ホスト名:ポート番号

例) host1:23700
デフォルト値はlocalhost:23600です。


-Dcom.sun.appserv.iiop.loadbalancingpolicy=disable
-Dcom.sun.appserv.iiop.endpoints=host1:23700

4.23.4.2 EJBディスパッチ機能によるロードバランス

com.sun.appserv.iiop.loadbalancingpolicyプロパティにロードバランスポリシーとして以下を設定できます。EJBディスパッチ機能を使用する場合には、ロードバランスポリシーを指定しないか、もしくは”disable”を指定してください。

プロパティ名

説明

com.sun.appserv.iiop.loadbalancingpolicy

disable

ロードバランスを使用しない、もしくは、EJBディスパッチ機能によるロードバランスを使用します。
デフォルト設定です。

IJServerクラスタの設定

呼び出し元がIJServerクラスタの場合、呼び出す接続先を指定する方法には以下の2つの方法があります。

  1. JNDIサービスの設定で他ネーミングサービスの接続先を指定する

  2. 環境ネーミングコンテキストの設定で接続先を指定する

両方指定した場合には2.の方法が優先されます。以下にそれぞれの指定方法について説明します。

  1. JNDIサービスの設定で他ネーミングサービスの接続先を指定する
    JNDIサービスの設定では、ネーミングサービスURLを指定することで、自サーバーインスタンスに指定されたJNDI名のオブジェクトリファレンスが登録されていない場合に、指定されたURLの別サーバーインスタンスのネーミングサービスに問い合わせを行うための設定ができます。
    このURLにEJBディスパッチャを運用するサーバーインスタンスのIIOPリスナー情報を指定します。詳細な定義方法については、「6.4.2 JNDIサービスの定義項目」を参照してください。

  2. 環境ネーミングコンテキストの設定で接続先を指定する
    Interstage deployment descriptorファイルにInteroperable Naming Service(以降、INS)の規則を使用して、他プロセスまたはリモートサーバのホスト名、IIOPリスナーのポート番号、JNDI名を指定することができます。この設定にEJBディスパッチャが運用されているサーバーインスタンスのIIOPリスナー情報を指定します。
    詳細は「2.14.2 環境ネーミングコンテキスト(Environment Naming Context)」を参照してください。

アプリケーションクライアントコンテナの設定

Interstage ACC deployment descriptor(sun-acc.xml)にtarget-server要素を定義します。このtarget-server要素には、EJBディスパッチャが運用されているサーバーインスタンスの接続先を指定します。EJBディスパッチャを運用するサーバーインスタンスが異常停止する場合を考慮し、IJServerクラスタを複数サーバーインスタンスで運用している場合には、複数のエンドポイントを指定してください。複数指定すると、先頭に指定したターゲットから順番にアクセスされます。

target-server要素のname属性に一意の名前、address属性に接続先ホストをFQDN形式またはIPv4のIPアドレス、port属性にIIOPリスナーのポート番号を指定します。

property要素のプロパティcom.sun.appserv.iiop.loadbalancingpolicyは指定しない、もしくは、"disable"を指定してください。

<client-container>
    <target-server name="server1" address="host1" port="23700"/>
    <target-server name="server2" address="host1" port="23701"/>
    <property name="com.sun.appserv.iiop.loadbalancingpolicy" value="disable"/>
</client-container>

スタンドアロンクライアントの設定

エンドポイントの指定として以下を設定してください。このプロパティを指定する場合、同一プロセスで動作するアプリケーションでは同一の値を指定してください。同一サーバーインスタンス上のアプリケーションで別々の値を指定したり、途中で接続先を変更することはできません。システムプロパティのcom.sun.appserv.iiop.loadbalancingpolicyは指定しない、もしくは、"disable"を指定してください。

プロパティ名

説明

com.sun.appserv.iiop.endpoints

ホスト名とポート番号のリスト

ロードバランスを行う場合、EJBディスパッチャを運用するサーバーインスタンスのホスト名とIIOP通信ポート番号を以下の書式で指定します。

ホスト名:ポート番号[,ホスト名:ポート番号,...]

例) host1:23700,host1:23701
デフォルト値はlocalhost:23600です。

-Dcom.sun.appserv.iiop.loadbalancingpolicy=disable
-Dcom.sun.appserv.iiop.endpoints=host1:23700,host1:23701

4.23.4.3 グループ管理サービスによるロードバランス

com.sun.appserv.iiop.loadbalancingpolicyプロパティにロードバランスポリシーとして以下を設定できます。プロパティのデフォルト値は"disable"であるため、グループ管理サービスによるロードバランスを使用する場合には必ず指定してください。

プロパティ名

説明

com.sun.appserv.iiop.loadbalancingpolicy

ic-based

グループ管理サービスによるロードバランス機能を使用します。各サーバーインスタンスに均等にロードバランスします。

IJServerクラスタの設定

呼び出し元がIJServerクラスタの場合、IJServerクラスタから他プロセスまたはリモートサーバのネーミングサービスに登録されたEnterprise JavaBeanにアクセスすることはできません。

アプリケーションクライアントコンテナの設定

Java EEアプリケーションクライアントの接続にRMI-IIOPロードバランスを使用する場合、Interstage ACC deployment descriptor(sun-acc.xml)にtarget-server要素を定義してください。

target-server要素のname属性に一意の名前、address属性に接続先ホストをFQDN形式またはIPv4のIPアドレス、port属性にIIOPリスナーのポート番号を指定します。さらにproperty要素にプロパティcom.sun.appserv.iiop.loadbalancingpolicyを指定してください。com.sun.appserv.iiop.loadbalancingpolicyを指定しなかった場合にはロードバランスされません。また、ロードバランスは最初に指定したエンドポイントと同じIJServerクラスタの中で行われます。target-server要素に異なるIJServerクラスタに属したエンドポイントを定義しても無視されます。

<client-container>
    <target-server name="server1" address="host1" port="23700"/>
    <target-server name="server2" address="host1" port="23701"/>
    <property name="com.sun.appserv.iiop.loadbalancingpolicy" value="ic-based"/>
</client-container>

スタンドアロンクライアントの設定

システムプロパティにcom.sun.appserv.iiop.loadbalancingpolicyまたはエンドポイントの指定として以下を設定してください。このプロパティを指定する場合、同一プロセスで動作するアプリケーションでは同一の値を指定してください。同一サーバーインスタンス上のアプリケーションで別々の値を指定したり、途中で接続先を変更することはできません。

プロパティ名

説明

com.sun.appserv.iiop.endpoints

ホスト名とポート番号のリスト

ロードバランスを行う場合、ホスト名とIIOP通信ポート番号を以下の書式で指定します。

ホスト名:ポート番号[,ホスト名:ポート番号,...]

例) host1:23700,host1:23701
デフォルト値はlocalhost:23600です。

-Dcom.sun.appserv.iiop.loadbalancingpolicy=ic-based
-Dcom.sun.appserv.iiop.endpoints=host1:23700,host1:23701