WebコンテナとEJBコンテナの間の通信を、IPCOMを使用してIIOP負荷分散をする場合は、以下の手順で環境構築します。
Webコンテナを使用せずに、クライアントからサーバのEJBアプリケーションを呼び出す場合は、以下を参照してください。
EJBコンテナの設定
EJBコンテナを配置するサーバには以下の設定が必要です。
EJBコンテナを配置するサーバにおいて、以下のhostsファイルを設定します。
Windows(R)インストールフォルダ\system32\drivers\etc\hosts
/etc/hosts
hostsファイルに定義されている自サーバのホスト名とIPアドレスの設定文に対して、別名で、仮想IPアドレスのホスト名の宣言を追加します。
宣言を追加した後は、pingコマンドを使用してホスト名が解決されているかを確認してください。
例
以下に、EJBコンテナを配置するサーバグループのホスト名がhost1、仮想IPアドレスのホスト名がvhostの場合の記述例を示します。なお、「192.0.2.21」のIPアドレスは、host1の実IPアドレスです。
192.0.2.21 host1 vhost
作成したIJServerクラスタに対して以下の2つの項目を設定してください。
定義項目 | 設定内容 |
---|---|
非フラグメントモード | ORBの送信データが分割しないようにするため、Java VMオプション(システムプロパティ)に以下の値を設定してください。 -Dcom.sun.corba.ee.giop.ORBGIOP12BuffMgr=GROW 本プロパティを設定することにより、最大メッセージ分割サイズは無効になり、送信データが分割されなくなります。 |
仮想ホスト名の指定 | IIOPリスナーのネットワークアドレスにhostsファイルに宣言した仮想IPアドレスのホスト名を指定してください。 注意 IIOPリスナーのネットワークアドレスに設定する値は、仮想IPアドレスではなく、仮想ホスト名にしてください。仮想IPアドレスを指定した場合、IJServerクラスタの起動が失敗します。 |
Java VMオプションの値は、Interstage Java EE管理コンソールおよびasadminコマンドを使用して変更できます。詳細については、以下のマニュアルを参照してください。
Interstage Java EE管理コンソールヘルプ
「リファレンスマニュアル(コマンド編)」の「Java EE運用コマンド」-「asadmin」-「定義項目参照/更新」
「リファレンスマニュアル(コマンド編)」の「Java EE運用コマンド」-「asadmin」-「create-jvm-optionsサブコマンド」
IIOPリスナーの設定は、Interstage Java EE管理コンソールおよびasadminコマンドを使用して変更できます。詳細については、以下のマニュアルを参照してください。
Interstage Java EE管理コンソールヘルプ
「リファレンスマニュアル(コマンド編)」の「Java EE運用コマンド」-「asadmin」-「setサブコマンド」の「configs.config.iiop-serviceの定義項目」
IPCOMと連携したIIOP通信の負荷分散機能を利用する場合は、アプリケーション実行時に必要なヒープ使用量を考慮に入れる必要があります。Java VMのヒープ使用量については、「チューニングガイド」の「Java EE機能のチューニング」-「ORBのチューニング」-「ORB」を参照して、見積もってください。
接続先の送信データサイズが256000byteを超える場合は「チューニングガイド」の「Java EE機能のチューニング」-「ORBのチューニング」-「通信データサイズに関する注意事項」を参照し、最大受信バッファサイズの拡張を行ってください。
IPCOM連携するアプリケーションを配備する場合、IJServerクラスタで一意のIDを以下のタグに定義する必要があります。詳細は、「3.1.15 IPCOMと連携する場合の注意事項」を参照してください。
配備モジュール | タグ |
---|---|
EJB-JAR | sun-ejb-jar.xmlのunique-idタグ |
EAR | sun-application.xmlのunique-idタグ |
IPCOMの設定
IPCOMの設定は、IPCOMのマニュアルを参照してください。
負荷計測エージェントを必要とする分散方式のうち、「最小待ちメッセージ数」および「最小通信バッファ使用率」は、Interstage Java EEでは利用できません。
負荷分散ポリシーのセッション維持(一意性の保証)の設定は、コネクション単位の分散を行うように設定することを推奨します。また、IIOP負荷分散の設定は、メソッド呼び出し単位の負荷分散を行うように設定してください。
仮想ポート番号には、EJBコンテナを配置するサーバで、仮想ホスト名を指定したIIOPリスナーのポート番号を設定してください。
注意
メソッド呼び出し単位の負荷分散を行う設定にするには、IIOP負荷分散に対応したIPCOMが必要です。
Webコンテナの設定
Webコンテナを配置するサーバには以下の設定が必要です。
Webコンテナを配置するサーバにおいて、以下のhostsファイルを設定します。
Windows(R)インストールフォルダ\system32\drivers\etc\hosts
/etc/hosts
仮想IPアドレスのホスト名と、EJBコンテナを配置するすべてのサーバのホスト名の宣言を追加します。
宣言を追加した後は、仮想IPアドレスのホスト名以外の宣言については、pingコマンドを使用してホスト名が解決されているかを確認してください。
また、仮想IPアドレスのホスト名の宣言については、IPCOMの仮想IPアドレスの設定に合わせて正しく宣言されているか確認してください。
例
以下に、EJBコンテナを配置するサーバグループのホスト名がhost1、host2、仮想IPアドレスのホスト名がvhostの場合の記述例を示します。なお、「192.0.2.21」のIPアドレスは、host1の実IPアドレス、「192.0.2.22」のIPアドレスは、host2の実IPアドレスです。
192.0.2.10 vhost 192.0.2.21 host1 192.0.2.22 host2
Interstage deployment descriptorファイルに指定するJNDI名に仮想ホスト名を指定してください。詳細は、「3.1.15 IPCOMと連携する場合の注意事項」の「JNDI名に仮想ホスト名の指定」を参照してください。
IJServerクラスタから異なるIJServerクラスタのEJBアプリケーションを呼び出す場合、作成したIJServerクラスタに対して以下を設定してください。
定義項目 | 設定内容 |
---|---|
非フラグメントモード | ORBの送信データが分割しないようにするため、Java VMオプション(システムプロパティ)に以下の値を設定してください。 -Dcom.sun.corba.ee.giop.ORBGIOP12BuffMgr=GROW 本プロパティを設定することにより、最大メッセージ分割サイズは無効になり、送信データが分割されなくなります。 |
Java VMオプションの値は、Interstage Java EE管理コンソールおよびasadminコマンドを使用して変更できます。詳細については、以下のマニュアルを参照してください。
Interstage Java EE管理コンソールヘルプ
「リファレンスマニュアル(コマンド編)」の「Java EE運用コマンド」-「asadmin」-「create-jvm-optionsサブコマンド」
IPCOMと連携したIIOP通信の負荷分散機能を利用する場合は、アプリケーション実行時に必要なヒープ使用量を考慮に入れる必要があります。Java VMのヒープ使用量については、「チューニングガイド」の「Java EE機能のチューニング」-「ORBのチューニング」-「ORB」を参照して、見積もってください。
接続先の送信データサイズが256000byteを超える場合は「チューニングガイド」の「Java EE機能のチューニング」-「ORBのチューニング」-「通信データサイズに関する注意事項」を参照し、最大受信バッファサイズの拡張を行ってください。
クライアントの設定
Webコンテナを使用せずに、クライアントからサーバのEJBアプリケーションを呼び出す場合は、以下を設定してください。
hostsファイルに、仮想IPアドレスのホスト名と、EJBコンテナを配置するすべてのサーバのホスト名の宣言を追加します。設定方法については「Webコンテナの設定」を参照してください。
「4.14.3 クライアントからサーバに接続する場合の設定」で指定する接続先のホスト名には、IPCOM連携用の仮想ホスト名を指定してください。
以下のプロパティをJava VMオプションに設定してください。
定義項目 | 設定内容 |
---|---|
非フラグメントモード | ORBの送信データが分割しないようにするため、Java VMオプション(システムプロパティ)に以下の値を設定してください。 -Dcom.sun.corba.ee.giop.ORBGIOP12BuffMgr=GROW 本プロパティを設定することにより、最大メッセージ分割サイズは無効になり、送信データが分割されなくなります。 |
IPCOMと連携したIIOP通信の負荷分散機能を利用する場合は、アプリケーション実行時に必要なヒープ使用量を考慮に入れる必要があります。Java VMのヒープ使用量については、「チューニングガイド」の「Java EE機能のチューニング」-「ORBのチューニング」-「ORB」を参照して、見積もってください。
接続先の送信データサイズが256000byteを超える場合は「チューニングガイド」の「Java EE機能のチューニング」-「ORBのチューニング」-「通信データサイズに関する注意事項」を参照し、最大受信バッファサイズの拡張を行ってください。
通信経路
IPCOMを利用して負荷分散する場合は、IIOP通信はすべてIPCOM経由で行われます。
Home/Remoteインタフェースを利用する場合の例を以下に図示します。