Sun Java System Message Queue 3 2005Q4 管理ガイド |
第 14 章
ブローカのプロパティーのリファレンスこの章では、メッセージブローカの設定プロパティーに関する参照情報を提供します。この章は、次の節から構成されています。
接続のプロパティー表 14-1 に、接続サービスに関するブローカプロパティーを示します。
表 14-1 接続に関するブローカプロパティー
プロパティー
データ型
デフォルト値
説明
imq.service.activelist
文字列
jms,admin
ブローカの起動時にアクティブにする接続サービスのコンマ区切りのリスト
imq.hostname
文字列
使用可能なすべての IP アドレス
すべての接続サービスのデフォルトのホスト名または IP アドレス
imq.portmapper.hostname
文字列
なし
ポートマッパーのホスト名または IP アドレス
指定すると、imq.hostname がオーバーライドされます
imq.portmapper.port1
整数
7676
ポートマッパーのポート番号
注: 同じホスト上で複数のブローカインスタンスが実行されている場合は、それぞれに一意のポートマッパーポートを割り当てる必要があります。
imq.serviceName.protocolType.hostname
文字列
なし
接続サービスのホスト名または IP アドレス2
指定すると、指定した接続サービスについて imq.hostname がオーバーライドされます
imq.serviceName.protocolType.port
整数
0
接続サービスのポート番号2
値 0 は、ポート番号がポートマッパーによって動的に割り当てられることを指定します。
imq.portmapper.backlog
整数
50
オペレーティングシステムのバックログに保留するポートマッパー要求の最大数
imq.serviceName.threadpool_model
文字列
dedicated
スレッドプール管理のスレッドモデル
dedicated 接続ごとに、
受信メッセージ用と
送信メッセージ用の
2 つの専用スレッドを
使用しますshared3 メッセージの送受信時に
共有スレッドによって
接続を処理します専用モデルでは、サポートできる接続数が制限されますが、プロバイダのパフォーマンスが向上します。共有モデルでは、サポートできる接続数が多くなりますが、スレッド管理のためのオーバーヘッドが加わるため、パフォーマンスが低下します。
imq.serviceName.min_threads
整数
jms: 10
ssljms: 10
httpjms: 10
httpsjms: 10
admin: 4
ssladmin: 4接続サービスのスレッドプールに保持するスレッドの最小数
使用可能なスレッドの数がこのしきい値を超えると、スレッドは、最小数に達するまで、解放と同時にとシャットダウンされます。
デフォルト値は、接続サービスによって異なります。
imq.serviceName.max_threads
整数
jms: 1000
ssljms: 500
httpjms: 500
httpsjms: 500
admin: 10
ssladmin: 10指定された接続サービスのスレッドプールに保持するスレッドの最大数。使用可能な新しいスレッドはこれ以上追加されません。この数は、0 より大きく、min_threads の値よりも大きくする必要があります。
デフォルト値は、接続サービスによって異なります。
imq.shared.connectionMonitor_limit
整数
Solaris: 512
Linux: 512
Windows: 641 つのディストリビュータスレッドが監視する接続の最大数4
システムによって、すべての接続の監視に十分な数のディストリビュータスレッドが割り当てられます。このプロパティーの値が小さいほど、アクティブな接続へのスレッドの割り当てが高速になります。値 -1 は、スレッドあたりの接続数が無制限であることを示します。
デフォルト値は、オペレーティングシステムのプラットフォームによって異なります。
imq.ping.interval
整数
120
クライアントとブローカ間のテスト接続の間隔 (秒単位)
値 0 または -1 を指定すると、接続の定期的なテストが無効になります。
1imqcmd update bkr コマンドで使用できます
2jms、ssljms、admin、および ssladmin サービスのみ。httpjms および httpsjms サービスの設定については、付録 C 「HTTP/HTTPS のサポート」を参照してください
3jms および admin サービスのみ
4共有スレッドモデルのみ
ルーティングのプロパティー表 14-2 に、ルーティングサービスに関するブローカプロパティーを示します。送信先の自動作成を設定するプロパティーについては、表 14-3 を参照してください。
表 14-2 ルーティングに関するブローカプロパティー
プロパティー
データ型
デフォルト値
説明
imq.system.max_count1
整数
-1
ブローカが保持するメッセージの最大数
値 -1 は、メッセージ数が無制限であることを示します。
imq.system.max_size1
文字列
-1
ブローカが保持するメッセージの最大合計サイズ
次の接尾辞を使用して、バイト、K バイト、または M バイトの単位で値を表すことができます。
b バイト
k K バイト (1024 バイト)
m M バイト (1024 x 1024
= 1,048,576 バイト)接尾辞を付けない値は、バイト単位になります。値 -1 は、メッセージ容量が無制限であることを示します。
例:
1600 1600 バイト
1600b 1600 バイト
16k 16K バイト (= 16,384 バイト)
16m 16M バイト (= 16,777,216 バイト)
-1 無制限imq.message.max_size1
文字列
70m
単一メッセージの本文の最大サイズ
構文は imq.system.max_size と同じです (前述の説明を参照)。
imq.message.expiration.interval
整数
60
期限切れのメッセージを再利用する間隔 (秒単位)
imq.resourceState.threshold
整数
green: 0
yellow: 80
orange: 90
red: 98
メモリーリソースの状態をトリガーするしきい値となる使用率 (resourceState は green、yellow、orange、または red)
imq.resourceState.count
整数
green: 5000
yellow: 500
orange: 50
red: 0
メモリーリソースの状態のしきい値に達したかどうかを確認するまでの、バッチで許容する受信メッセージの最大数 (resourceState は green、yellow、orange、または red)
この制限は、システムメモリーがさらに不十分になると、メッセージプロデューサの処理速度を低下させます。
imq.destination.DMQ.truncateBody1
ブール
false
デッドメッセージキューに保存する前にメッセージ本文を削除するかどうか
true の場合は、メッセージヘッダーとプロパティーデータのみが保存されます。
imq.transaction.autorollback
ブール
false
ブローカの起動時に PREPARED 状態のままになっている分散トランザクションを自動的にロールバックするかどうか
false の場合は、コマンドユーティリティー (imqcmd) を使用して、トランザクションを手動でコミットまたはロールバックする必要があります。
1imqcmd update bkr コマンドで使用できます
表 14-3 自動作成された送信先に関するブローカプロパティー
プロパティー
データ型
デフォルト値
説明
ブール
true
キュー送信先の自動作成を許可するかどうか
imq.autocreate.topic3
ブール
true
トピック送信先の自動作成を許可するかどうか
imq.autocreate.destination.maxNumMsgs
整数
100000
消費されていないメッセージの最大数
値 -1 は、メッセージ数が無制限であることを示します。
imq.autocreate.destination.maxBytesPerMsg
文字列
10k
単一メッセージの最大サイズ (バイト単位)
次の接尾辞を使用して、バイト、K バイト、または M バイトの単位で値を表すことができます。
b バイト
k K バイト (1024 バイト)
m M バイト (1024 x 1024
= 1,048,576 バイト)接尾辞を付けない値は、バイト単位になります。値 -1 は、メッセージサイズが無制限であることを示します。
例:
1600 1600 バイト
1600b 1600 バイト
16k 16K バイト
(= 16,384 バイト)
16m 16M バイト
(= 16,777,216 バイト)
-1 無制限imq.autocreate.destination.maxTotalMsgBytes
文字列
10m
消費されていないメッセージの最大合計メモリー (バイト単位)
構文は imq.autocreate.destination.
maxBytesPerMsg と同じです (前述の説明を参照)。imq.autocreate.destination.limitBehavior
文字列
REJECT_NEWEST
メモリー制限のしきい値に達したときのブローカの動作
FLOW_CONTROL
プロデューサの処理速度を
下げますREMOVE_OLDEST
もっとも古いメッセージを
破棄しますREMOVE_LOW_PRIORITY
メッセージの有効期間に従って
もっとも優先度の低いメッセー
ジを破棄します。
プロデューシングクライアント
には通知しませんREJECT_NEWEST
もっとも新しいメッセージを
拒否します。持続メッセージの
場合のみ、プロデューシング
クライアントに例外を通知
します値が REMOVE_OLDEST または REMOVE_LOW_PRIORITY で、imq.autocreate.destination.
useDMQ プロパティーが true の場合、超過したメッセージはデッドメッセージキューに移動されます。imq.autocreate.destination.maxNumProducers
整数
100
送信先のメッセージプロデューサの最大数
この制限に達すると、新しいプロデューサを作成できません。値 -1 は、プロデューサ数が無制限であることを示します。
imq.autocreate.queue.maxNumActiveConsumers2
整数
1
キュー送信先からのロードバランスされた配信でアクティブにするメッセージコンシューマの最大数
値 -1 は、コンシューマ数が無制限であることを示します。
imq.autocreate.queue.maxNumBackupConsumers2
整数
0
キュー送信先からのロードバランスされた配信でバックアップにするメッセージコンシューマの最大数
値 -1 は、コンシューマ数が無制限であることを示します。
imq.autocreate.queue.consumerFlowLimit2
整数
1000
キューコンシューマに単一のバッチで配信するメッセージの最大数
ロードバランスされたキュー配信では、ロードバランスが開始されるまでの、アクティブコンシューマにルーティングされるキュー内のメッセージの初期数になります。送信先コンシューマは、接続で低い値を指定することで、この制限をオーバーライドできます。
値 -1 は、コンシューマ数が無制限であることを示します。
imq.autocreate.topic.consumerFlowLimit3
整数
1000
トピックコンシューマに単一のバッチで配信するメッセージの最大数
値 -1 は、コンシューマ数が無制限であることを示します。
imq.autocreate.destination.isLocalOnly
ブール
false
ローカル配信のみかどうか
このプロパティーは、ブローカクラスタ内の送信先のみに適用されます。送信先の作成後は変更できません。true の場合、送信先はほかのブローカに複製されず、ローカルコンシューマ (送信先が作成されたブローカに接続しているコンシューマ) だけにメッセージを配信するように制限されます。
imq.autocreate.queue.localDeliveryPreferred2
ブール
false
ローカル配信優先かどうか
このプロパティーは、ブローカクラスタ内のロードバランスされたキュー配信のみに適用されます。true の場合、メッセージは、ローカルブローカにコンシューマがない場合にのみリモートコンシューマに配信されます。送信先をローカルのみの配信に制限しないでください。つまり、imq.autocreate.destination.
isLocalOnly を false にする必要があります。imq.autocreate.destination.useDMQ
ブール
true
デッドメッセージをデッドメッセージキューに送信するかどうか
false の場合、デッドメッセージは単に破棄されます。
1imqcmd update bkr コマンドで使用できます
2キュー送信先のみ
3トピック送信先のみ
持続のプロパティーMessage Queue は、持続データストレージにファイルベースモデルと JDBC ベースモデルの両方をサポートしています。ブローカプロパティー imq.persist.store (表 14-4) で、使用するモデルを指定します。以降の節では、2 つのモデルのブローカ設定プロパティーについて説明します。
表 14-4 持続に関するグローバルなブローカプロパティー
プロパティー
データ型
デフォルト値
説明
imq.persist.store
文字列
file
持続データストレージのモデル
file ファイルベースの持続
jdbc JDBC ベースの持続
ファイルベースの持続
表 14-5 に、ファイルベースの持続に関するブローカプロパティーを示します。
JDBC ベースの持続
表 14-6 に、JDBC ベースの持続に関するブローカプロパティーを示します。示す例は、DataMirror Mobile Solutions, Inc の PointBase® ファミリーのデータベース製品の例です。
セキュリティーのプロパティー表 14-7 に、セキュリティーサービスに関するブローカプロパティーを示します。
表 14-7 セキュリティーに関するブローカプロパティー
プロパティー
データ型
デフォルト値
説明
imq.accesscontrol.enabled
ブール
true
アクセス制御を使用するかどうか
true の場合、アクセス制御プロパティーファイルが確認され、認証されたユーザーについて、接続サービスの使用または特定の送信先に対する特定の操作の実行が承認されているかどうかが検証されます。
imq.serviceName.accesscontrol.enabled
ブール
なし
接続サービスのアクセス制御を使用するかどうか
指定すると、指定した接続サービスの imq.accesscontrol.enabled がオーバーライドされます。
true の場合、アクセス制御プロパティーファイルが確認され、認証されたユーザーについて、指定した接続サービスの使用または特定の送信先に対する特定の操作の実行が承認されているかどうかが検証されます。
imq.accesscontrol.file.filename
文字列
accesscontrol.properties
アクセス制御プロパティーファイルの名前
ファイル名は、アクセス制御ディレクトリ (付録 A を参照) への相対パスで指定します。
imq.serviceName.accesscontrol.file.filename
文字列
なし
接続サービスのアクセス制御プロパティーファイルの名前
指定すると、指定した接続サービスの imq.accesscontrol.file.filename がオーバーライドされます。
ファイル名は、アクセス制御ディレクトリ (付録 A を参照) への相対パスで指定します。
imq.authentication.type
文字列
digest
パスワードの符号化方法
basic Base-64
digest MD5imq.serviceName.authentication.type
文字列
なし
接続サービスのパスワードの符号化方法
basic Base-64
digest MD5指定すると、指定した接続サービスの imq.authentication.type がオーバーライドされます。
imq.authentication.basic.user_repository
文字列
file
Base-64 認証のユーザーリポジトリのタイプ
file ファイルベース
ldap LDAPimq.authentication.client.response.timeout
整数
180
認証要求に対するクライアントの応答を待機する間隔 (秒単位)
imq.passfile.enabled
ブール
false
パスワードをパスワードファイルから取得するかどうか
imq.passfile.dirpath
文字列
付録 A を参照
パスワードファイルを含むディレクトリへのパス
imq.passfile.name
文字列
passfile
パスワードファイルの名前
imq.imqcmd.password
文字列
なし
管理ユーザーのパスワード
コマンドユーティリティー (imqcmd) では、コマンドの実行前に、このパスワードを使用してユーザーが認証されます。
imq.user_repository.ldap.server
文字列
なし
LDAP サーバーのホスト名とポート番号
値は次の形式になります。
hostName:port
hostName は、LDAP サーバーを実行するホストの完全修飾 DNS 名で、port は、サーバーが使用するポート番号です。
フェイルオーバーサーバーのリストを指定するには、次の構文を使用します。
host1:port1
ldap://host2:port2
ldap://host3:port3
...リスト内のエントリはスペースで区切ります。各フェールオーバーサーバーのアドレスの先頭には ldap:// を付けます。SSL を使用し、プロパティー imq.user_repository.ldap.ssl.enabled を true に設定している場合でも、この形式を使用します。このアドレスでは ldaps を指定する必要はありません。
imq.user_repository.ldap.principal
文字列
なし
LDAP ユーザーリポジトリにバインドするための識別名
LDAP サーバーで匿名検索が許可されている場合は必要ありません。
imq.user_repository.ldap.password
文字列
なし
LDAP ユーザーリポジトリにバインドするためのパスワード
LDAP サーバーで匿名検索が許可されている場合は必要ありません。
このプロパティーは、パスワードファイルでのみ指定するようにしてください。
imq.user_repository.ldap.base
文字列
なし
LDAP ユーザーエントリのディレクトリベース
imq.user_repository.ldap.uidattr
文字列
なし
LDAP ユーザー名のプロバイダ固有の属性識別子
imq.user_repository.ldap.usrfilter
文字列
なし
(任意指定) LDAP ユーザー検索の JNDI フィルタ
imq.user_repository.ldap.grpsearch
ブール
false
LDAP グループ検索を有効にするかどうか
注: Message Queue は、入れ子にされたグループをサポートしていません。
imq.user_repository.ldap.grpbase
文字列
なし
LDAP グループエントリのディレクトリベース
imq.user_repository.ldap.gidattr
文字列
なし
LDAP グループ名のプロバイダ固有の属性識別子
imq.user_repository.ldap.memattr
文字列
なし
LDAP グループ内のユーザー名のプロバイダ固有の属性識別子
imq.user_repository.ldap.grpfilter
文字列
なし
(任意指定) LDAP グループ検索の JNDI フィルタ
imq.user_repository.ldap.timeout
整数
280
LDAP 検索の制限時間 (秒単位)
imq.user_repository.ldap.ssl.enabled
ブール
false
LDAP サーバーとの通信に SSL を使用するかどうか
imq.keystore.file.dirpath
文字列
付録 A を参照
キーストアファイルを含むディレクトリへのパス
imq.keystore.file.name
文字列
keystore
キーストアファイルの名前
imq.keystore.password
文字列
なし
キーストアファイルのパスワード
このプロパティーは、パスワードファイルでのみ指定するようにしてください。
imq.audit.enabled
ブール
false
ブローカログファイルへの監査ロギングを開始するかどうか
このオプションは、Message Queue Enterprise Edition のみに適用されます。
監視のプロパティー表 14-8 に、監視サービスに関するブローカプロパティーを示します。
表 14-8 監視に関するブローカプロパティー
プロパティー
データ型
デフォルト値
説明
imq.log.level1
文字列
INFO
ロギングレベル
出力チャネルに書き込むことのできるロギング情報のカテゴリを指定します。使用可能な値には、レベルの高い順に次のものがあります。
ERROR
WARNING
INFO各レベルには、その上位のレベルが含まれます。たとえば、WARNING には ERROR が含まれます。
imq.destination.logDeadMsgs1
ブール
false
デッドメッセージに関する情報をログに書き込むかどうか
true の場合、次のイベントがログに書き込まれます。
imq.log.console.stream
文字列
ERR
コンソール出力の送信先
OUT stdout
ERR stderrimq.log.console.output
文字列
ERROR|WARNING
コンソールに書き込むロギング情報のカテゴリ
NONE
ERROR
WARNING
INFO
ALLERROR、WARNING、および INFO カテゴリには、それぞれの上位のカテゴリは含まれません。したがって、必要に応じて各カテゴリを明示的に指定する必要があります。カテゴリの組み合わせは、縦線 (|) で区切って指定できます。
imq.log.file.dirpath
文字列
付録 A を参照
ログファイルを含むディレクトリへのパス
imq.log.file.filename
文字列
log.txt
ログファイルの名前
imq.log.file.output
文字列
ALL
ログファイルに書き込むロギング情報のカテゴリ
NONE
ERROR
WARNING
INFO
ALLERROR、WARNING、および INFO カテゴリには、それぞれの上位のカテゴリは含まれません。したがって、必要に応じて各カテゴリを明示的に指定する必要があります。カテゴリの組み合わせは、縦線 (|) で区切って指定できます。
imq.log.file.rolloverbytes1
整数
-1
出力を新しいログファイルにロールオーバーするファイル長 (バイト単位)
値 -1 は、バイト数が無制限である、つまりファイル長に基づくロールオーバーは行わないことを示します。
imq.log.file.rolloversecs1
整数
604800 (1 週間)
出力を新しいログファイルにロールオーバーするファイルの有効期間 (秒単位)
値 -1 は、秒数が無制限である、つまりファイルの有効期間に基づくロールオーバーは行わないことを示します。
imq.log.syslog.output2
文字列
ERROR
syslogd(1M) に書き込むロギング情報のカテゴリ
NONE
ERROR
WARNING
INFO
ALLERROR、WARNING、および INFO カテゴリには、それぞれの上位のカテゴリは含まれません。したがって、必要に応じて各カテゴリを明示的に指定する必要があります。カテゴリの組み合わせは、縦線 (|) で区切って指定できます。
imq.log.syslog.facility2
文字列
LOG_DAEMON
メッセージのロギングのための syslog 機能
使用可能な値は、syslog(3C) のマニュアルページに示される値を反映しています。Message Queue で使用するために適切な値は次のとおりです。
LOG_USER
LOG_DAEMON
LOG_LOCAL0
LOG_LOCAL1
LOG_LOCAL2
LOG_LOCAL3
LOG_LOCAL4
LOG_LOCAL5
LOG_LOCAL6
LOG_LOCAL7imq.log.syslog.identity2
文字列
imqbrokerd_${imq.instanceName}
syslog にログとして書き込まれるすべてのメッセージの先頭に付ける識別文字列
imq.log.syslog.logpid2
ブール
true
メッセージとともにブローカのプロセス ID をログに書き込むかどうか
imq.log.syslog.logconsole2
ブール
false
メッセージを syslog に送信できなかった場合にシステムコンソールに書き込むかどうか
imq.log.timezone
文字列
該当地域のタイムゾーン
ログのタイムスタンプのタイムゾーン。
使用可能な値は、java.util.TimeZone.getTimeZone で使用される値と同じです。次に例を示します。
GMT
GMT-8:00
America/LosAngeles
Europe/Rome
Asia/Tokyoimq.metrics.enabled
ブール
true
ロガーへのメトリックス情報の書き込みを有効にするかどうか
imq.metrics.topic.enabled で制御するメトリックスメッセージの生成には影響しません。
imq.metrics.interval
整数
-1
ロガーにメトリックス情報を書き込む間隔 (秒単位)
imq.metrics.topic.interval で制御するメトリックスメッセージの生成間隔には影響しません。
値 -1 は、無期限の間隔、つまりロガーにメトリックス情報を書き込まないことを示します。
imq.metrics.topic.enabled
ブール
true
メトリックストピック送信先へのメトリックスメッセージの生成を有効にするかどうか
false の場合、メトリックストピック送信先へサブスクライブしようとすると、クライアント側の例外がスローされます。
imq.metrics.topic.interval
整数
60
メトリックストピック送信先へのメトリックスメッセージを生成する間隔 (秒単位)
imq.metrics.topic.persist
ブール
false
メトリックストピック送信先に送信されるメトリックスメッセージが持続的かどうか
imq.metrics.topic.timetolive
整数
300
メトリックストピック送信先に送信されるメトリックスメッセージの有効期間 (秒単位)
1imqcmd update bkr コマンドで使用できます
2Solaris プラットフォームのみ
クラスタ設定プロパティー表 14-9 に、ブローカクラスタに関する設定プロパティーを示します。
表 14-9 クラスタ設定に関するブローカプロパティー
プロパティー
データ型
デフォルト値
説明
imq.cluster.brokerlist1
文字列
なし
ブローカのアドレスのリスト
リストは、コンマ区切りの複数のアドレスで構成します。各アドレスでは、クラスタ内のブローカのホスト名とポートマッパーのポート番号を、hostName:portNumber の形式で指定します。次に例を示します。
host1:3000,host2:8000,ctrlhost
imq.cluster.hostname2
文字列
なし
cluster 接続サービスのホスト名または IP アドレス
指定すると、cluster 接続サービスについて imq.hostname (表 14-1 を参照) がオーバーライドされます
imq.cluster.port2
整数
0
cluster 接続サービスのポート番号
値 0 は、ポート番号がポートマッパーによって動的に割り当てられることを示します。
imq.cluster.transport1
文字列
tcp
cluster 接続サービスのネットワークトランスポートプロトコル
ブローカ間の安全で暗号化されたメッセージ配信を実現するためには、このプロパティーを ssl に設定します。
文字列
なし
cluster 設定ファイルがある場合のファイルの URL
例:
http://webserver/imq/cluster.properties
(Web サーバー上のファイルの場合)
file:/net/mfsserver/imq/cluster.properties
(共有ドライブ上のファイルの場合)
imq.cluster.masterbroker1
文字列
なし
クラスタのマスターブローカがある場合の、そのホスト名とポート番号
値は hostName:portNumber の形式になります。hostName はマスターブローカのホスト名で、portNumber はマスターブローカのポートマッパーのポート番号です。次に例を示します。
ctrlhost:7676
1クラスタ内のすべてのブローカで同じ値にする必要があります
2クラスタ内のブローカごとに個別に指定できます。
3imqcmd update bkr コマンドで使用できます
ブローカプロパティーのアルファベット順の一覧表 14-10 に、ブローカ設定プロパティーのアルファベット順の一覧と、この章内の関連する表への相互参照を示します。