プロパティ | |||||
---|---|---|---|---|---|
× | × | × | ○ | ○ | |
× | × | × | ○ | ○ | |
imq.<serviceName>.tcp.port (注1) (注2) (注3) | × | × | × | ○ | ○ |
imq.jmx.connector.jmxrmi.port (注2) (注3) | × | × | × | ○ | ○ |
imq.cluster.port (注2) (注3) | × | × | × | ○ | ○ |
<serviceName>には、接続サービスを表す以下の値を指定します。
admin:admin接続サービス
jms:jms接続サービス
接続サービスの詳細については、「2.19.4 接続サービス」を参照してください。
メッセージブローカとJMSクライアント・imqcmdコマンドの間にファイアウォールを設置する場合、本プロパティに0以外の値を指定し、指定したポート番号の通信が許可されるよう、ファイアウォールの設定を行う必要があります。
本プロパティを指定しない、または0を指定する場合、メッセージブローカの起動時に利用可能なエフェメラルポートを取得し、ポートをオープンします。Solaris環境では、メッセージブローカがエフェメラルポートを使用している場合に、メッセージブローカが使用するエフェメラルポートと他プロセスが使用するエフェメラルポートが競合することがあります。
メッセージブローカが使用するポートと他プロセスが使用するポートが競合しないよう、以下のいずれかの対応を実施してください。
本プロパティにエフェメラルポート以外のポート番号を設定し、システム上で一意のポート番号を使用するようにします。
以下のシステムプロパティをメッセージブローカのオプションプロパティとして指定します。
ただし、JMSの運用においてIPv6通信を使用しない場合にのみ、本システムプロパティを使用することができます。
java.net.preferIPv4Stack=true
エフェメラルポートについては、「付録D ポート番号」を参照してください。
imq.<serviceName>.max_threads
指定された接続サービスのスレッドプールに保持するスレッドの最大数を指定します。
min_threadsに指定する値以上の値を指定してください。
以下の式で見積もってください。
jmsサービスの場合
( (1) + (2) + (3) + (4) + (5) ) × 2 以上
(1) JMSを使用するIJServerクラスタのサーバーインスタンス数
IJServerクラスタが複数ある場合は、IJServerクラスタごとの合計数です。
(2) IJServerクラスタに配備されたMessage-driven Beanアプリケーション数×サーバーインスタンス数
IJServerクラスタが複数ある場合は、IJServerクラスタごとの合計数です。
(3) JMS接続ファクトリを参照するIJServerクラスタのサーバーインスタンス数 × JMS接続ファクトリに設定されている最大プールサイズ
JMS接続ファクトリが複数存在する場合は、JMS接続ファクトリごとに算出した数の合計数です。
(4) JMS接続ファクトリを参照するJMSクライアントアプリケーション数 × JMS接続ファクトリに設定されている最大プールサイズ
JMS接続ファクトリが複数存在する場合は、JMS接続ファクトリごとに算出した数の合計数です。
(5) JMS接続ファクトリを参照するJMSクライアントアプリケーション数
上図の環境の場合、以下のように見積もってください。
なお、JavaSE スタンドアロンの場合は、上図の「ACC」を「JavaSE スタンドアロンアプリケーション」に読み替えて見積もってください。
(1) | [IJServerクラスタA] サーバーインスタンス数:3 |
(2) | [IJServerクラスタA] Message-driven Beanアプリケーション数:2 |
(3) | [JMS接続ファクトリQueueCF] 最大プールサイズ:32 |
(4) | [JMS接続ファクトリQueueCF] 最大プールサイズ:32 |
(5) | [JMS接続ファクトリQueueCF]参照するアプリケーションクライアントコンテナ数:1 |
上記の表より、imq.jms.max_threadsに設定する値は、以下の値となります。
( (1) + (2) + (3) + (4) + (5) ) × 2 = ( 5 + 8 + 128 + 80 + 4 ) × 2 = 450 以上
adminサービスの場合
( (1) + (2) ) × 2 以上
(1) メッセージブローカを参照するサーバーインスタンス数
(2) imqcmdコマンドの実行多重度
2~2147483647の整数値
jmsサービスの場合
1000
adminサービスの場合
10
imq.<serviceName>.min_threads
指定された接続サービスのスレッドプールに保持するスレッドの最小数を指定します。
max_threadsに指定する値以下の値を指定してください。max_threadsに指定した値より大きな値を指定した場合、min_threadsの値は、自動的にmax_threadsの値に置き換えられます。
0~2147483647の整数値
jmsサービスの場合
10
adminサービスの場合
4
imq.<serviceName>.tcp.port
指定された接続サービスのポート番号を指定します。
各サービスに設定するポート番号には、それぞれ別のポート番号を指定してください。
「0」を指定した場合は、メッセージブローカの起動時に利用可能なポートを使用します。
注意
ポート番号には、システム上のアプリケーションを含むすべてのサービスにおいて、それぞれ異なるポート番号を設定する必要があります。以下の値を設定しないでください。
システム内の他のサービス、システム上のアプリケーションが使用するポート番号
システムが動的に割り当てる領域のポート番号(エフェメラルポート)
ポート番号の設定については、「付録D ポート番号」を参照してください。
0~65535の整数値
0
imq.jmx.connector.jmxrmi.port
メッセージブローカのJMXコネクタのポート番号を指定します。
JMXコネクタのポートは、メッセージブローカが内部的に使用するポートです。
「0」を指定した場合は、メッセージブローカの起動時に利用可能なポートを使用します。
注意
ポート番号には、システム上のアプリケーションを含むすべてのサービスにおいて、それぞれ異なるポート番号を設定する必要があります。以下の値を設定しないでください。
システム内の他のサービス、システム上のアプリケーションが使用するポート番号
システムが動的に割り当てる領域のポート番号(エフェメラルポート)
ポート番号の設定については、「付録D ポート番号」を参照してください。
0~65535の整数値
0
imq.cluster.port
クラスタ接続サービスのポート番号を指定します。
クラスタ接続サービスのポートは、メッセージブローカが内部的に使用するポートです。
「0」を指定した場合は、メッセージブローカの起動時に利用可能なポートを使用します。
注意
ポート番号には、システム上のアプリケーションを含むすべてのサービスにおいて、それぞれ異なるポート番号を設定する必要があります。以下の値を設定しないでください。
システム内の他のサービス、システム上のアプリケーションが使用するポート番号
システムが動的に割り当てる領域のポート番号(エフェメラルポート)
ポート番号の設定については、「付録D ポート番号」を参照してください。
0~65535の整数値
0