IPCOMと連携したIIOP通信の負荷分散機能を使用する場合には以下に注意してください。
Stateful Session Beanを使用する場合
Stateful Session Beanを使用する場合、EJBディスパッチ機能によるロードバランスを利用してください。EJBディスパッチ機能によるロードバランスを利用しない場合、セッションが継続しません。
unique-idタグに一意のIDを指定
アプリケーション作成時にモジュールに含むInterstage deployment descriptorファイルのunique-idタグにIJServerクラスタ内で一意のIDを指定してください。
unique-idタグを指定しなかった場合、unique-idは配備時に自動的に番号が付けられます。この場合、配備したアプリケーションが同一であってもunique-idが異なる場合には異なるアプリケーションと見なされます。このため、同一アプリケーションが配備された複数サーバ間の負荷分散であってもエラーとなるため、配備前にunique-idをあらかじめ定義してください。
例
unique-idタグの指定例
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sun-ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 EJB 3.0//EN" "http://www.sun.com/software/appserver/dtds/sun-ejb-jar_3_0-0.dtd"> <sun-ejb-jar> <enterprise-beans> <unique-id>2</unique-id> <ejb> <ejb-name>hogehoge</ejb-name> <jndi-name>MyEjb</jndi-name> </ejb> </enterprise-beans> </sun-ejb-jar>
配備するモジュールの形式により、unique-idを指定するInterstage deployment descriptorファイルが異なります。
配備するモジュールの形式 | Interstage deployment descriptorファイル |
---|---|
EAR | sun-application.xml |
ejb-jar | sun-ejb-jar.xml |
JNDI名に仮想ホスト名の指定
異なるIJServerクラスタのEJBアプリケーションを呼び出す場合、接続先を指定する方法には以下の2つの方法があります。
JNDIサービスの設定で他ネーミングサービスの接続先を指定する(推奨)
他ネーミングサービス連携機能を使用して、クラスタのJNDIサービスの設定で外部ネーミングサービスURLに他プロセスまたはリモートサーバのホスト名、IIOPリスナーのポート番号を指定します。IPCOMと連携したIIOP通信の負荷分散機能を利用する場合には、外部ネーミングサービスURLに指定するリモートサーバのホスト名にIPCOMが存在する仮想ホスト名を指定する必要があります。
定義方法については、「6.4.2 JNDIサービスの定義項目」を参照してください。
Interstage deployment descriptorファイルにInteroperable Naming Serviceの規則を使用して接続先を指定する
Interstage deployment descriptorファイルにInteroperable Naming Serviceの規則を使用して、他プロセスまたはリモートサーバのホスト名、IIOPリスナーのポート番号、JNDI名を指定します。IPCOMと連携したIIOP通信の負荷分散機能を利用する場合には、このリモートサーバのホスト名にIPCOMが存在する仮想ホスト名を指定する必要があります。
指定方法については「2.14.2 環境ネーミングコンテキスト(Environment Naming Context)」を参照してください。