3.4.1 文書空間を定義する前の準備

DocumentSpace構成定義ファイルを作成する前に,次に示す点について決定してください。

<この項の構成>
(1) サービスプロセス数の決定
(2) DBコネクションプールの管理方法の決定

(1) サービスプロセス数の決定

DocumentSpace構成定義ファイルには,サービスプロセス監視プロセスが作成するサービスプロセスの数を指定します。

サービスプロセスは,1プロセス当たり複数のFile Sharingクライアントを対象としてサービスを供給できます。ただし,サービスプロセスがダウンした場合,ダウンしたプロセスに接続していたすべてのユーザがサービスを受けられなくなります。したがって,メモリの使用効率と障害が発生した場合の影響を考慮してサービスプロセス数を決定してください。

(2) DBコネクションプールの管理方法の決定

File Sharingサーバは,データベースのメモリのオーバーヘッド削減および接続時のオーバーヘッド削減のためにDBコネクションプール機能を提供しています。

(a) DBコネクションプール機能の概要

File Sharingサーバを起動したとき,データベースに対する複数のコネクションをサービスプロセス単位にプールします。File Sharingクライアントからの接続要求時やトランザクションの開始要求時に,プールされているDBコネクションを動的に割り当てます。

(b) DBコネクションのプール管理方法について

DBコネクションのプール管理方法について説明します。

  1. File Sharingサーバを起動したときに,サービスプロセス単位に設定したコネクションプール数だけデータベースとコネクションを確立して,そのコネクションをプールします。
  2. File Sharingクライアントからの接続要求時やトランザクションの開始要求時に,DBコネクションプールからコネクションを取得します。プールされているコネクションがすべて使われている場合は,一時コネクションを動的に作成します。一時コネクション数が上限に達している場合は,コネクション待ち合わせキューにキューイングされます。
    • 一時コネクションの割り当て
      一時コネクションは,プール数とは別に定義した最大値まで,動的にデータベースに接続します。トランザクション終了時に,コネクションの空きを待っているユーザがいる場合に割り当てます。コネクションの空きを待っているユーザがいなければ,データベースとのコネクションを切断します。
    • DBコネクション割り当て待ち時間の監視
      プールされたDBコネクションがすべて使用されている場合に,一時的にDBコネクションの最大要求数を超えたトランザクションの要求が発生したときのFile Sharingサーバの動作として,空きコネクションが発生したときに割り当てるように設定しているとき,割り当て待ち時間に設定したタイマ監視機能を使用できます。このとき,設定した待ち時間を超えたタイムアウトを検知すると,エラーメッセージを出力してDBコネクション割り当て待ちリストから要求を削除するとともに,File Sharingクライアントにエラーの戻り値を返却します。
  3. File Sharingクライアントからの解放要求時やトランザクションの終了要求時に,コネクションをDBコネクションプールに戻します。コネクション待ち合わせキューにコネクション待ちのユーザがいれば,このコネクションを割り当てます。

これらの動作は,DocumentSpace構成定義ファイルの[Entry0001]セクションを構成する次のエントリで指定します。

DBコネクションプールの管理方法に従って,最適な設定をしてください。各エントリの指定方法については,「5.2.3(3) DocumentSpace構成定義ファイルの詳細」を参照してください。

(c) 文書空間の定義とDBコネクションの関係

File SharingサーバからFile Sharingで使用するデータベースサーバに接続する場合の最大コネクション数は,次の式で算出できます。

(DBConnectionPoolCountエントリの値+DBConnectionPoolDynamicエントリの値)×Processエントリの値

このため,File Sharingで使用するデータベースサーバ(HiRDB)のシステム共通定義で指定するpd_max_usersには,この式で算出した値よりも大きな値を指定してください。

なお,File Sharingサーバが複数存在する場合は,その合計値よりも大きな値を指定してください。