Hitachi

Cosminexus V11 アプリケーションサーバ Cosminexus Reliable Messaging


2.6.5 DBアクセス時の認証

アプリケーションが取得するコネクション(QueueSessionオブジェクト)には,JDBCコネクションが関連づけられます。

アプリケーションがコネクションを要求すると,Reliable MessagingはApplication Serverのコネクションプーリング機能と連携し,プーリングされているJDBCコネクションを再利用します。JDBCコネクションがプールにないときは,DBMSから新しいJDBCコネクションを取得します。このときDBMSの接続ユーザの認証にはアプリケーションで指定した認証方法(コンテナ認証またはアプリケーション認証)が使用されます。認証情報の設定については,「3.4.5 Reliable Messagingのプロパティ定義(永続版リソースアダプタの場合)」を参照してください。

また,アプリケーションがコネクションを解放するときは,Application Serverのコネクションプーリング機能を経由して処理されます。コネクションプーリング数(Application Serverでの定義値)に空きがあるとJDBCコネクションは解放されないでプールされます。

アプリケーションからのコネクション取得の概要を次の図に示します。

図2‒27 アプリケーションからのコネクション取得の概要

[図データ]

図中の番号について,説明します。

  1. コネクションの要求

    アプリケーションがQueueConnection.createQueueSession()メソッドを発行し,コネクションを要求します。

  2. コネクションの要求通知

    Reliable MessagingがApplication Serverにコネクションの要求通知をします。

  3. JDBCコネクションの再利用

    Application Server内にプーリング中のコネクションがある場合はプール中のJDBCコネクションが再利用されます。

  4. JDBCコネクションの要求

    プーリング中のコネクションがない場合,Reliable MessagingはDBMSに要求してJDBCコネクションを取得します。コンテナ認証の場合は,リソースアダプタのプロパティで指定した認証情報が利用されます。また,アプリケーション認証の場合は,アプリケーションで指定した認証情報が利用されます。

  5. QueueSessionオブジェクトとの関連づけ

    Reliable Messagingはアプリケーションに返却するQueueSessionオブジェクトを生成し,3.または4.で取得したJDBCコネクションと関連づけます。

  6. QueueSessionオブジェクトの返却

    Reliable MessagingはアプリケーションにQueueSessionオブジェクトを返します。