Java Service Manager 各インスタンスはプール・サーバー・インターフェースを持つことができます。プール・サーバーにより、ロード・バランシングが可能になります。JSMクライアントがプール・サーバーに接続すると、クライアントは指定されたいずれかのホストにラウンドロビン・プロセスで自動的にリダイレクトされます。
pool.hostsリストで指定された「ホスト:ポート」エントリーを使用できない場合、JSMクライアントは別のエントリーのプール・サーバーに戻ります。使用できないホスト・マシンを実行しているため、クライアントTCP/IPソケット接続の試行はすぐに失敗し、クライアントはプール・サーバーに戻ります。使用できないホスト・マシンを実行していない場合は、長いタイムアウト遅延が発生します。IBM i マシンの場合、このタイムアウト遅延は最大で 3 分になります。
以下の例では、JSMクライアント・プログラムがJSMサーバー・アドレスではなくプール・サーバー・アドレスに接続しています。
CHANGE FIELD(#JSMSRV) TO('''LOCALHOST:4562''')USE BUILTIN(JSM_OPEN) WITH_ARGS(#JSMSRV) TO_GET(#JSMSTS #JSMMSG)
以下の manager.properties エントリーで、プール・サーバーのアドレスとポートを制御します。プール・サーバー・インターフェースが不要な場合は、以下のように、manager.properties ファイル内の該当エントリーをコメント行にします。
# pool.tcp.port=4562 # pool.tcp.backlog=100 # pool.tcp.timeout=2000 # pool.tcp.interface=*all # pool.hosts=HOST1:4560,HOST2:4560,HOST3:4560 |
プール・サーバーは、tcp.client.address プロパティを使って、クライアント接続を制御します。