(UNIX)
3. NLS_LANG 母国語指定
3.9 DABroker コネクションマルチ定義
3.9.3 最大仮想コネクション数などを設定するときのガイド ライン
最大仮想コネクション数(MCONMAX),通信処理プロセス数(MCONPROC),プール コネクション数(MCONPOOL),予約プールコネクション数(MRSVPOOL)は,使用 環境に合わせた適切な値を設定する必要があります。ここでは,設定するときのガイド ラインを説明します。
(1) DABroker と Database Connection Server の接続の仕組み
DABrokerとDatabase Connection Serverの接続時,Database Connection Serverで は,TCP/IPコネクションを確立します。1ユーザからのアクセス要求に対して一つの TCP/IPコネクションを確立します(図3-4参照)。
図3-4 DABrokerとDatabase Connection Serverの接続イメージ(1)
この場合,1TCP/IPコネクションを1ユーザからのアクセス要求だけで使用でき,レス ポンス性能が良くなりますが,同時アクセスユーザ数が増えると,TCP/IPコネクション の確立数も多くなりDatabase Connection Serverのメインフレーム側及びDABroker側 でのリソース消費量が多くなってしまいます。
そのため,DABrokerでは,一つのTCP/IPコネクションを複数ユーザからのアクセス
3. DABrokerの環境設定と運用(UNIX)
ネクションを確立できるようにしています。一つのTCP/IPコネクションに対して確立 するDABroker用のコネクションを仮想コネクションと呼びます。一つのTCP/IPコネ クションの中で複数の仮想コネクションを確立するときには,DABrokerでは,通信処 理プロセスを起動します。通信処理プロセスは,TCP/IPコネクションごとに起動しま す。
1TCP/IPコネクションを複数ユーザからのアクセス要求で共有する場合,DABrokerで は,1通信処理プロセス当たりで(=一つのTCP/IPコネクションに対して)同時に確立 できる仮想コネクション数(=最大仮想コネクション数),及びDABroker内で同時に起 動できる通信処理プロセス数(=通信処理プロセス数)を決めて運用します。
図3-5に,1TCP/IPコネクションを2ユーザからのアクセス要求で共有する場合(1通 信処理プロセス当たりで二つの仮想コネクションを確立する場合)の,DABrokerと Database Connection Serverの接続イメージを示します。ここでは,アプリケーション 及びDBPARTNERから同時に四つのアクセス要求があり,二つのTCP/IPコネクショ ンで対応しています。DABrokerでは,二つの通信処理プロセスを起動し,それぞれの 通信処理プロセスで二つの仮想コネクションを確立しています。このとき,四つのTCP/
IPコネクションを使用した場合に比べ,メインフレーム側及びDABroker側の両方でリ ソース消費量を少なくできます。
DABrokerは,次のタイミングでDatabase Connection Serverに対してTCP/IPコネク ションを確立します。
•「予約プールコネクション数(MRSVPOOL)」が設定されている(>0)場合
DABrokerコネクションマルチ機能起動時に確立します。
•「予約プールコネクション数(MRSVPOOL)」が設定されていない(=0)場合
最初のユーザアクセス要求時に確立します。
• 起動中の通信処理プロセスで実行できるユーザ数(「最大仮想コネクション数 (MCONMAX)」)を超えたユーザアクセスが要求された場合
通信処理プロセスを新しく起動して確立します。
(ただし,「通信処理プロセス数(MCONPROC)」の範囲内)
そして,これらのTCP/IPコネクションを確立する際に,1TCP/IPコネクション上に
「最大仮想コネクション数(MCONMAX)」に設定された数だけ仮想コネクションを予約 します。
3. DABrokerの環境設定と運用(UNIX)
図3-5 DABrokerとDatabase Connection Serverの接続イメージ(2)
なお,一つのTCP/IPコネクションに対して一つの仮想コネクションを確立する形態を シングルコネクション(図3-4参照)と呼び,一つのTCP/IPコネクションに対して複 数の仮想コネクションを確立する形態をコネクションマルチ(図3-5参照)と呼びます。
(2) 最大仮想コネクション数と通信処理プロセス数の決定
最大仮想コネクション数(MCONMAX)
次のどちらかの値を設定します。
• 1TCP/IPコネクションを1ユーザからのアクセス要求だけで使用する場合(シン グルコネクション)
最大仮想コネクション数を「1」に設定します。この場合,TCP/IPコネクション を1ユーザからのアクセス要求だけで使用できるためレスポンス性能が良いので すが,複数ユーザからの同時アクセス要求があるときには同時アクセス要求数分 のTCP/IPコネクションを確立し,DABroker及びメインフレームでのリソース消 費量が多くなります。
• 1TCP/IPコネクションを複数ユーザからのアクセス要求で共有する場合(コネク ションマルチ)
「2以上の値」で,1通信処理プロセス当たりで同時に確立できる仮想コネクショ ン数を設定します。設定値については,下記を参照してください。なお,この場 合は,運用時に,コネクションマルチ機能起動コマンド(「3.10.1(1) コネクショ ンマルチ機能起動コマンド(dabcmstart)」参照)を実行してください。
通信処理プロセス数(MCONPROC)
DABrokerで同時に起動できる通信処理プロセス数の最大値を設定します。設定値
については,下記を参照してください。なお,最大仮想コネクション数が「1」の場 合は,設定する必要はありません。
3. DABrokerの環境設定と運用(UNIX)
次の手順で決定してください。
1. DABrokerのシステム全体で同時にアクセスするユーザ数(要求数)の最大値を見積 もる
この最大値は,アクセス対象となるDatabase Connection Serverの空間起動制御文 で設定された「サーバユーザ数」以内となるようにしてください。サーバユーザ数の 設定方法については,マニュアル「Database Connection Server」を参照してくださ い。
2.「1で見積もった最大値≦最大仮想コネクション数 * 通信処理プロセス数」となるよう な最大仮想コネクション数と最大通信処理プロセス数の組み合わせを決定する このとき,次の2点を考慮し,使用環境に合わせた適切な数値を検討してください。
• レスポンス性能
• DABrokerが組み込まれたサーバで消費するリソース量,及びDatabase Connection Serverが組み込まれたメインフレームで消費するリソース量
レスポンス性能は,1通信処理プロセス当たりの仮想コネクション数を少なくすればする ほど向上し,最大仮想コネクション数を1にする(シングルコネクション)とレスポン スが早くなります。しかし,同時アクセスユーザ数が多い場合に,TCP/IPコネクション も増えるため,メインフレーム側でリソース消費量が多くなります。このため,使用環 境に合わせた適切な数値を検討してください。
なお,最大仮想コネクション数は,接続するDatabase Connection Serverの空間起動制 御文で設定された「ユーザ数(仮想ユーザ空間数など)÷TCPコネクション数」の倍数 となるように設定してください。
(3) プールコネクション数と予約プールコネクション数の決定(仮想コネク ションのプーリング機能の使用)
最大仮想コネクション数を2以上にした場合,次の2種類の機能が使用できます。この 2種類は併用できます。
• 一度確立した仮想コネクションをプールする
この機能を使用すると,コネクション確立のためのオーバーヘッドを削減し,
Database Connection Serverとの接続時間の短縮が図れます。この機能を使用すると きは,プールコネクション数(MCONPOOL)を設定してください。
• コネクションマルチ機能の起動時に,指定された数の仮想コネクションを確立してお く
この機能を使用すると,通信処理プロセスの起動のためのオーバヘッドを削減し,
3. DABrokerの環境設定と運用(UNIX)
プールコネクション数(MCONPOOL)
DABrokerのシステム全体でプールする仮想コネクション数を設定します。プール
した仮想コネクションに対応するTCP/IPコネクションのためのリソースを Database Connection Server(メインフレーム)側で占有してしまうため,メイン フレーム側でのリソース消費量を考慮して使用環境に合わせた値を設定してくださ い。なお,リソースは,1通信処理プロセスごと,1TCP/IPコネクションごとに消 費されるため,「最大仮想コネクション数」で設定した値の倍数をプールコネクショ ン数に設定することをお勧めします。
予約プールコネクション数(MRSVPOOL)
DABrokerのシステム全体でコネクションマルチ機能起動時に確立しておく仮想コ
ネクション数を設定します。コネクションマルチ機能起動時にアクセス要求がなく ても仮想コネクションを確立してしまうことになるため,DABrokerを組み込んだ サーバで確立した分のリソースを占有してしまいます。したがって,DABroker側 のリソース消費量を考慮して使用環境に合わせた値を設定してください。なお,リ ソースは,1通信処理プロセスごと,1TCP/IPコネクションごとに消費されるため,
「最大仮想コネクション数(MCONMAX)」で設定した値の倍数を予約プールコネク ション数に設定することをお勧めします。
プールコネクション数及び予約プールコネクション数の両方に値を設定する場合は,
「プールコネクション数≧予約プールコネクション数」となるように設定してくださ い。