(57)【要約】【課題】サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、該一のサービス提供装置と再度進めることができるようにすることを、レスポンス時間の長時間化を抑制しつつ、実現する。【解決手段】第１パフォーマンス情報取得部１４及び第２パフォーマンス情報取得部１６は、サービス提供サーバにおけるリクエストの処理効率を表す第１パフォーマンス情報と、セッション管理サーバ４におけるリクエストの処理効率を表す第２パフォーマンス情報と、を取得し、動作モード切替部２０は、第１パフォーマンス情報と第２パフォーマンス情報との比較結果に応じて、動作モードを第１動作モードと第２動作モードとのうちで切り替える。【選択図】図１３
2015121933.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つのセッション管理装置と、同種のサービスを提供する複数のサービス提供装置と、を含み、
前記セッション管理装置が、
クライアント装置から送信されたリクエストデータを、該リクエストデータ中のセッション情報により特定されるサービス提供装置に転送するリクエスト転送手段と、
前記リクエスト転送手段が転送したリクエストデータの転送先のサービス提供装置から返信される応答データを、該転送先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する応答転送手段と、
を含み、
前記サービス提供装置が、
前記セッション管理装置から受信したリクエストデータにユーザを識別するユーザ識別情報が含まれる場合に、該ユーザ識別情報に基づき認証されたユーザに固有のユーザ情報を生成する生成手段と、
前記セッション管理装置から受信したリクエストデータに応じた応答データを、該リクエストデータの送信元のセッション管理装置に返信する手段であって、該リクエストデータにユーザ識別情報が含まれる場合、前記生成手段により生成されたユーザ情報を含む応答データを、該送信元のセッション管理装置に返信する応答返信手段と、
を含むセッション管理システムであって、
前記リクエスト転送手段は、
前記クライアント装置からユーザ情報を含むリクエストデータが送信された場合、前記セッション管理システムの動作モードが第２の動作モードであるときは、該リクエストデータを、ユーザ情報とそのユーザ情報を最初に生成したサービス提供装置を特定するセッション情報とを関連づけて記憶するユーザ情報記憶手段において、該リクエストデータ中のユーザ情報と同一のユーザ情報に関連づけられたセッション情報により特定されるサービス提供装置に転送し、
前記応答返信手段は、
リクエストデータにユーザ識別情報が含まれる場合、前記動作モードが第１の動作モードであるときは、前記生成手段により生成されたユーザ情報を含む応答データを、前記ユーザ情報記憶手段において、該生成されたユーザ情報と同一のユーザ情報に関連づけられたセッション情報とともに、セッション管理装置に返信し、
前記応答転送手段は、
サービス提供装置から返信される応答データをセッション情報とともに受信した場合、前記第動作モードが第１の動作モードであるときは、該応答データを、そのセッション情報とともに、クライアント装置に転送し、
前記セッション管理システムは、
前記サービス提供装置におけるリクエストデータの処理効率を表す第１情報を取得する第１情報取得手段と、
前記セッション管理装置におけるリクエストデータの処理効率を表す第２情報を取得する第２情報取得手段と、
前記第１情報と前記第２情報との比較結果に応じて、前記動作モードを第１の動作モードと第２の動作モードとのうちで切り替える動作モード切り替え手段と、をさらに含む、
セッション管理システム。
【請求項２】
前記第１情報取得手段は、
前記サービス提供装置がリクエストデータを受信してから該リクエストデータに応じた応答データを送信するまでに要した時間である第１処理時間に基づいて、前記第１情報を取得し、
前記第２情報取得手段は、
前記セッション管理装置がリクエストデータを受信してから該リクエストデータを前記サービス提供装置に送信するまでに要した時間である第２処理時間に基づいて、前記第２情報を取得する、
請求項１に記載のセッション管理システム。
【請求項３】
前記第１情報は、一定時間内に前記サービス提供装置が受信したリクエストデータ一つあたりの第１処理時間であり、
前記第２情報は、一定時間内に前記セッション管理装置が受信したリクエストデータ一つあたりの第２処理時間である、
請求項１又は２に記載のセッション管理システム。
【請求項４】
前記動作モード管理装置は、
前記第１情報が前記第２情報より大きい場合、前記動作モードを第１の動作モードから第２の動作モードに切り替え、前記第１情報が前記第２情報以下である場合、前記動作モードを第２の動作モードから第１の動作モードに切り替える、
請求項３に記載のセッション管理システム。
【請求項５】
クライアント装置から送信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に転送し、転送したリクエストデータの転送先のサービス提供装置から返信される応答データを、該転送先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する装置であって、クライアント装置からユーザに固有のユーザ情報を含むリクエストデータが送信された場合、動作モードが第２の動作モードであるときは、該リクエストデータを、ユーザ情報とそのユーザ情報を最初に生成したサービス提供装置を特定するセッション情報とを関連づけて記憶するユーザ情報記憶手段において、該リクエストデータ中のユーザ情報と同一のユーザ情報に関連づけられたセッション情報により特定されるサービス提供装置に転送し、サービス提供装置から返信される応答データをセッション情報とともに受信した場合、前記動作モードが第１の動作モードであるときは、該応答データを、そのセッション情報とともに、クライアント装置に転送するセッション管理装置、におけるリクエストデータの処理効率を示す第１情報を取得する第１情報取得手段と、
前記セッション管理装置から受信したリクエストデータに応じた応答データを、該リクエストデータの送信元のセッション管理装置に返信し、且つ、受信したリクエストデータにユーザを識別するユーザ識別情報が含まれる場合には、該ユーザ識別情報に基づき認証されたユーザに固有のユーザ情報を生成し、生成したユーザ情報を含む応答データを、該送信元のセッション管理装置に返信する装置であって、受信したリクエストデータにユーザ識別情報が含まれる場合、前記動作モードが第１の動作モードであるときは、生成したユーザ情報を含む応答データを、前記ユーザ情報記憶手段において、該生成されたユーザ情報と同一のユーザ情報に関連づけられたセッション情報とともに、該送信元のセッション管理装置に返信する前記サービス提供装置、におけるリクエストデータの処理効率を示す第２情報を取得する第２情報取得手段と、
前記第１情報と前記第２情報との比較結果に応じて、前記動作モードを第１の動作モードと第２の動作モードとのうちで切り替える動作モード切り替え手段と、
を含む動作モード管理装置。
【請求項６】
クライアント装置から送信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に転送し、転送したリクエストデータの転送先のサービス提供装置から返信される応答データを、該転送先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する装置であって、クライアント装置からユーザに固有のユーザ情報を含むリクエストデータが送信された場合、動作モードが第２の動作モードであるときは、該リクエストデータを、ユーザ情報とそのユーザ情報を最初に生成したサービス提供装置を特定するセッション情報とを関連づけて記憶するユーザ情報記憶手段において、該リクエストデータ中のユーザ情報と同一のユーザ情報に関連づけられたセッション情報により特定されるサービス提供装置に転送し、サービス提供装置から返信される応答データをセッション情報とともに受信した場合、前記動作モードが第１の動作モードであるときは、該応答データを、そのセッション情報とともに、クライアント装置に転送するセッション管理装置、におけるリクエストデータの処理効率を示す第１情報を取得する第１情報取得手段、
前記セッション管理装置から受信したリクエストデータに応じた応答データを、該リクエストデータの送信元のセッション管理装置に返信し、且つ、受信したリクエストデータにユーザを識別するユーザ識別情報が含まれる場合には、該ユーザ識別情報に基づき認証されたユーザに固有のユーザ情報を生成し、生成したユーザ情報を含む応答データを、該送信元のセッション管理装置に返信する装置であって、受信したリクエストデータにユーザ識別情報が含まれる場合、前記動作モードが第１の動作モードであるときは、生成したユーザ情報を含む応答データを、前記ユーザ情報記憶手段において、該生成されたユーザ情報と同一のユーザ情報に関連づけられたセッション情報とともに、該送信元のセッション管理装置に返信する前記サービス提供装置、におけるリクエストデータの処理効率を示す第２情報を取得する第２情報取得手段、
前記第１情報と前記第２情報との比較結果に応じて、前記動作モードを第１の動作モードと第２の動作モードとのうちで切り替える動作モード切り替え手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セッション管理システム、動作モード管理装置、及びプログラムに関する。
【背景技術】
【０００２】
下記特許文献１には、最初に選択したサーバの情報をクッキーとしてクライアントに提供することにより、クライアントからのリクエストを常に同じサーバに転送するロードバランス装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許６４７３８０２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、該一のサービス提供装置と再度進めることができるようにすることを、レスポンス時間の長時間化を抑制しつつ、実現することである。
【課題を解決するための手段】
【０００５】
上記課題を解決するための請求項１に記載の発明は、少なくとも一つのセッション管理装置と、同種のサービスを提供する複数のサービス提供装置と、を含み、前記セッション管理装置が、クライアント装置から送信されたリクエストデータを、該リクエストデータ中のセッション情報により特定されるサービス提供装置に転送するリクエスト転送手段と、前記リクエスト転送手段が転送したリクエストデータの転送先のサービス提供装置から返信される応答データを、該転送先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する応答転送手段と、を含み、前記サービス提供装置が、前記セッション管理装置から受信したリクエストデータにユーザを識別するユーザ識別情報が含まれる場合に、該ユーザ識別情報に基づき認証されたユーザに固有のユーザ情報を生成する生成手段と、前記セッション管理装置から受信したリクエストデータに応じた応答データを、該リクエストデータの送信元のセッション管理装置に返信する手段であって、該リクエストデータにユーザ識別情報が含まれる場合、前記生成手段により生成されたユーザ情報を含む応答データを、該送信元のセッション管理装置に返信する応答返信手段と、を含むセッション管理システムであって、前記リクエスト転送手段は、前記クライアント装置からユーザ情報を含むリクエストデータが送信された場合、前記セッション管理システムの動作モードが第２の動作モードであるときは、該リクエストデータを、ユーザ情報とそのユーザ情報を最初に生成したサービス提供装置を特定するセッション情報とを関連づけて記憶するユーザ情報記憶手段において、該リクエストデータ中のユーザ情報と同一のユーザ情報に関連づけられたセッション情報により特定されるサービス提供装置に転送し、前記応答返信手段は、リクエストデータにユーザ識別情報が含まれる場合、前記動作モードが第１の動作モードであるときは、前記生成手段により生成されたユーザ情報を含む応答データを、前記ユーザ情報記憶手段において、該生成されたユーザ情報と同一のユーザ情報に関連づけられたセッション情報とともに、セッション管理装置に返信し、前記応答転送手段は、サービス提供装置から返信される応答データをセッション情報とともに受信した場合、前記第動作モードが第１の動作モードであるときは、該応答データを、そのセッション情報とともに、クライアント装置に転送し、前記サービス提供装置におけるリクエストデータの処理効率を表す第１情報を取得する第１情報取得手段と、前記セッション管理装置におけるリクエストデータの処理効率を表す第２情報を取得する第２情報取得手段と、前記第１情報と前記第２情報との比較結果に応じて、前記動作モードを第１の動作モードと第２の動作モードとのうちで切り替える動作モード切り替え手段と、をさらに含むセッション管理システムである。
【０００６】
上記課題を解決するための請求項５に記載の発明は、セッション管理装置におけるリクエストデータの処理効率を示す第１情報を取得する第１情報取得手段と、サービス提供装置におけるリクエストデータの処理効率を示す第２情報を取得する第２情報取得手段と、前記第１情報と前記第２情報との比較結果に応じて、動作モードを第１の動作モードと第２の動作モードとのうちで切り替える動作モード切り替え手段と、を備えた動作モード管理装置である。また、請求項６に記載の発明は、セッション管理装置におけるリクエストデータの処理効率を示す第１情報を取得する第１情報取得手段、サービス提供装置におけるリクエストデータの処理効率を示す第２情報を取得する第２情報取得手段、前記第１情報と前記第２情報との比較結果に応じて、動作モードを第１の動作モードと第２の動作モードとのうちで切り替える動作モード切り替え手段、として機能させるためのプログラムである。ここで、セッション管理装置は、クライアント装置から送信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に転送し、転送したリクエストデータの転送先のサービス提供装置から返信される応答データを、該転送先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する。但し、クライアント装置からユーザに固有のユーザ情報を含むリクエストデータが送信された場合、動作モードが第２の動作モードであるときは、該リクエストデータを、ユーザ情報とそのユーザ情報を最初に生成したサービス提供装置を特定するセッション情報とを関連づけて記憶するユーザ情報記憶手段において、該リクエストデータ中のユーザ情報と同一のユーザ情報に関連づけられたセッション情報により特定されるサービス提供装置に転送する。また、サービス提供装置から返信される応答データをセッション情報とともに受信した場合、前記動作モードが第１の動作モードであるときは、該応答データを、そのセッション情報とともに、クライアント装置に転送する。また、サービス提供装置は、前記セッション管理装置から受信したリクエストデータに応じた応答データを、該リクエストデータの送信元のセッション管理装置に返信する装置であって、受信したリクエストデータにユーザを識別するユーザ識別情報が含まれる場合には、該ユーザ識別情報に基づき認証されたユーザに固有のユーザ情報を生成し、生成したユーザ情報を含む応答データを、該送信元のセッション管理装置に返信する。但し、受信したリクエストデータにユーザ識別情報が含まれる場合、前記動作モードが第１の動作モードであるときは、生成したユーザ情報を含む応答データを、前記ユーザ情報記憶手段において、該生成されたユーザ情報と同一のユーザ情報に関連づけられたセッション情報とともに、該送信元のセッション管理装置に返信する。
【０００７】
請求項２に記載のセッション管理システムは、請求項１に記載のセッション管理システムにおいて、前記第１情報取得手段が、前記サービス提供装置がリクエストデータを受信してから該リクエストデータに応じた応答データを送信するまでに要した時間である第１処理時間に基づいて、前記第１情報を取得し、前記第２情報取得手段が、前記セッション管理装置がリクエストデータを受信してから該リクエストデータを前記サービス提供装置に送信するまでに要した時間である第２処理時間に基づいて、前記第２情報を取得することを特徴としている。
【０００８】
また、請求項３に記載のセッション管理システムは、請求項１又は２に記載のセッション管理システムにおいて、前記第１情報が、一定時間内に前記サービス提供装置が受信したリクエストデータ一つあたりの第１処理時間であり、前記第２情報が、一定時間内に前記セッション管理装置が受信したリクエストデータ一つあたりの第２処理時間であることを特徴としている。
【０００９】
また、請求項４に記載のセッション管理システムは、請求項３に記載のセッション管理システムにおいて、前記動作モード管理装置が、前記第１情報が前記第２情報より大きい場合、前記動作モードを第１の動作モードから第２の動作モードに切り替え、前記第１情報が前記第２情報以下である場合、前記動作モードを第２の動作モードから第１の動作モードに切り替えることを特徴としている。
【発明の効果】
【００１０】
請求項１、５、６に記載の発明によれば、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、該一のサービス提供装置と再度進めることができるようにすることを、レスポンス時間の長時間化を抑制しつつ、実現できる。
【００１１】
請求項２、３、４に記載の発明によれば、本構成を有しない場合と比較してより確実に、レスポンス時間の長時間化を抑制できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係るセッション管理システムの構成を示す図である。
【図２】セッション管理システムにて実行される処理を示すシーケンス図である。
【図３Ａ】ログイン画面を示す図である。
【図３Ｂ】設定画面を示す図である。
【図３Ｃ】案内画面を示す図である。
【図３Ｄ】指示待ち画面を示す図である。
【図４】セッション管理システムにて実行される処理を示すシーケンス図である。
【図５】第１返信処理を示すフロー図である。
【図６】応答送信処理を示すフロー図である。
【図７】第２返信処理を示すフロー図である。
【図８】セッション管理システムにて実行される処理を示すシーケンス図である。
【図９】セッション管理システムにて実行される処理を示すシーケンス図である。
【図１０】セッション管理システムにて実行される処理を示すシーケンス図である。
【図１１】セッション管理システムにて実行される処理を示すシーケンス図である。
【図１２】転送処理を示すフロー図である。
【図１３】動作モード管理サーバにて実現される機能群を示す機能ブロック図である。
【図１４】動作モード管理サーバにて実行される処理を示すフロー図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。
【００１４】
図１は、本発明の実施形態に係るセッション管理システム１の構成を示す図である。同図に示すように、セッション管理システム１は、複数のクライアント装置２と、少なくとも１つのセッション管理サーバ４と、情報処理サービスを提供するための複数のサービス提供サーバ６と、共有データベース１０と、動作モード管理サーバ１２と、を含む。本実施形態では、複数のセッション管理サーバ４が含まれる。これらの装置は、ネットワークに接続されている。
【００１５】
クライアント装置２には、ブラウザアプリケーションがインストールされており、ユーザは、ブラウザアプリケーションを介して、情報処理サービスにログインし、情報処理サービスを利用するためのＨＴＴＰセッションを進める。本実施形態の場合、クライアント装置２ａは、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、マウス及びキーボードなどの入力装置、ネットワークインタフェース、及びディスプレイを備えたパーソナルコンピュータとして実現される。また、クライアント装置２ｂは、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、ネットワークインタフェース、タッチスクリーン、及びスキャナを備えた画像処理装置（いわゆる複合機）として実現される。
【００１６】
セッション管理サーバ４、サービス提供サーバ６、及び、動作モード管理サーバ１２は、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、ネットワークインタフェースなどを備えたサーバコンピュータである。セッション管理サーバ４、サービス提供サーバ６及び動作モード管理サーバ１２は、それぞれ、記憶装置に記憶されるプログラムに従って情報処理を実行する。このプログラムは、ネットワークから受信されることにより記憶装置に記憶されてもよいし、コンピュータ読み取り可能な情報記憶媒体から読み出されることにより記憶装置に記憶されてもよい。
【００１７】
各セッション管理サーバ４は、クライアント装置２から受信したＨＴＴＰリクエストをサービス提供サーバ６に転送する。また、サービス提供サーバ６から受信したＨＴＴＰレスポンスを、クライアント装置２に転送する。セッション管理サーバ４は、ロードバランサとも呼ばれる。
【００１８】
各サービス提供サーバ６は、ユーザに対しクラウド上で共通の情報処理サービスを提供し、本実施形態では、クライアント装置２から送付される文書画像を翻訳する画像処理サービスをユーザに提供する。各サービス提供サーバ６は、ユーザデータベース８に接続されている。ユーザデータベース８には、サービスの利用者として登録されているユーザの認証情報（ユーザ名（ユーザ識別情報）とパスワード）が記憶されており、サービス提供サーバ６は、ユーザデータベース８を用いてユーザ認証を行う。
【００１９】
動作モード管理サーバ１２は、セッション管理システム１の動作モードを制御する。動作モードには、第１動作モードと第２動作モードとがあり、動作モード管理サーバ１２は、この２つの動作モードのうちで、適宜動作モードを切り替える。具体的には、動作モード管理サーバ１２は、ＳＮＭＰ(Server Network Management Protocol)プロトコルを用いて各セッション管理サーバ４及び各サービス提供サーバ６を監視しており、監視結果に応じて動作モードを切り替える。セッション管理サーバ４、サービス提供サーバ６、及び動作モード管理サーバ１２は、それぞれ、記憶装置に現在の動作モードを表すモード情報を記憶しており、モード情報により表される動作モードで動作する。なお、ＳＮＭＰエージェントたる各セッション管理サーバ４及び各サービス提供サーバ６には監視項目が登録されており、ＳＮＭＰマネージャたる動作モード管理サーバ１２の要求に応じて、監視項目に関する監視結果を返信するようになっている。
【００２０】
第１動作モード及び第２動作モードについては後述する。
【００２１】
共有データベース１０は、各サービス提供サーバ６に共有されるデータベースであり、後述するコンテクスト情報が、サービス提供サーバ６を識別するセッションＩＤと関連づけて記憶される。ここでは、共有データベース１０に、未だコンテクスト情報が記憶されていないものとする。
【００２２】
画像処理サービスの利用場面について説明する。本実施形態では、ユーザは、クライアント装置２においてブラウザアプリケーションを起動し、所定箇所にログイン画面のＵＲＬ（Uniformed Resource Locator）を入力する。図２は、ログイン画面のＵＲＬが入力された場合に、セッション管理システム１にて実行される処理を示すシーケンス図である。以下、ログイン画面のＵＲＬが入力されたクライアント装置２のことをクライアント装置Ｘと表記する。ユーザがログイン画面のＵＲＬを入力すると、クライアント装置Ｘは、ブラウザアプリケーションを介し、ＨＴＴＰリクエスト（リクエストデータ）をいずれかのセッション管理サーバ４に送信する（Ｓ１０１）。以下、ＨＴＴＰリクエストの送信先のセッション管理サーバ４のことをセッション管理サーバＸと表記する。ＨＴＴＰリクエストには、クライアント装置Ｘが記憶装置に保持しているクッキー情報などの各種データが含まれる。ここでは、クライアント装置Ｘがクッキー情報を保持していないので、ＨＴＴＰリクエストにクッキー情報は含まれない。
【００２３】
セッション管理サーバＸは、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信する。受信したＨＴＴＰリクエストは、記憶装置内のキューにエンキューされる。そして、セッション管理サーバＸは、受信したＨＴＴＰリクエストをデキューし、いずれかのサービス提供サーバ６に転送する。セッション管理サーバ４は、クッキー情報を含まないＨＴＴＰリクエストを受信した場合、第１動作モードにおいても第２動作モードにおいても、そのＨＴＴＰリクエストを、所定のアルゴリズム（例えば、ラウンドロビンアルゴリズム）に従って選択したサービス提供サーバ６に転送するようになっている。ここでは、ＨＴＴＰリクエストにクッキー情報が含まれない。そのため、セッション管理サーバＸは、受信したＨＴＴＰリクエストを、上記所定のアルゴリズムに従って選択したサービス提供サーバ６に転送する（Ｓ１０２）。なお、ここでは、サービス提供サーバＸに、ＨＴＴＰリクエストが転送されたものとする。
【００２４】
サービス提供サーバＸは、セッション管理サーバＸから送信されたＨＴＴＰリクエストを受信する。受信したＨＴＴＰリクエストは、記憶装置内のキューにエンキューされる。そして、セッション管理サーバＸは、受信したＨＴＴＰリクエストをデキューし、そのＨＴＴＰリクエストに応じたＨＴＴＰレスポンスを、セッション管理サーバ４に返信する（Ｓ１０３）。この段階では、サービス提供サーバＸは、第１動作モードにおいても第２動作モードにおいても、ログイン画面のウェブページをＨＴＴＰレスポンスとして返信する。そして、ＨＴＴＰレスポンスを受信したセッション管理サーバＸは、受信したＨＴＴＰレスポンスを、ＨＴＴＰレスポンスの送信元であるサービス提供サーバＸを識別するセッションＩＤとともに、クライアント装置Ｘに転送する（Ｓ１０４）。なお、セッションＩＤは、クッキー情報として、ＨＴＴＰレスポンスに含まれる。
【００２５】
ＨＴＴＰレスポンスを受信したクライアント装置Ｘでは、ログイン画面が表示される。また、ＨＴＴＰレスポンス中のクッキー情報が記憶装置に保存される。図３Ａは、ログイン画面の一例を示す図である。このログイン画面を用いてユーザは、画像処理サービスにログインする。すなわち、ユーザは、ログイン画面に自身の認証情報（ユーザ名とパスワード）を入力する。そして、所定のボタンを押す。
【００２６】
［第１動作モード］
図４は、ログイン画面においてユーザが上記所定のボタンを押した場合に、セッション管理システム１において実行される処理を示すシーケンス図である。ここでは、動作モードが第１動作モードである場合について説明する。まず、クライアント装置Ｘは、記憶装置に記憶されるクッキー情報と入力された認証情報とを含むＨＴＴＰリクエストを、セッション管理サーバＸに送信する（Ｓ２０１）。セッション管理サーバＸは、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをキューにエンキューする。そして、セッション管理サーバＸは、受信したＨＴＴＰリクエストをデキューし、いずれかのサービス提供サーバ６に転送する。
【００２７】
第１動作モードでは、セッション管理サーバ４は、受信したＨＴＴＰリクエストにクッキー情報が含まれる場合、そのクッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６にそのＨＴＴＰリクエストを転送するようになっている。この段階では、ＨＴＴＰリクエストにクッキー情報が含まれる。そのため、セッション管理サーバＸは、ＨＴＴＰリクエストに含まれるクッキー情報中のセッションＩＤにより識別されるサービス提供サーバＸに、ＨＴＴＰリクエストを転送する（Ｓ２０２Ａ）。
【００２８】
サービス提供サーバＸは、セッション管理サーバＸから転送されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをキューにエンキューする。そして、サービス提供サーバＸは、受信したＨＴＴＰリクエストをデキューする。
【００２９】
第１動作モードでも第２動作モードでも、サービス提供サーバ６は、受信したＨＴＴＰリクエストに認証情報が含まれる場合、その認証情報とユーザデータベース８の記憶内容とに基づいてユーザを認証するようになっている。そして、ユーザが認証された場合、認証されたユーザに固有のコンテクスト情報を認証情報に基づいて生成するようになっている。そのため、サービス提供サーバＸは、デキューしたＨＴＴＰリクエスト中の認証情報と、ユーザデータベース８の記憶内容に基づいて、ユーザを認証する（Ｓ２０３）。具体的には、サービス提供サーバＸは、ＨＴＴＰリクエスト中の認証情報がユーザデータベース８に記憶されているか否かを判定する。そして、ユーザが認証された場合、サービス提供サーバＸは、認証されたユーザに固有のコンテクスト情報をＨＴＴＰリクエスト中の認証情報に基づいて所定のコンテクスト生成アルゴリズムに従い生成する（Ｓ２０４）。例えば、サービス提供サーバＸは、認証されたユーザのユーザ名を暗号化してコンテクスト情報を生成する。なお、コンテクスト情報の生成に用いるコンテクスト生成アルゴリズムは、すべてのサービス提供サーバ６に共通である。
【００３０】
また、サービス提供サーバ６は、コンテクスト情報を生成した場合、第１動作モードにおいても第２動作モードにおいても、受信したＨＴＴＰリクエストに応じたＨＴＴＰレスポンスを、生成したコンテクスト情報とともに、リダイレクト指示としてセッション管理サーバＸに返信するようになっている。そのため、サービス提供サーバＸは、ＨＴＴＰレスポンスをリダイレクト指示として、生成したコンテクスト情報とともにセッション管理サーバＸに返信する（Ｓ２０５Ａ）。但し、第１動作モードにおいては、サービス提供サーバ６は、図５に示す第１返信処理を実行するようになっている。そのため、サービス提供サーバＸは、生成したコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶されているか否かを判定する（Ｓ３０１）。そして、生成したコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶されていない場合（Ｓ３０１のＮ）、サービス提供サーバＸは、生成したコンテクスト情報を、自機を識別するセッションＩＤに関連づけて共有データベース１０に記憶し（Ｓ３０２）、ＨＴＴＰレスポンスをリダイレクト指示として、生成したコンテクスト情報とともに、セッション管理サーバＸに返信する（Ｓ３０３）。
【００３１】
一方、生成したコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶されている場合（Ｓ３０１のＹ）、サービス提供サーバＸは、ＨＴＴＰレスポンスを、コンテクスト情報だけでなく、そのコンテクスト情報に関連づけられたサービス提供サーバＸのセッションＩＤとともに、セッション管理サーバ４に返信する（Ｓ３０４）。なお、コンテクスト情報及びセッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００３２】
この段階では、上述のように、まだ、何のコンテクスト情報も共有データベースに記憶されていない（Ｓ３０１のＮ）。そのため、Ｓ２０５Ａにおいてサービス提供サーバＸは、ＨＴＴＰレスポンスを、コンテクスト情報だけとともに、セッション管理サーバＸに返信することとなる。
【００３３】
セッション管理サーバＸは、ＨＴＴＰレスポンスを受信すると、受信したＨＴＴＰレスポンスを、セッションＩＤとともに、クライアント装置Ｘに転送する（Ｓ２０６Ａ）。すなわち、第１動作モードでは、セッション管理サーバ４は、ＨＴＴＰレスポンスを受信すると、図６に示す応答送信処理を実行するようになっている。そのため、セッション管理サーバＸは、ＨＴＴＰレスポンスに含まれるクッキー情報中にセッションＩＤが含まれるか否かを判定する（Ｓ４０１）。そして、ＨＴＴＰレスポンスに含まれるクッキー情報中にセッションＩＤが含まれない場合（Ｓ４０１のＮ）、セッション管理サーバＸは、そのＨＴＴＰレスポンスを、ＨＴＴＰレスポンスの送信元であるサービス提供サーバＸのセッションＩＤとともに、クライアント装置Ｘに返信する（Ｓ４０２）。一方、ＨＴＴＰレスポンスに含まれるクッキー情報中にセッションＩＤが含まれる場合（Ｓ４０１のＹ）、セッション管理サーバＸは、そのＨＴＴＰレスポンスをそのままクライアント装置Ｘに返信する（Ｓ４０３）。
【００３４】
この段階では、ＨＴＴＰレスポンス中のクッキー情報にセッションＩＤが含まれない。そのため、Ｓ２０６Ａでセッション管理サーバＸは、ＨＴＴＰレスポンスを、サービス提供サーバＸのセッションＩＤとともにクライアント装置Ｘに返信することとなる。なお、セッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００３５】
ＨＴＴＰレスポンスを受信したクライアント装置Ｘは、ＨＴＴＰレスポンス中のクッキー情報を記憶装置に保存する。そして、クッキー情報を含むＨＴＴＰリクエストを、セッション管理サーバＸに送信する（Ｓ２０７）。クッキー情報には、サービス提供サーバＸのセッションＩＤと、コンテクスト情報と、が含まれる。
【００３６】
セッション管理サーバＸは、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをキューにエンキューする。そして、セッション管理サーバＸは、受信したＨＴＴＰリクエストをデキューする。上述のように、第１動作モードでは、セッション管理サーバ４は、受信したＨＴＴＰリクエストにクッキー情報が含まれる場合、そのクッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６にそのＨＴＴＰリクエストを転送するようになっている。この点、この段階では、ＨＴＴＰリクエストにクッキー情報が含まれる。そのため、セッション管理サーバＸは、ＨＴＴＰリクエストに含まれるクッキー情報中のセッションＩＤにより識別されるサービス提供サーバＸに、ＨＴＴＰリクエストを転送する（Ｓ２０８Ａ）。
【００３７】
サービス提供サーバＸは、セッション管理サーバＸから転送されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをキューにエンキューする。そして、サービス提供サーバＸは、受信したＨＴＴＰリクエストをデキューする。サービス提供サーバ６は、クッキー情報中にコンテクスト情報を含むＨＴＴＰリクエストを受信した場合、第１動作モードにおいても第２動作モードにおいても、図７に示す第２返信処理を実行するようになっている。そのため、サービス提供サーバＸは、Ｓ２０９のステップにおいて、図８に示す第２返信処理を実行する。本実施形態では、それぞれのサービス提供サーバ６の記憶装置に、コンテクスト情報とセッションの進行度を示すセッション進行度と、を関連づけたコンテクスト管理データベース（以下、コンテクスト管理ＤＢと表記する）が設けられる。サービス提供サーバＸは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されているか否かを判定する（Ｓ５０１）。そして、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されていない場合（Ｓ５０１のＮ）、クッキー情報中のコンテクスト情報を、現段階でのセッションの進行度を示すセッション進行度に関連づけてコンテクスト管理ＤＢに保存する（Ｓ５０２）。また、所定のＨＴＴＰレスポンスを、クッキー情報中のコンテクスト情報とともに、セッション管理サーバＸに送信する（Ｓ５０３）。具体的には、サービス提供サーバＸは、図３Ｂに示す設定画面のウェブページをＨＴＴＰレスポンスとして送信する。なお、コンテクスト情報は、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００３８】
一方、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されている場合（Ｓ５０１のＹ）、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度に応じたＨＴＴＰレスポンスを、コンテクスト情報とともにセッション管理サーバＸに送信する（Ｓ５０４）。また、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度を更新する。なお、コンテクスト情報は、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００３９】
この段階では、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されていない。そこで、クッキー情報中のコンテクスト情報を、現段階でのセッションの進行度を示すセッション進行度に関連づけてコンテクスト管理ＤＢに保存し（Ｓ５０２）、図３Ｂに示す設定画面のウェブページをＨＴＴＰレスポンスとして、クッキー情報中のコンテクスト情報とともに、セッション管理サーバＸに送信することとなる（Ｓ５０３）。
【００４０】
セッション管理サーバＸは、ＨＴＴＰレスポンスを受信する。上述したように、第１動作モードでは、セッション管理サーバ４は、ＨＴＴＰレスポンスを受信すると、図６に示す応答送信処理を実行するようになっている。そのため、セッション管理サーバＸは、Ｓ２１０Ａのステップにおいて、応答送信処理を実行する。この段階では、ＨＴＴＰレスポンス中のクッキー情報にセッションＩＤが含まれない。そのため、Ｓ２１０Ａでセッション管理サーバＸは、ＨＴＴＰレスポンスを、サービス提供サーバＸのセッションＩＤとともにクライアント装置Ｘに返信することとなる。なお、セッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。その結果、ＨＴＴＰレスポンスを受信したクライアント装置Ｘにおいて、ＨＴＴＰレスポンスに応じた画面が表示される。この段階では、図３Ｂに示す設定画面が表示される。また、ＨＴＴＰレスポンス中のクッキー情報が記憶装置に保存される。
【００４１】
その後、ユーザは、図３Ｃに示す案内画面が表示されるまで、クライアント装置Ｘにおいて、サービス提供サーバＸとのセッションを進める操作を行う。セッション管理システム１では、セッションを進める操作が行われるたびに、図８のシーケンス図に示す処理が実行される。
【００４２】
すなわち、クライアント装置Ｘは、記憶装置に保持しているクッキー情報を含むＨＴＴＰリクエストを、セッション管理サーバＸに送信する（Ｓ６０１）。クッキー情報には、サービス提供サーバＸのセッションＩＤと、コンテクスト情報と、が含まれる。
【００４３】
上述のように、第１動作モードでは、セッション管理サーバ４は、受信したＨＴＴＰリクエストにクッキー情報が含まれる場合、そのクッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６にそのＨＴＴＰリクエストを転送するようになっている。この点、この段階では、ＨＴＴＰリクエストにクッキー情報が含まれる。そのため、セッション管理サーバＸは、ＨＴＴＰリクエストに含まれるクッキー情報中のセッションＩＤにより識別されるサービス提供サーバＸに、ＨＴＴＰリクエストを転送する（Ｓ６０２Ａ）。
【００４４】
また、上述のように、サービス提供サーバ６は、クッキー情報中にコンテクスト情報を含むＨＴＴＰリクエストを受信した場合、第１動作モードにおいても第２動作モードにおいても、図７に示す第２返信処理を実行するようになっている。そのため、ＨＴＴＰリクエスト受信したサービス提供サーバＸは、第２返信処理を実行する（Ｓ６０３）。この段階では、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されている。そのため、サービス提供サーバＸは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度に応じたＨＴＴＰレスポンスを、コンテクスト情報とともにセッション管理サーバＸに返信する。また、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度を更新する。
【００４５】
また、上述のように、第１動作モードでは、セッション管理サーバ４は、ＨＴＴＰレスポンスを受信すると、図６に示す応答送信処理を実行するようになっている。そのため、ＨＴＴＰレスポンスを受信したセッション管理サーバＸは、応答送信処理を実行する（Ｓ６０４Ａ）。この段階では、ＨＴＴＰレスポンス中のクッキー情報にセッションＩＤが含まれない。そのため、セッション管理サーバＸは、ＨＴＴＰレスポンスを、サービス提供サーバＸのセッションＩＤとともにクライアント装置Ｘに返信することとなる（Ｓ４０２）。なお、セッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。その結果、ＨＴＴＰレスポンスを受信したクライアント装置Ｘにおいて、ＨＴＴＰレスポンスに応じた画面が表示される。
【００４６】
ここで、ユーザがまずクライアント装置２ａにて画像処理サービスにログインし、サービス提供サーバＸとの間で、図３Ｃに示す案内画面が表示されるまでセッションを進めた後、クライアント装置２ｂにて画像処理サービスにログインしなおす場合を想定する。この場合、クライアント装置２ｂから最初に送信されたＨＴＴＰリクエストが図２のＳ１０２においてサービス提供サーバＸとは異なるサービス提供サーバＹに転送される場合がある。しかし、以下の理由から、このような場合でも、サービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進めることができるようになっている。
【００４７】
図９は、第１動作モードにおいてクライアント装置Ｘたるクライアント装置２ｂから最初に送信されたＨＴＴＰリクエストがサービス提供サーバＹに転送された場合に、セッション管理システム１で実行される処理を示すシーケンス図である。この場合、まず、Ｓ２０１で送信されるＨＴＴＰリクエストのクッキー情報には、サービス提供サーバＹのセッションＩＤが含まれる。そのため、図２とは異なり、Ｓ２０２Ａにおいて、ＨＴＴＰリクエストは、サービス提供サーバＹに転送されてしまう。
【００４８】
しかし、共有データベース１０には、Ｓ２０４で生成されるコンテクスト情報と同一のコンテクスト情報が記憶済である。そのため、Ｓ２０５Ａの第１返信処理（図５参照）において、Ｓ３０４のステップが実行されることとなるため、サービス提供サーバＹは、ＨＴＴＰレスポンスを、コンテクスト情報だけでなく、そのコンテクスト情報に関連づけられたサービス提供サーバＸのセッションＩＤとともに、セッション管理サーバＸに返信することになる。
【００４９】
しかも図６に示す応答返信処理では、上述したように、セッション管理サーバ４は、クッキー情報中にセッションＩＤを含むＨＴＴＰレスポンスを受信した場合（Ｓ４０１のＹ）、ＨＴＴＰレスポンスをそのままクライアント装置Ｘに転送する（Ｓ４０３）。そのため、Ｓ２０６ＡでＨＴＴＰレスポンスを受信したセッション管理サーバＸは、受信したＨＴＴＰレスポンスをそのままクライアント装置Ｘを転送する。そのため、Ｓ２０６Ａでは、ＨＴＴＰレスポンスの送信元であるサービス提供サーバＹのセッションＩＤではなく、サービス提供サーバＸのセッションＩＤが、クライアント装置Ｘに送信されることとなる。そのため、以後のＳ２０７やＳ６０１で、クライアント装置Ｘから送信されるＨＴＴＰリクエストにサービス提供サーバＸのセッションＩＤが含まれることになり、その結果、以後のＳ２０８ＡやＳ６０２ＡでＨＴＴＰリクエストが常にサービス提供サーバＸに転送されることになる。従って、クライアント装置２ｂにサービスにログインし直したユーザは、クライアント装置２ａを用いてサービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進めることができる。そのため、例えば、ログインし直したとき、図３Ｂに示す設定画面ではなく、図３Ｃの案内画面の次に表示されるべき、図３Ｄの指示待ち画面が表示される。また、セッションを進める操作が行われるたびに、図８のシーケンス図に示すようにして、サービス提供サーバＸとのセッションが進められることになる。
【００５０】
このように、第１動作モードでは、コンテクスト情報が、そのコンテクスト情報を最初に生成したサービス提供サーバ６のセッションＩＤに関連づけて共有データベース１０に保存される（図５のＳ３０２参照）。その上、サービス提供サーバ６が、コンテクスト情報を生成した場合に、生成したコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶済であれば、ＨＴＴＰレスポンスを、そのコンテクスト情報に関連づけて記憶されるセッションＩＤとともに返信する（図５のＳ３０４参照）。そのため、クライアント装置２ｂでサービスにログインし直したユーザは、クライアント装置２ａを用いてサービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進めることができる。
【００５１】
［第２動作モード］
第２動作モードにおいても、クライアント装置２ｂにサービスにログインし直したユーザは、クライアント装置２ａを用いてサービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進めることができるようになっている。しかし、第１動作モードとはやり方が異なる。すなわち、第１動作モードでは、ＨＴＴＰリクエストの送信先をサービス提供サーバＹからサービス提供サーバＸに戻す作業をサービス提供サーバ６が主体となって行っていたが、第２動作モードでは、この作業を、セッション管理サーバ４が主体となって行う。
【００５２】
図１０は、第２動作モードにおいて、ログイン画面でユーザが上記所定のボタンを押した場合に、セッション管理システム１において実行される処理を示すシーケンス図である。図１１は、第２動作モードにおいて、セッションを進める操作が行われるたびに、セッション管理システム１において実行される処理を示すシーケンス図である。
【００５３】
すなわち、第２動作モードでは、サービス提供サーバ６は、認証情報を含むＨＴＴＰリクエストを受信した場合に、図５に示す第１返信処理を実行せずに、ただ単に、ＨＴＴＰレスポンスをリダイレクト指示として、認証情報から生成したコンテクスト情報とともに、ＨＴＴＰリクエストの送信元のセッション管理サーバ４に返信するようになっている。そのため、Ｓ２０５Ａの代わりにＳ２０５Ｂが実行され、Ｓ２０５Ｂにおいて、サービス提供サーバＸは、ただ単に、ＨＴＴＰレスポンスをリダイレクト指示として、コンテクスト情報とともに、セッション管理サーバＸに返信することとなる。
【００５４】
また、第２動作モードでは、セッション管理サーバ４は、ＨＴＴＰレスポンスを受信した場合に、図６に示す応答送信処理を実行せずに、ただ単に、ＨＴＴＰレスポンスを、ＨＴＴＰレスポンスの送信元のサービス提供サーバ６のセッションＩＤとともに、クライアント装置２に転送するようになっている。そのため、Ｓ２０６Ａ、Ｓ２１０Ａ、及びＳ６０４Ａの代わりに、Ｓ２０６Ｂ、Ｓ２１０Ｂ、Ｓ６０４Ｂが実行され、これらにおいて、セッション管理サーバＸは、ＨＴＴＰレスポンスを、サービス提供サーバＸのセッションＩＤとともに、クライアント装置Ｘに転送することとなる。
【００５５】
しかも、第１動作モードでは、セッション管理サーバ４は、クッキー情報中にセッションＩＤを含むＨＴＴＰリクエストを受信した場合に、ただ単に、そのリクエストを、クッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６に転送していたが、第２動作モードでは、図１２に示す転送処理を実行するようになっている。そのため、Ｓ２０２Ａ、Ｓ２０８Ａ、及びＳ６０２Ａの代わりに、Ｓ２０２Ｂ、Ｓ２０８Ｂ、及びＳ６０２Ｂが実行され、これらにおいて、転送処理が実行されることとなる。
【００５６】
図１２は、転送処理を示すフロー図である。まず、セッション管理サーバＸは、受信したＨＴＴＰリクエストのクッキー情報にコンテクスト情報が含まれるか否かを判定する（Ｓ７０１）。クッキー情報にコンテクスト情報が含まれない場合（Ｓ７０１のＮ）、セッション管理サーバＸは、クッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６に、ＨＴＴＰリクエストを転送する（Ｓ７０２）。Ｓ２０１で送信されるＨＴＴＰリクエストのクッキー情報には、コンテクスト情報が含まれないがサービス提供サーバＸのセッションＩＤが含まれる。そのため、Ｓ２０２Ｂにおいては、ＨＴＴＰリクエストが、サービス提供サーバＸに転送されることとなる。
【００５７】
一方、クッキー情報にコンテクスト情報が含まれる場合（Ｓ７０１のＹ）、セッション管理サーバＸは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶済であるか否かを判定する（Ｓ７０３）。そして、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶されていない場合（Ｓ７０３のＮ）、セッション管理サーバＸは、Ｓ７０２のステップと同様にしてクッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６にＨＴＴＰリクエストを転送し（Ｓ７０４）、クッキー情報中のコンテクスト情報とセッションＩＤとを関連づけて共有データベース１０に保存する（Ｓ７０５）。Ｓ２０７で送信されるＨＴＴＰリクエストのクッキー情報には、コンテクスト情報とサービス提供サーバＸのセッションＩＤとが含まれる。しかし、このコンテクスト情報と同一のコンテクスト情報はまだ共有データベース１０に記憶されていない。そのため、Ｓ２０８Ｂにおいては、ＨＴＴＰリクエストが、サービス提供サーバＸに転送されることとなる。
【００５８】
一方、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶済である場合（Ｓ７０３のＹ）、セッション管理サーバＸは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッションＩＤにより識別されるサービス提供サーバ６に、ＨＴＴＰリクエストを転送する（Ｓ７０６）。Ｓ６０１で送信されるＨＴＴＰリクエストのクッキー情報には、コンテクスト情報とサービス提供サーバＸのセッションＩＤとが含まれる。しかも、このコンテクスト情報と同一のコンテクスト情報がサービス提供サーバＸのセッションＩＤに関連づけて共有データベース１０に記憶済である。そのため、Ｓ６０２Ｂにおいては、ＨＴＴＰリクエストが、サービス提供サーバＸに転送されることとなる。
【００５９】
第２動作モードにおいても、ユーザがサービスにログインし直そうとしたときにＳ１０２のステップでＨＴＴＰリクエストがサービス提供サーバＹに転送されると、Ｓ２０２ＢのステップでＨＴＴＰリクエストがサービス提供サーバＹに転送されてしまう。しかし、Ｓ２０７やＳ６０１で送信されるＨＴＴＰリクエストのクッキー情報に含まれるコンテクスト情報は、サービス提供サーバＸのセッションＩＤに関連づけて既に共有データベース１０に記憶済である。そのため、Ｓ２０８ＢやＳ６０２ＢでＨＴＴＰリクエストがサービス提供サーバＸが転送されることとなるので、ユーザがサービス提供サーバＸと進めていたセッションが、再度サービス提供サーバＸと進められることとなる。
【００６０】
このように、第２動作モードでも、コンテクスト情報が、そのコンテクスト情報を最初に生成したサービス提供サーバ６のセッションＩＤに関連づけて共有データベース１０に保存される（図１２のＳ７０５参照）。その上、セッション管理サーバ４が、コンテクスト情報を含むＨＴＴＰリクエストを受信した場合、ＨＴＴＰリクエスト中のコンテクスト情報と同一のコンテクスト情報が共有データベース１０に記憶済であれば、それに関連づけて記憶されるセッションＩＤにより識別されるサービス提供サーバ６に、ＨＴＴＰリクエストを転送する（図１２のＳ７０６参照）。そのため、第２動作モードにおいても、クライアント装置２ｂでサービスにログインし直したユーザは、クライアント装置２ａを用いてサービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進められる。
【００６１】
［動作モード管理サーバ］
ところで、サービス提供サーバ６におけるＨＴＴＰリクエストの処理効率が悪いと、サービス提供サーバ６がボトルネックとなるためサービス提供サーバ６におけるリクエスト処理時間（ＨＴＴＰリクエストを受信してからＨＴＴＰレスポンスを送信するまで時間）が長くなり、レスポンスタイムが長くなる。反対に、セッション管理サーバ４におけるＨＴＴＰリクエストの処理効率が悪いと、セッション管理サーバ４がボトルネックとなるためセッション管理サーバ４におけるリクエスト振り分け時間（ＨＴＴＰリクエストを受信してからそれをサービス提供サーバ６に転送するまでの時間）が長くなり、レスポンスタイムが長くなる。
【００６２】
そこで、セッション管理システム１では、動作モード管理サーバ１２が、セッション管理サーバ４におけるＨＴＴＰリクエストの処理効率に比してサービス提供サーバ６におけるＨＴＴＰリクエストの処理効率が悪い場合に、サービス提供サーバ６に掛かっている負荷を下げるべく、動作モードを第１動作モードから第２動作モードへと切り替えるようになっている。逆に、サービス提供サーバ６におけるＨＴＴＰリクエストの処理効率に比してセッション管理サーバ４におけるＨＴＴＰリクエストの処理効率が悪い場合に、セッション管理サーバ４の負荷を下げるべく、動作モードを第２動作モードから第１動作モードへと切り替えるようになっている。こうすることで、レスポンスタイムの長時間化を抑制している。以下、この点について説明する。
【００６３】
図１３は、動作モード管理サーバ１２にて実現される機能群を示す機能ブロック図である。同図に示すように、動作モード管理サーバ１２では、第１パフォーマンス情報取得部１４、第２パフォーマンス情報取得部１６、比較部１８、及び動作モード切替部２０が実現される。これらは、記憶装置に記憶されるプログラムに従って動作するマイクロプロセッサにより実現される。
【００６４】
第１パフォーマンス情報取得部１４は、サービス提供サーバ６におけるＨＴＴＰリクエストの処理効率を表す第１パフォーマンス情報Ｃ１を取得する（後述する図１４のＳ８０５乃至Ｓ８０８参照）。ここで、第１パフォーマンス情報Ｃ１は、サービス提供サーバ６一台当たりのロードアベレージ、過去一定時間内に受信したＨＴＴＰリクエスト一つ当たりのリクエスト処理時間などである。ロードアベレージは、ＣＰＵ使用率とも呼ばれる。本実施形態では、ロードアベレージや過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト処理時間が監視項目として各サービス提供サーバ６に登録されており、第１パフォーマンス情報取得部１４は、各サービス提供サーバ６から受信した監視結果に基づいて第１パフォーマンス情報Ｃ１を取得する。ここでは、第１パフォーマンス情報取得部１４は、過去一定時間内に受信したＨＴＴＰリクエスト一つあたりのリクエスト処理時間を、第１パフォーマンス情報Ｃ１として取得しており、第１パフォーマンス情報Ｃ１の値が大きいほど、処理効率が悪く異なる。なお、第１パフォーマンス情報Ｃ１は、過去一定時間内に受信したＨＴＴＰリクエスト一つ当たりのリクエスト処理時間の変化率、及び過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト処理時間の分散値などであってもよい。
【００６５】
第２パフォーマンス情報取得部１６は、セッション管理サーバ４におけるＨＴＴＰリクエストの処理効率を表す第２パフォーマンス情報Ｃ２を取得する（後述する図１４のＳ８０１乃至Ｓ８０４参照）。第２パフォーマンス情報Ｃ２は、セッション管理サーバ４一台あたりのロードアベレージ、過去一定時間内に受信したＨＴＴＰリクエスト一つあたりのリクエスト振り分け時間などである。ロードアベレージや過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト振り分け時間が監視項目として各セッション管理サーバ４に登録されており、第２パフォーマンス情報取得部１６は、各セッション管理サーバ４から受信した監視結果に基づいて第２パフォーマンス情報Ｃ２を取得する。ここでは、第２パフォーマンス情報取得部１６は、過去一定時間内に受信したＨＴＴＰリクエスト一つあたりのリクエスト振り分け時間を、第２パフォーマンス情報Ｃ２として取得しており、第２パフォーマンス情報Ｃ２の値が大きいほど、処理効率が悪くなる。なお、過去一定時間内に受信したＨＴＴＰリクエスト一つあたりのリクエスト振り分け時間の変化率、及び過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト振り分け時間の分散値などである。
【００６６】
比較部１８は、第１パフォーマンス情報Ｃ１と第２パフォーマンス情報Ｃ２とを比較する。また、動作モード切替部２０は、比較部１８の比較結果に応じて、動作モードを切り替える。本実施形態では、第１パフォーマンス情報Ｃ１であるＨＴＴＰリクエスト一つあたりのリクエスト処理時間が第２パフォーマンス情報Ｃ２であるＨＴＴＰリクエスト一つあたりのリクエスト振り分け時間を超えているとき、セッション管理サーバ４に比してサービス提供サーバ６の処理効率が悪くサービス提供サーバ６がボトルネックとなると考えられる。そのため、この場合、動作モード切替部２０は、サービス提供サーバ６の負荷を下げるべく、動作モードを第１動作モードから第２動作モードへと切り替える。こうして、第１パフォーマンス情報Ｃ１により表される処理効率が第２パフォーマンス情報Ｃ２により表される処理効率より低いとき、動作モードが第１動作モードから第２動作モードへと切り替えられる。
【００６７】
一方、第１パフォーマンス情報Ｃ１が第２パフォーマンス情報Ｃ２以下であるとき、サービス提供サーバ６に比してセッション管理サーバ４の処理効率が悪くセッション管理サーバ４がボトルネックとなると考えられる。この場合、動作モード切替部２０は、セッション管理サーバ４の負荷を下げるべく、動作モードを第２動作モードから第１動作モードへと切り替える。こうして、第２パフォーマンス情報Ｃ２により表される処理効率が第１パフォーマンス情報Ｃ１により表される処理効率以上であるとき、動作モードが第２動作モードから第１動作モードへと切り替えられる。
【００６８】
図１４は、動作モード管理サーバ１２にて実行される処理を示すフロー図である。図１４に示す処理は、一定時間間隔で繰り返し実行される。まず、第２パフォーマンス情報取得部１６が、各セッション管理サーバ４に要求を送り、監視結果として、過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト振り分け時間を、各セッション管理サーバ４から受信する（Ｓ８０１）。また、第２パフォーマンス情報取得部１６は、監視結果に基づいて、セッション管理システム１に含まれるセッション管理サーバ群全体で、過去一定時間内に受信したＨＴＴＰリクエストの総数を総リクエスト数Ｓ１として算出する（Ｓ８０２）。また、第２パフォーマンス情報取得部１６は、監視結果に基づいて、セッション管理システム１に含まれるセッション管理サーバ群全体で、過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト振り分け時間の総和を総振り分け時間Ｔ１として算出する（Ｓ８０３）。そして、第２パフォーマンス情報取得部１６は、総振り分け時間Ｔ１を総リクエスト数Ｓ１で除算した商（すなわち、過去一定時間に受信したＨＴＴＰ一つあたりのリクエスト振り分け時間）を、第２パフォーマンス情報Ｃ２として算出する（Ｓ８０４）。
【００６９】
そして、第１パフォーマンス情報取得部１４が、各サービス提供サーバ６に要求を送り、監視結果として、過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト処理時間を、各サービス提供サーバ６から受信する（Ｓ８０５）。また、第１パフォーマンス情報取得部１４は、監視結果に基づいて、セッション管理システム１に含まれるサービス提供サーバ群全体で、過去一定時間に受信したＨＴＴＰリクエストの総数を総リクエスト数Ｓ２として算出する（Ｓ８０６）。また、第１パフォーマンス情報取得部１４は、監視結果に基づいて、セッション管理システム１に含まれるサービス提供サーバ群全体で、過去一定時間内に受信したＨＴＴＰリクエストそれぞれのリクエスト処理時間の総和を総リクエスト処理時間Ｔ２として算出する（Ｓ８０７）。そして、第１パフォーマンス情報取得部１６は、総リクエスト処理時間Ｔ２を総リクエスト数Ｓ２で除算した商（すなわち、過去一定時間内に受信したＨＴＴＰ一つあたりのリクエスト処理時間）を、第１パフォーマンス情報Ｃ１として算出する（Ｓ８０８）。
【００７０】
こうして、第１パフォーマンス情報Ｃ１と第２パフォーマンス情報Ｃ２とが算出されると、比較部１８が、第１パフォーマンス情報Ｃ１が第２パフォーマンス情報Ｃ２より大きいか否かを判定する（Ｓ８０９）。Ｓ８０９では、セッション管理サーバ４に比してサービス提供サーバ６の処理効率が悪いかどうかが判定されている。
【００７１】
第１パフォーマンス情報Ｃ１が第２パフォーマンス情報Ｃ２より大きい場合（Ｓ８０９のＹ）、動作モード切替部２０が、以下に説明する処理を実行する。すなわち、動作モード切替部２０は、動作モード管理サーバ１２の記憶装置に記憶されるモード情報に基づいて、現在の動作モードが第１動作モードであるか否かを判定する（Ｓ８１０Ａ）。そして、現在の動作モードが第１動作モードである場合（Ｓ８１０ＡのＹ）、動作モードを第２動作モードへと切り替える（Ｓ８１１Ａ）。すなわち、Ｓ８１１Ａで動作モード切替部２０は、記憶装置に記憶されるモード情報を更新する。また、動作モードの切替を指示する切替指示を、各セッション管理サーバ４及び各サービス提供サーバ６に送信する。切替指示を受信した各セッション管理サーバ４及び各サービス提供サーバ６では、記憶装置に記憶されるモード情報が更新され、ＨＴＴＰリクエストの受付が一時的に停止されることとなる。なお、現在の動作モードが第２動作モードである場合（Ｓ８１０ＡのＮ）、処理が終了される。
【００７２】
一方、第１パフォーマンス情報Ｃ１が第２パフォーマンス情報Ｃ２以下である場合（Ｓ８０９のＮ）、動作モード切替部２０は、以下に説明する処理を実行する。すなわち、動作モード切替部２０は、動作モード管理サーバ１２の記憶装置に記憶されるモード情報に基づいて、現在の動作モードが第２動作モードであるか否かを判定する（Ｓ８１０Ｂ）。そして、現在の動作モードが第２動作モードである場合（Ｓ８１０ＢのＹ）、動作モードを第１動作モードへと切り替える（Ｓ８１１Ｂ）。すなわち、Ｓ８１１Ｂで動作モード切替部２０は、記憶装置に記憶されるモード情報を更新する。また、上述した切替指示を、各セッション管理サーバ４及び各サービス提供サーバ６に送信する。切替指示を受信した各セッション管理サーバ４及び各サービス提供サーバ６では、記憶装置に記憶されるモード情報が更新され、ＨＴＴＰリクエストの受付が一時的に停止されることとなる。なお、現在の動作モードが第１動作モードである場合（Ｓ８１０ＢのＮ）、処理が終了されることとなる。
【００７３】
このように、動作モード管理サーバ１２は、セッション管理サーバ４におけるＨＴＴＰリクエストの処理効率に比してサービス提供サーバ６におけるＨＴＴＰリクエストの処理効率が悪いとき、動作モードを第１動作モードから第２動作モードへと切り替える一方で、サービス提供サーバ６におけるＨＴＴＰリクエストの処理効率に比してセッション管理サーバ４におけるＨＴＴＰリクエストの処理効率が悪いときは、動作モードを第２動作モードから第１動作モードへと切り替える。そのため、セッション管理システム１では、クライアント装置２ｂでサービスにログインし直したユーザが、クライアント装置２ａを用いてサービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進められるだけでなく、レスポンスタイムの長時間化が抑制されるようにもなる。
【００７４】
なお、本発明の実施形態は、上記実施形態だけに限らない。
【００７５】
例えば、サービス提供サーバ６におけるＨＴＴＰリクエストの処理効率を表す情報であれば、第１パフォーマンス情報は、どのような情報であってもよい。セッション管理サーバ４におけるＨＴＴＰリクエストの処理効率を表す情報であれば、第２パフォーマンス情報は、どのような情報であってもよい。
【００７６】
また、共有データベース１０が、各セッション管理サーバ４の記憶装置にも備えられていてもよい。そして、第２動作モードにおいてセッション管理サーバ４が図１２に示す転送処理を行う際（例えば、Ｓ７０３、Ｓ７０５及びＳ７０６など）、自機の記憶装置に備えられた共有データベース１０にアクセスするようにしてもよい。この場合、所定のタイミング（例えば動作モードが切り替わるタイミング）で、全共有データベース１０をマージしたデータベースを生成し、生成したデータベースで全共有データベース１０を上書き更新すればよい。
【００７７】
また、動作モード管理サーバ１２に、オートスケーリング機能を持たせてもよい。例えば、サービス提供サーバ６の処理効率がセッション管理サーバ４のそれより低いが現在の動作モードが第２動作モードである場合（図１４のＳ８１０ＡのＮ）、セッション管理システム１にサービス提供サーバ６を追加してもよい。また、例えば、セッション管理サーバ４の処理効率がサービス提供サーバ６のそれより低いが現在の動作モードが第１動作モードである場合（Ｓ８１０ＢのＮ）、セッション管理システム１にセッション管理サーバ４を追加してもよい。
【００７８】
また、第１パフォーマンス情報取得部１４、第２パフォーマンス情報取得部１６、比較部１８、及び動作モード切替部２０は、それぞれ、動作モード管理サーバ１２以外の装置（例えば、セッション管理サーバ４、サービス提供サーバ６）にて実現されてもよい。すなわち、これらの機能は、必ずしも動作モード管理サーバ１２にて実現されなくてもよい。
【符号の説明】
【００７９】
１  セッション管理システム、２，２ａ，２ｂ  クライアント装置、４  セッション管理サーバ、６  サービス提供サーバ、８  ユーザデータベース、１０  共有データベース、１２  動作モード管理サーバ、１４  第１パフォーマンス情報取得部、１６  第２パフォーマンス情報取得部、１８  比較部、２０  動作モード切替部。
【図１】
2015121933.tif 000003
【図２】
2015121933.tif 000004
【図３Ａ】
2015121933.tif 000005
【図３Ｂ】
2015121933.tif 000006
【図３Ｃ】
2015121933.tif 000007
【図３Ｄ】
2015121933.tif 000008
【図４】
2015121933.tif 000009
【図５】
2015121933.tif 000010
【図６】
2015121933.tif 000011
【図７】
2015121933.tif 000012
【図８】
2015121933.tif 000013
【図９】
2015121933.tif 000014
【図１０】
2015121933.tif 000015
【図１１】
2015121933.tif 000016
【図１２】
2015121933.tif 000017
【図１３】
2015121933.tif 000018
【図１４】
2015121933.tif 000019