ページの先頭行へ戻る
Symfoware Server V10.1.0 Connection Managerユーザーズガイド

1.3 Connection Managerの機能

Connection Managerを利用することにより、アプリケーションで接続先となるノードを意識する必要はありません。

業務がアクセス対象とする資源の配置先ノードに、Connection Managerが自動的に接続します。

Connection Managerについて、以下の機能を説明します。

コネクション自動切替え機能

この機能は、データベースサーバのダウンが発生した場合に作用します。Connection Managerを利用しない場合、待機ノードへの切替えまたは引継ぎ先ノードへの縮退に対して、アプリケーションに再接続の処理を組み込む必要があります。再接続処理は、SQL文の実行でエラーを受け取り、データベースサーバの切替えまたは縮退の完了を待ち、CONNECT文の再実行という複雑な手順となります。コネクション自動切替え機能を利用すると、アプリケーションは、SQL文の実行でエラーを受信した際に、トランザクションを再実行するだけで自動的に待機ノードまたは引継ぎ先ノードでの処理継続を行うことができます。コネクション自動切替え機能には、以下の2つの方式があります。

フェイルオーバ運用と組み合わせた場合の、コネクション自動切り替え機能について、以下に示します。

イベント切替え方式

イベント切替え方式は、データベースサーバの切替え事象が発生した段階で待機ノードのデータベースサーバにコネクションの接続を開始します。

データベースサーバがスタンバイ機能を利用する場合は、イベント切替え方式になります。

プレコネクション切替え方式

プレコネクション切替え方式は、アプリケーションからCONNECT文を実行したときに、データベースサーバの運用ノードと待機ノードの両方、または引継ぎ元ノードと引継ぎ先ノードの両方に、コネクションの接続を行います。その後のSQL文の実行は、運用ノードまたは引継ぎ元ノードで行います。その時にデータベースサーバの切替えまたは縮退が発生した場合には、待機ノードまたは引継ぎ先ノードに接続しているコネクションを利用します。事前にコネクションの接続が完了している分、イベント切替え方式に比べてプレコネクション切替え方式の方が切替え時間または縮退時間を短縮することができます。

データベースサーバがホットスタンバイ機能を利用する場合、ロードシェア運用をする場合またはDBミラーリングシステムを利用する場合は、プレコネクション切替え方式になります。

コネクション自動削除機能

この機能は、アプリケーションサーバのダウンや通信回線の異常が発生した場合にデータベースサーバ上で作用します。

データベースサーバは、アプリケーションサーバのアプリケーションからの要求に対してコネクションを生成し、データベースのアクセス結果をアプリケーションに通知します。通常、アプリケーションに異常が発生した場合には、コネクションで実行していたトランザクションはロールバックしコネクション自身も自動的に消滅します。しかし、アプリケーションサーバのダウンや通信回線の異常が発生した場合には、データベースサーバ内のコネクションはトランザクションを含めて残留し、そのトランザクションが握っているロックは解除されません。コネクション自動削除機能は、データベースサーバ上でアプリケーションサーバのダウンを監視し、ダウンを検知した場合に自動的にコネクションの回収を行います。

この機能により、アプリケーションサーバ側で仕掛中のトランザクションを別のアプリケーションサーバで再実行した場合に、コネクションの回収待ちが発生しません。

コネクション自動削除機能について、以下に示します。

コネクション接続機能

データベースサーバがロードシェア運用を行っている場合、コネクション接続機能を利用できます。

Connection Managerのコネクション接続には、特定の資源の担当元ノードへ接続する方式と負荷分散する方式があります。特定のデータベース資源を対象とする業務の場合は、資源の担当元ノードへダイレクトにコネクションを接続することができます。複数のデータベース資源を対象とする業務の場合は、ノードごとの資源の偏在具合に応じて、資源の担当元ノードへ負荷分散してコネクションを接続することができます。