ページの先頭行へ戻る
Interstage Application Server OLTPサーバ運用ガイド

I.15.5 セション情報の管理

  トランザクションアプリケーションでは、セション情報管理機能を使用することで、業務システムを構築する場合にセション情報を管理できます。なお、セション情報とは、クライアントとサーバのオブジェクト間で、複数回の要求と応答がある場合に、サーバ側でクライアントごとに保持する任意の情報のことです。

  また、セション情報の管理のためには、プロセスバインド機能を使用した方法もあります。プロセスバインド機能については、“アプリケーション作成ガイド(コンポーネントトランザクションサービス編)”で説明されています。

セション情報管理機能の用途

  セション情報管理は、複数の要求と応答により1つの業務が完結するアプリケーションで、複数要求間で任意のデータを処理要求元ごとにサーバ側で一時的に保持する目的で使用します。なお、長期的な情報の保持のためには、データベースなどへの情報の記録が必要です。

セション情報の管理単位

  セション情報管理機能では、セション情報をSMO(セション情報管理オブジェクト:Session information Management Object)で管理します。SMOではクライアントを識別する以下の3つの識別子ごとにセション情報を管理できます。

  セションIDは、コンポーネントトランザクションサービスがセションを識別するために使用する識別子です。
  セションIDは、トランザクションアプリケーションのサーバオブジェクトで、コンポーネントトランザクションサービスが提供するセションID採番APIにより採番します。採番したセションIDは、セション情報を保持する任意の範囲で、クライアントからサーバにオペレーションのパラメタとして渡すことにより使用します。これにより、サーバは、処理要求元のクライアントを一意に識別できます。
  セションIDは、プロセスバインド機能およびAIM連携のセション継続でも使用されます。(AIM連携はWindows(R)版、Solaris版のみです。)

  クライアント識別子は、CORBAクライアントを使用する場合に、処理要求元のCORBAクライアントのプロセスを一意に識別するための識別子です。クライアント識別子は、CORBAサービスにより自動的に採番されます。トランザクションアプリケーションでは、クライアント識別子獲得APIを使用して取得できます。

識別子

採番方式

サーバでの取得方法

利点

使用機能

セションID

サーバオブジェクトでのAPI

クライアントからのパラメタ渡し

アプリケーションごとの任意の範囲をセションとできる。
1スレッド単位でもクライアントを識別可能。

・セション情報管理
・プロセスバインド

・AIM連携のセション継続

クライアント識別子

CORBAサービスによる自動採番

サーバでの取得APIの発行

パラメタによる識別子の持ち回りが不要。
クライアント側での識別子の持ち回りが不要。

・セション情報管理


  任意のオブジェクトが獲得したセション情報域は、同一サーバ内のほかのオブジェクトからもアクセスすることができます。ただし、サーバをまたいだセション情報の管理はできません。
  セション情報の管理を行う場合の詳細については、“アプリケーション作成ガイド(コンポーネントトランザクションサービス編)”で説明されています。