開発Blog

intra-martの提供するセッション管理機能と他のアプリケーションサーバのセッション管理機能との違い

投稿日:


※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。
最新のintra-martでは、異なる情報であることがありますので、ご注意ください。


intra-martの提供するセッション管理機能と、他のアプリケーショ ンサーバのセッション管理機能は、完全に独立しています。したがって、互いに干渉することなく同時に利用することができます。ただし、動作する仕組みや セッション情報を操作するためのAPIもまったく異なることに注意してください。

アプリケーションサーバ製品の動作仕様により異なりますが、通常のアプリケーションサーバの標準セッション管理は次の2種類に大別されます。通常、アプリ ケーションサーバ単位で管理されます。

①CookieにセッションIDを書き込む
②URLで渡していく

これに対してintra-mart は、インフォメーション・サーバを持つことにより、複数台のAPサーバを並列稼動させている場合においてもセッション情報を一元的に管理することが可能な 独自のセッション管理機能を持っています。これによりプログラマは、ページが異なる場合はもちろんのこと、アプリケーションプログラムの動作するサーバプ ロセスに関しても、アプリケーションサーバ構成を意識することなく開発を行うことができます(intra-martの SessionMemory/SessionFactoryなどのAPIを利用します。このオブジェクトで保管されるデータは、インフォメーションサーバ のメモリ中で管理されるため、ページ間のデータ共有がおこなえるようになっています。また、インフォメーションサーバが動作している間、その存在が保証さ れます。ただしセッションタイムアウトにより情報は自動的に破棄されますので、ご注意ください。詳細はAPIリストを確認してください)。

セッション管理を行う場合、システムの要件やアプリケーションの性質により、アプリケーションサーバの提供している標準セッション機能、および intra-mart の提供するセッション管理機能を使い分けるようにしてください。2つのセッション機能を併用することも可能です(intra-mart の提供するセッション管理機能は、他のアプリケーションサーバの標準セッション管理機能とは独立した機能として動作しているため、他のアプリケーション サーバの標準セッション機能を利用したとしても、互いに干渉することなくintra-mart のセッション管理機能も同時に利用することができます)。

使い分けとして、intra-martのセッション管理機能を利用することには以下のメリットがあります。

(1) インフォメーション・サーバを持つことにより複数台のアプリケーションサーバを並列稼動させている場合においても、セッション情報を一元的に管理すること で、厳密なフェイルオーバが実現できる(処理中にアプリケーションサーバマシンがダウンしても、次のリクエストから処理を別サーバで継続できる)。

(2) intra-martのワークフローやアクセスセキュリティなどの各モジュール(Javaコンポーネント)には、intra-martのセッション管理機 能の利用が前提で作られているものがあります。そのため、intra-martの各種Javaコンポーネントを利用するのであれば、intra-mart のセッション管理を利用するようにしてください。

次に、intra-martで提供する各モジュール (Javaコンポーネント群)のセッション管理機能への依存について説明したします。
前記(2)で述べましたように、intra-martの各モジュールには、intra-martのセッション管理機能 (InformationServer)の利用時にしか使用できないものもあります。下記表を参考にしてください。また一部モジュールには、別のモジュー ルの利用を前提として使用可能となるものもあります。下記の注意点を参考にしてください。

*1 アクセスセキュリティモジュールの利用が前提のモジュールです(intra-martのアカウント情報を使用して動作するモジュールです)。
*2 IM-ワークフローデザイナーは、ワークフローモジュールの利用を前提として動作します。
*3 アプリケーション共通モジュールで、intra-martのセッション管理を使わないとき(アプリケーションサーバ標準セッション機能利用時)に利 用できないものの一覧です。・アクセスセキュリティに関連した機能:imart.acssecurity.
・ワークフロー機能:imart.ackwkf.

・その他:imart.appcomn.*

アプリケーションサーバ標準セッション管理機能を利用しながら、ページベースモデル(HTML+サーバサイドJavaScript)による開発をおこなう という特殊な形態では、さらに利用できるモジュールに制限がありますのでご注意ください。

以上

-開発Blog
-

執筆者:

関連記事

no image

iAPへアクセスするURLが複数ある場合のベースURLの設定方法

ここでは、ベースURL をリクエスト情報を基に切り替えるための手順を BaseUrlProvider のサンプル実装、Webサーバとの連携例と共に紹介します。 製品標準の設定では、テナント一つにつき、 …

no image

intra-mart 以外のプログラムを実行する

※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。最新のintra-martでは、異なる情報であることがありますので、ご注意ください。 通常、intra-mart を We …

no image

intra-martベースモジュール verr4.X パラメータチューニングガイド

  ※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。最新のintra-martでは、異なる情報であることがありますので、ご注意ください。   intr …

no image

プロダクトを成長させる生成系 AI のユースケースを考えるワークショップ実施レポート

こんにちは、開発本部 チーフテクニカルリードの榎本です。 先日開催しました「intra-mart Live 2023」はご参加頂けましたでしょうか?基調講演では、intra-mart Accel Pl …

no image

intra-mart Accel Kaiden! のガジェットを使いこなそう!①

以前のintra-mart Accel Kaiden ! の記事で紹介した「ガジェット」は、申請書内の関連する画面項目のグループや入力チェックとして利用できますが、もっと便利に利用するための設定機能も …