接続プール
データベース接続プールは,データベース操作の性能を改善する一般的な方法です.これは新しい接続の作成が簡単で,確立までに数秒しかかからないので便利なことがあります.しかし,データベース操作にほんの数ミリ秒しか必要ない場合には問題です.
DatabaseLink はApache Commons DBCP (
http://jakarta.apache.org/commons/dbcp/index.html)上に構築された接続プールメカニズムを提供します.
接続プールの操作
このセクションの例を実際に試してみて,記載の通りに動作しなかった場合は,
データベースの例の使用で述べているように
DatabaseExamples`パッケージを使ってデータベースをもとの状態に戻す必要があるかもしれません.
プールから接続を作成するには,
OpenSQLConnectionの
UseConnectionPoolオプションが設定できます.以下に例を示します.
まず,
DatabaseLink パッケージをロードします.それからプールを使って
publisher 例題データベースに接続します.
| Out[1]= |  |
UseConnectionPoolオプションを使う代りに,
$SQLUseConnectionPoolのデフォルト値を
Trueに設定することもできます.
DatabaseLink をロードすると,これは
Falseです.
| Out[2]= |  |
接続プールを使用するためのコマンド
作成された接続プールをすべて示します.1つだけあります.
| Out[3]= |  |
次は
publisher データベースへの接続に接続プールが使われたことを示しています.接続プールに使われているオプションがいくつかあります.
| Out[4]= |  |
接続プールを閉じます.これはまた,プールが使用しているすべての接続も閉じます.
接続プールオプション
接続プールがどのように動作するかを設定するのに数多くのオプションがあります.以下にこれらのオプションの使い方の例を示します.
まず,
DatabaseLink パッケージをロードします.それからプールを使って
publisher 例題データベースに接続します.
| Out[1]= |  |
作成された接続プールをすべて示します.1つだけあります.
| Out[2]= |  |
次は
publisher データベースへの接続に接続プールが使われたことを示しています.接続プールに使われているオプションがいくつかあります.
| Out[3]= |  |
この接続プールの
MaxActiveConnectionsオプションを設定します.
| Out[4]= |  |
接続プールオプションを使用するための関数
| |
| "MaxActiveConnections" | プールに確保する最大接続数 |
| "MinIdleConnections" | プールに確保するアイドル状態の最小接続数 |
| "MaxIdleConnections" | プールに確保するアイドル状態の最大接続数 |
| "Catalog" | データベースカタログの場所 |
| "ReadOnly" | 接続を読取り専用に設定する |
| "TransactionIsolationLevel" | 接続にトランザクション分離を設定する |
接続プールオプション