スケーラブルデータベースサーバ HiRDB Version 8 システム定義(Windows(R)用)

[目次][索引][前へ][次へ]

3.2.19 通信処理に関するオペランド

67) pd_service_port = スケジューラプロセスのポート番号
〜<符号なし整数>((5001〜65535))
次の場合に,スケジューラプロセスのポート番号を指定します。
  • 高速接続機能を使用する場合
    高速接続機能については,マニュアル「HiRDB Version 8 UAP開発ガイド」を参照してください。
  • HiRDBサーバ側にファイアウォールやNATが設置されている場合
    この場合のHiRDBの環境設定については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。
《注意事項》
  • 相互系切り替え構成などで一つのサーバマシンに複数のユニットがある場合,ユニット制御情報定義では必ずこのオペランドを指定してください。また,各ユニットで異なるポート番号を指定してください。同じポート番号を指定すると,系切り替え時発生時にどちらかのユニットで系切り替えが失敗します。
  • ユニット制御情報定義とシステム共通定義の両方でこのオペランドを指定した場合,ユニット制御情報定義の指定値が有効になります。
  • HiRDBのポート番号(pd_name_portオペランド又はpdunitオペランドの-pオプションに指定したポート番号)と同じポート番号を指定した場合,このオペランドの指定値が無効となり,高速接続機能を使用する場合及びHiRDBサーバ側にファイアウォールやNATが設定されている場合の運用ができなくなります。このとき,KFPS00860-Wメッセージが出力されます。
  • 高速接続機能を使用してpd_max_usersオペランドの値以上の接続要求を同時に発行した場合,接続要求をメッセージキューから取り出すフロントエンドサーバやシングルサーバの稼働数が不足します。そのため,接続要求をメッセージキューから取り出せなくなり,メッセージキュー監視機能によってユニットが停止することがあります。pd_max_usersオペランドの値以上の同時接続要求が発生しないようにしてください。メッセージキュー監視機能については,マニュアル「HiRDB Version 8 システム運用ガイド」を参照してください。
  • スケジューラプロセスのポート番号の指定方法,及びほかのポート番号との重複に関する注意事項については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。
《ほかのオペランドとの関連》
このオペランドは次に示すオペランドと関連があります。
  • pd_scd_port
  • pdunit -s

 

68) pd_change_clt_ipaddr = 0 | 1
HiRDBサーバからHiRDBクライアントへの通信時に使用するネットワークを指定します。通常,このオペランドを指定する必要はありません。
0:
HiRDBサーバからHiRDBクライアントへの通信時,クライアント環境定義のPDCLTRCVADDRオペランドに指定したIPアドレスがあるネットワークを使用します。PDCLTRCVADDRオペランドを省略した場合は標準ホストのIPアドレスが仮定されます。
1:
HiRDBサーバからHiRDBクライアントへの通信時,HiRDBクライアントからHiRDBサーバへの通信に使用したネットワークを使用します。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,1が仮定されます(pd_sysdef_default_optionオペランドにv6compatible又はv7compatibleを指定している場合は0が仮定されます)。

 

69) pd_registered_port = "ポート番号の予約範囲"〔,"ポート番号の予約範囲"〕…
〜〈文字列〉
HiRDB予約ポート機能を使用する場合に,HiRDBが通信処理で使用するポート番号の範囲を指定します。
HiRDB予約ポート機能は,サーバ間通信のときだけ有効になります。なお,ポート番号の使用量が少ない場合には,HiRDB予約ポート機能を使用する必要はありません。
《オペランドの指定方法》
6000〜8999,12500〜29999,30500〜44999の計35,000個の範囲でポート番号を使用する場合の例を次に示します。
set pd_registered_port = "6000:8999","12500:29999","30500:44999"
《利点》
HiRDBサーバ間の通信処理で使用するポート番号はOSが自動的に割り当てています。通信処理が大量に発生すると,ポート番号の不足によって処理が中断したり,又はほかのプログラムの通信処理に影響を与えたりします。
このオペランドでHiRDB専用のポート番号の範囲を指定すると,これらの現象を防げます。
《指定値の目安》
  • 指定できるポート番号の範囲は5001〜49151です。
  • HiRDBが使用するポート数については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。
  • %windir%\system32\drivers\etc\services(DNS環境の場合は定義した場所)には,このオペランドで指定したポート番号は登録しないでください。pd_registered_port_checkオペランドにY,C,又はWを指定すると,%windir%\system32\drivers\etc\servicesとの重複チェックをします。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。
《指定値のチューニング方法》
次に示す計算式で求めた値が,必要となるポート番号の総数の目安です。
a+b+100
a:HiRDB予約ポートの使用数(#OF REGISTERED PORTS)
b:HiRDB予約ポートオーバ時のOS自動割り当てポートの使用数(#OF ASSIGNED PORTS)
これらの情報は,統計解析ユティリティのシステムの稼働に関する統計情報で取得できます。
《オペランドの規則》
  • 予約範囲は最大10個指定できます。
  • 予約範囲を二つ以上指定した場合,範囲に含まれるポート番号が重複しないようにしてください。
  • 終了ポート番号は開始ポート番号以上の値でなければいけません。
《注意事項》
  • 相互系切り替え構成などで一つのサーバマシンに複数のユニットがある場合は,ユニット制御情報定義では必ずこのオペランドを指定してください。また,各ユニットで異なるポート番号を指定してください。同じポート番号を指定すると,系切り替え時発生時にどちらかのユニットで系切り替えが失敗します。
  • HiRDB予約ポート機能を使用できないポート番号では,このオペランドで指定したポート番号は使用されません。HiRDB予約ポート機能の対象範囲については,pd_registered_port_levelオペランドを参照してください。
  • HiRDB予約ポート機能を使用する場合のポート番号の指定方法,及びほかのポート番号との重複に関する注意事項については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。
  • ユニット制御情報定義とシステム共通定義の両方でこのオペランドを指定した場合,ユニット制御情報定義の指定値が有効になります。

 

70) pd_registered_port_check = Y | N | C | W
pd_registered_portオペランドで範囲指定したポート番号と%windir%\system32\drivers\etc\services(DNS環境の場合は定義した場所)に登録されたポート番号との重複チェックをするかどうかを指定します。
Y
重複チェックをします。重複している場合,KFPS00348-Eメッセージを出力してHiRDBの開始処理を中断します。
N
重複チェックをしません。
C
重複チェックをします。重複している場合,重複しているポート番号はHiRDB予約ポート機能の対象外になります。
W
重複チェックをします。重複している場合,KFPS00354-Wメッセージを出力します。重複しているポート番号はHiRDB予約ポート機能の対象外になります。
《前提条件》
pd_registered_portオペランドを指定している必要があります。
《指定値の目安》
  • ポート番号の重複があると,不正電文の受信や送信電文の未達などHiRDBの通信処理に影響を及ぼすことがあります。
  • Y,C,又はWを指定すると,DNS環境のときにプロセスサーバプロセスの起動が遅くなることがあります。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,Yが仮定されます。

 

71) pd_registered_port_level = 0 | 1
このオペランドでは,HiRDB予約ポート機能の対象範囲を指定します。
《前提条件》
pd_registered_portオペランドを指定している必要があります。
《指定値の目安》
0を指定した場合と1を指定した場合の対象範囲を次に示します。
HiRDBが使用するポート番号 pd_registered_port_levelの値
0 1
HiRDBサーバが使用するポート番号 サーバ間通信用送信ポート番号
サーバ間通信用受信ポート番号
pd_name_portオペランドに指定したポート番号 × ×
pdunitオペランドの-pオプションに指定したポート番号 × ×
pd_service_portオペランドに指定したポート番号 × ×
pd_scd_portオペランドに指定したポート番号 × ×
pdunitオペランドの-sオプションに指定したポート番号 × ×
pd_trn_portオペランドに指定したポート番号 × ×
pdunitオペランドの-tオプションに指定したポート番号 × ×
pd_mlg_portオペランドに指定したポート番号 × ×
pdunitオペランドの-mオプションに指定したポート番号 × ×
pd_alv_portオペランドに指定したポート番号 × ×
pdunitオペランドの-aオプションに指定したポート番号 × ×
コマンド用送信ポート番号 × ×
コマンド用受信ポート番号 × ×
対クライアント用送信ポート番号 ×
対クライアント用受信ポート番号
連絡用ポートのサービスポート番号 × ×
排他制御で使用するポート番号 × ×
HiRDBクライアントが使用するポート番号 送信ポート番号 × ×
受信ポート番号 × ×
(凡例)
○:HiRDB予約ポート機能の対象範囲となります。pd_registered_portオペランドで指定したポート番号が使用されます。
×:HiRDB予約ポート機能の対象範囲となりません。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,0が仮定されます。

 

72) pd_ipc_send_retrycount = プロセス間通信の送信リトライ処理の連続繰り返し回数
〜<符号なし整数>((1〜32767))(単位:回数)
プロセス間通信の送信リトライ処理の連続繰り返し回数を指定します。
このオペランドはpd_ipc_send_retrysleeptimeオペランドと関連しています。
(例)
  • pd_ipc_send_retrycount = 500
  • pd_ipc_send_retrysleeptime = 2
上記のようにオペランドを指定すると,送信リトライ処理1回の繰り返し単位が500回連続実行で2秒スリープとなります。
《指定値の目安》
  • 通常,このオペランドを指定する必要はありません。
  • このオペランドの指定値を大きくするとCPU占有率が高くなります。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,200が仮定されます。

 

73) pd_ipc_send_retrysleeptime = プロセス間通信の送信リトライ処理のスリープ時間
〜<符号なし整数>((0〜60))(単位:秒)
プロセス間通信の送信リトライ処理のスリープ時間を指定します。
このオペランドはpd_ipc_send_retrycountオペランドと関連しています。
(例)
  • pd_ipc_send_retrycount = 500
  • pd_ipc_send_retrysleeptime = 2
上記のようにオペランドを指定すると,送信リトライ処理1回の繰り返し単位が500回連続実行で2秒スリープとなります。
《指定値の目安》
  • 通常,このオペランドを指定する必要はありません。
  • このオペランドの指定値を大きくすると送信完了時間が長くなります。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,0が仮定されます。

 

74) pd_ipc_send_count = サーバ間の送信処理のリトライ回数
〜<符号なし整数>((1〜32767))
サーバ間の送信処理が終了するまでの送信処理のリトライ回数を指定します。なお,1回で最大5秒間のリトライを続けます。省略値では5秒×60回となり300秒間リトライを続けます。
《指定値の目安》
通常,このオペランドを指定する必要はありません。送信タイムアウトが頻発する場合に,このオペランドの指定値を大きくしてください。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,60が仮定されます。

 

75) pd_ipc_recv_count = サーバ間の受信処理のリトライ回数
〜<符号なし整数>((1〜32767))
サーバ間の受信処理が終了するまでの受信処理のリトライ回数を指定します。なお,1回で最大5秒間のリトライを続けます。省略値では5秒×120回となり10分間リトライを続けます。
《指定値の目安》
通常,このオペランドを指定する必要はありません。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,120が仮定されます。

 

76) pd_ipc_inet_bufsize = サーバ間通信で使用する送受信バッファ長
〜<符号なし整数>((0〜262144))(単位:バイト)
サーバ間通信(TCP INETドメイン)で使用する送受信バッファの最大値を4096の倍数で指定します。
《指定値の目安》
通常は0を指定してOSの設定値を適用してください。
《注意事項》
  • 0を指定した場合はOSの設定値を使用します。
  • TCPのバッファサイズの上限値は各OSで異なるので注意してください。
  • システム定義pd_utl_buff_sizeを使用するユティリティの通信処理では,指定したバッファ長を無効にし,pd_utl_buff_size指定値を元に,最適な値を設定します。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。
システム共通定義の同じオペランドも省略すると,16384が仮定されます。
《ほかのオペランドとの関連》
このオペランドは次に示すオペランドと関連があります。
  • pd_utl_buff_size

 

77) pd_tcp_inet_bufsize = HiRDBクライアントとの通信で使用する送受信バッファ長
〜<符号なし整数>((0〜262144))(単位:バイト)
HiRDBクライアントとの通信(TCP INETドメイン)で使用する送受信バッファの最大値を,4096の倍数で指定します。
《指定値の目安》
通常,このオペランドを指定する必要はありません。次に示す現象が発生した場合に,このオペランドを指定します。
  • HiRDBサーバとHiRDBクライアント間で送受信するデータの再送がある場合,このオペランドを指定すると再送を抑止できます。
  • 受信側の処理で,データ到着速度が読み込み処理速度よりも遅い場合,このオペランドを指定すると,送信データ量が増えて受信時の到着待ちによる遅延を防げます。
このオペランドには,通信に使用するバッファサイズと同じ値を指定してください。
《オペランドの省略値》
このオペランドを省略すると,システム共通定義の同じオペランドの指定値が有効となります。システム共通定義の同じオペランドも省略すると,0が仮定されます。
《注意事項》
  • 0を指定した場合はOSの設定値を使用します。
  • TCPのバッファサイズの上限値は各OSで異なるので注意してください。