スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

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

22.6.1 最大起動プロセス数のチューニング

次に示すオペランドで指定した最大起動プロセス数のチューニング方法について説明します。

参照する情報
システムの稼働に関する統計情報の次に示す情報を参照してください。

確認する目的
  • 処理中に実際にサービスを実行していたサーバプロセスの稼働数に,これらのオペランドで指定する最大起動プロセス数を合わせて,メモリ資源を効率的に使用します。
  • また,過少見積もりの最大起動プロセス数の指定値を上げて,サービスが受け入れられないことを防ぎます。

解析結果を判断する方法
●オペランドの値が「サービス実行中のサーバプロセス数」より大きい場合
オペランドの値を小さくする余裕があると考えられます。
各サーバの最大起動プロセス数を「サービス実行中のサーバプロセス数(#OF PROCESS ON SERVICE)」の最大値に近い値まで下げるようにします。ただし,次の点に注意してください。
  • ほかのサーバの状況によっては「サービス実行中のサーバプロセス数(#OF PROCESS ON SERVICE)」の最大値まで下げられない場合があります。例えば,あるバックエンドサーバに複数のフロントエンドサーバからのサービス要求が集中する可能性のある場合や,ユニット内の別のフロントエンドサーバに処理が偏っている場合などです。
  • pd_max_bes_process,pd_max_dic_processのチューニング時に,pd_max_usersの指定値よりも小さな値を指定した場合,pd_max_usersの指定値が仮定されます。
●最大起動プロセス数を超えたサービス要求が発生している場合
オペランドの値を大きくする必要があると考えられます。
各サーバの最大起動プロセス数を,受け入れられないサービス要求が発生しなくなるまで増加させるようにします。チューニング方法としては,サーバごとに次の点に注意してください。
  • フロントエンドサーバ及びシングルサーバの場合,サーバが受けたサービス要求が最大起動プロセス数を超えると,クライアントは次に示す最大リトライ回数までリトライをします。
    HiRDBクライアントがHiRDB Version 4.0 03-03以前:100回
    HiRDBクライアントがHiRDB Version 4.0 04-00以降:10回
    「最大起動プロセス数を超えたサービス要求数(#OF REQ PROCESS OVER MAX)」の値はリトライ回数も含んでいるため,これも考慮して修正してください。
  • バックエンドサーバ及びディクショナリサーバの場合,サービス要求はリトライされないため,「最大起動プロセス数を超えたサービス要求数(#OF REQ PROCESS OVER MAX)」の値で修正できます。
ただし,pd_max_usersを増加した場合,増加した値がpd_max_bes_process,pd_max_dic_processの指定値を上まわると,pd_max_bes_process,pd_max_dic_processの指定値もpd_max_usersの指定値まで増加するように仮定されるので注意してください。

対策方法
  • フロントエンドサーバ,シングルサーバの場合は,pd_max_usersの値を修正してください。
  • バックエンドサーバの場合は,pd_max_bes_processの値を修正してください。
  • ディクショナリサーバの場合は,pd_max_dic_processの値を修正してください。