(57)【要約】【課題】サーバが並列に複数設置されるサーバシステムにおいて、クライアントとのセッションの状態をサーバ間で引き継ぐ技術を提供することを課題とする。【解決手段】サーバ２は、クライアント６とセッションが維持されているか否かを確認するセッション確認手段１４と、データベース４にセッション情報が蓄積されているか否かを確認するセッション情報照会手段１５と、データベース４に対して前記クライアントのセッション情報を要求するセッション再生手段１６と、セッション再生手段１６によってセッション情報記憶手段１３にクライアント６のセッション情報が記憶されると、クライアントからのリクエストを承認するアクセス承認手段１７と、を備える。【選択図】図２
2008152471.tif 000002
【特許請求の範囲】
【請求項１】
クライアントとデータベースとの間に並列に複数設置されるサーバであって、
前記クライアントに提供するコンテンツを有するウェブサイトと、
前記ウェブサイトにアクセスする前記クライアントとのセッションの状態に関する情報であるセッション情報を記憶するセッション情報記憶手段と、
前記クライアントが前記ウェブサイトへのアクセスをリクエストすると、前記セッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会手段と、
前記セッション情報照会手段において前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認手段と、
を備えるサーバ。
【請求項２】
前記アクセス承認手段において前記クライアントからの前記リクエストが承認されるまでは不特定のクライアントに対して提供される不特定のコンテンツを該クライアントに送信し、前記アクセス承認手段において前記クライアントからの前記リクエストが承認されたら該クライアントに対してのみ提供される特定のコンテンツを該クライアントに送信するコンテンツ送信手段、を更に備える請求項１に記載のサーバ。
【請求項３】
前記セッション情報照会手段において前記セッション情報が蓄積されていないことが確認されると、前記クライアントとのセッションを維持するためのセッション情報を新たに生成して前記セッション情報記憶手段に記憶させるセッション発生手段を更に備え、
前記アクセス承認手段は、前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション発生手段または前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認する、
請求項１または２に記載のサーバ。
【請求項４】
前記セッション発生手段において新たなセッション情報が生成されると、該セッション情報を前記データベースに通知して蓄積させるデータベース更新手段を更に備える請求項３に記載のサーバ。
【請求項５】
前記ウェブサイトは、ショッピングサイトであり、
前記セッション情報は、前記クライアントから送られる購入商品のデータを含む、
請求項１から４の何れかに記載のサーバ。
【請求項６】
クライアントとデータベースとの間に並列に複数設置されるサーバが行う情報処理方法であって、
前記クライアントがウェブサイトへのアクセスをリクエストすると、クライアントとのセッションの状態に関する情報であるセッション情報が記憶されるセッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション
確認ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会ステップと、
前記セッション情報照会ステップにおいて前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生ステップによって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認ステップと、
を有する情報処理方法。
【請求項７】
クライアントとデータベースとの間に並列に複数設置されるサーバ用のプログラムであって、
サーバコンピュータに、
前記クライアントがウェブサイトへのアクセスをリクエストすると、クライアントとのセッションの状態に関する情報であるセッション情報が記憶されるセッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会ステップと、
前記セッション情報照会ステップにおいて前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生ステップによって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認ステップと、
を実行させるサーバ用プログラム。
【請求項８】
クライアントからのリクエストを複数のサーバに分散する負荷分散手段と、
前記負荷分散手段に接続される複数のサーバと、
前記複数のサーバに接続されるデータベースと、を備えるサーバシステムであって、
前記負荷分散手段は、
一のクライアントからの複数のリクエストを一のサーバに振り分けるセッション維持機能を有し、
前記サーバは、
クライアントに提供するコンテンツを有するウェブサイトと、
前記ウェブサイトにアクセスする前記クライアントとのセッションの状態に関する情報であるセッション情報を記憶するセッション情報記憶手段と、
前記クライアントが前記ウェブサイトへのアクセスをリクエストすると、前記セッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会手段と、
前記セッション情報照会手段において前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認手段と、を有し、
前記データベースは、
前記セッション情報を蓄積するセッション情報蓄積手段を有する、
サーバシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ、情報処理方法、サーバ用プログラム、およびサーバシステムに関する。
【背景技術】
【０００２】
今日、インターネット上のウェブサイトでは様々なコンテンツやサービスが提供されている。ユーザは、所望のウェブサイトにアクセスし、コンテンツやサービスの提供を受ける。
【０００３】
コンテンツや配信するウェブサイトでは、不正アクセスを防止するため、ウェブサイトにアクセスしたユーザに対してパスワード等の入力を要求し、ユーザの認証を行っている。例えば、特許文献１には、ユーザしか知り得ない仮パスワードの入力を要求することで、なりすましによる不正アクセスを防止する技術が記載されている。また、特許文献２には、サーバに置かれたユーザ識別情報操作部においてユーザ情報が更新されると、各クライアントに置かれたユーザ登録簿が更新されるように構成されたネットワークシステムが記載されている。また、特許文献３には、各メディアサーバが利用登録を受け付けたユーザのＩＤ管理情報を一括して受信するセンタサーバを備え、各メディアサーバのＩＤ管理情報を定期的に更新することで、各利用者がいずれのメディアサーバにもアクセス可能なように構成されるサーバシステムが記載されている。
【特許文献１】特開２００１−３３７９２２号公報
【特許文献２】特開平８−２２１３６４号公報
【特許文献３】特開平８−２５５１３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
インターネットの普及に伴い、ウェブサイトへのアクセス数も増加の一途を辿っている。ウェブサイトを運用するサーバの保守管理等を容易にするため、これらサーバを複数台設置して負荷を分散することが行われている。サーバの負荷が分散されているため、１台のサーバが故障等した場合であっても、その他のサーバが利用者からのリクエストを処理する。
【０００５】
ショッピングサイトや株式サイトのように、利用者とウェブサイトとのセッションを維持した状態で運用されるサーバの場合、セッションを維持しているサーバ内にはユーザがカートに入れた商品の数量等のデータが蓄積される。しかし、負荷分散型のサーバシステムの場合、個々のサーバに蓄積されているこれら商品数量等の情報は各サーバに共有化されていない。従って、利用者とセッションを維持しているサーバが故障等によってダウンした場合、負荷分散装置等によって利用者へのサービスの提供はその他のサーバに引き継がれるものの、故障したサーバに蓄積されていたカートの商品情報等は引き継がれない。このため、利用者は、再びカートに商品等を入れ直さなければならず、利用者の不満を招いていた。
【０００６】
そこで本発明は、サーバが並列に複数設置されるサーバシステムにおいて、クライアントとのセッションの状態をサーバ間で引き継ぐ技術を提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明は上記の課題を解決するため、クライアントとセッションが維持されていないとデータベースを照会し、データベースに蓄積されているセッション情報を確認する。そし
て、データベースに蓄積されているセッション情報を基に、クライアントとのセッションを復元する。
【０００８】
詳細には、クライアントとデータベースとの間に並列に複数設置されるサーバであって、前記クライアントに提供するコンテンツを有するウェブサイトと、前記ウェブサイトにアクセスする前記クライアントとのセッションの状態に関する情報であるセッション情報を記憶するセッション情報記憶手段と、前記クライアントが前記ウェブサイトへのアクセスをリクエストすると、前記セッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認手段と、前記セッション確認手段において前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会手段と、前記セッション情報照会手段において前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生手段と、前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認手段と、を備える。
【０００９】
本発明に係るサーバは、クライアントとデータベースとの間に並列に複数設置されるようなサーバシステム（例えば、負荷分散方式のサーバシステム。）に適用されることを前提とする。複数設置されるサーバは、何れも同一のデータベースに繋がれている。なお、データベースは、一つのものに限定されるものでなく、複数あってもよい。
【００１０】
本発明に係るサーバは、その内部にウェブサイトが構築されている。また、サーバは、セッション情報記憶手段、セッション確認手段、セッション情報照会手段、セッション再生手段、およびアクセス承認手段を備える。
【００１１】
クライアントがサーバにリクエストを送ると、セッション確認手段がこれを検知し、セッション情報記憶手段を照会してクライアントとのセッションの状態を確認する。セッションが維持されていることが確認されれば、アクセス承認手段がクライアントからのリクエストを承認する。
【００１２】
ここで、セッション確認手段によってセッションが維持されていないことが確認される場合がある。例えば、クライアントが新規にアクセスしてきた場合や、他のサーバがダウンし、このサーバとセッションを維持していたクライアントからのリクエストの振り分けが変更された場合である。
【００１３】
そこで、セッション確認手段によってセッションが維持されていないことが確認された場合、セッション情報照会手段は、データベースを照会する。ダウンしたサーバとクライアントとのセッション情報がデータベース内に蓄積されていれば、このセッション情報を基にクライアントとのセッションを維持することができるからである。
【００１４】
セッション情報照会手段によってセッション情報が蓄積されていることが確認されると、セッション再生手段は、このセッション情報に取得する。サーバは、データベースから取得したセッション情報に基づき、クライアントとセッションを保つことが可能になる。
【００１５】
以上により、本発明に係るサーバを並列に複数設置した場合、クライアントとのセッションの状態をサーバ間で引き継ぐことが可能であるため、クライアントのリクエストを受
け付けるサーバが途中で変更されても、クライアントとのセッションを維持することが可能である。
【００１６】
また、前記サーバは、前記アクセス承認手段において前記クライアントからの前記リクエストが承認されるまでは不特定のクライアントに対して提供される不特定のコンテンツを該クライアントに送信し、前記アクセス承認手段において前記クライアントからの前記リクエストが承認されたら該クライアントに対してのみ提供される特定のコンテンツを該クライアントに送信するコンテンツ送信手段、を更に備えるようにしてもよい。
【００１７】
これによれば、クライアントとのセッションの状態に応じたコンテンツを送ることが可能である。
【００１８】
また、前記サーバは、前記セッション情報照会手段において前記セッション情報が蓄積されていないことが確認されると、前記クライアントとのセッションを維持するためのセッション情報を新たに生成して前記セッション情報記憶手段に記憶させるセッション発生手段を更に備え、前記アクセス承認手段は、前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション発生手段または前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するようにしてもよい。
【００１９】
これによれば、クライアントと新たなセッションを構築することが可能になる。
【００２０】
また、前記サーバは、前記セッション発生手段において新たなセッション情報が生成されると、該セッション情報を前記データベースに通知して蓄積させるデータベース更新手段を更に備えるようにしてもよい。
【００２１】
これによれば、クライアントとサーバとの間でセッションが構築されるとセッション情報がデータベースに蓄積されるため、新たに生成されたクライアントとのセッションの状態をサーバ間で引き継ぐことが可能になる。
【００２２】
また、前記ウェブサイトは、ショッピングサイトであり、前記セッション情報は、前記クライアントから送られる購入商品のデータを含むようにしてもよい。
【００２３】
これによれば、クライアントがショッピングサイトで買い物をしているときにサーバが切り替わっても、クライアントがカートに入れていた購入商品のデータが他のサーバにも引き継がれるため、クライアントに負担をかけることがなくなる。
【００２４】
また、本発明は、以上の機能の何れかを行う情報処理方法であってもよい。また、本発明は、以上の機能の何れかをサーバコンピュータに実現させるサーバ用プログラムであってもよい。また、本発明は、サーバ用プログラムを記録したコンピュータ読み取り可能な記録媒体であってもよい。
【００２５】
また、本発明は、クライアントからのリクエストを複数のサーバに分散する負荷分散手段と、前記負荷分散手段に接続される複数のサーバと、前記複数のサーバに接続されるデータベースと、を備えるサーバシステムであって、前記負荷分散手段は、一のクライアントからの複数のリクエストを一のサーバに振り分けるセッション維持機能を有し、前記サーバは、クライアントに提供するコンテンツを有するウェブサイトと、前記ウェブサイトにアクセスする前記クライアントとのセッションの状態に関する情報であるセッション情報を記憶するセッション情報記憶手段と、前記クライアントが前記ウェブサイトへのアク
セスをリクエストすると、前記セッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認手段と、前記セッション確認手段において前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会手段と、前記セッション情報照会手段において前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生手段と、前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認手段と、を有し、前記データベースは、前記セッション情報を蓄積するセッション情報蓄積手段を有するようにしてもよい。
【発明の効果】
【００２６】
サーバが並列に複数設置されるサーバシステムにおいて、クライアントとのセッションの状態をサーバ間で引き継ぐことが可能になる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照して本発明の好適な実施の形態に係るサーバ、情報処理方法、サーバ用プログラム、およびサーバシステムを説明する。本実施形態は例示であり、本発明はこれらに限定されるものではない。
【００２８】
＜構成＞
図１は、本実施形態に係るサーバシステム１の全体構成図である。図１において示すように、サーバシステム１は、サーバ２Ａ，Ｂ，Ｃ、負荷分散装置３、データベース４を備える。図１において示すように、本実施形態に係るサーバシステム１は、３台のウェブサーバを備えている。これら３台のウェブサーバは、共に同一の構成要素を有しており、同様の機能を有している。
【００２９】
また、図１において示すように、サーバシステム１は、インターネット５を介してクライアント６と接続可能なように構成されている。クライアント６はパーソナルコンピュータであり、ユーザ７は、クライアント６を介してサーバシステム１にアクセス可能なように構成されている。なお、クライアント６は、パーソナルコンピュータを例示しているが、本発明はこれに限定されるものでなく、ＰＤＡや携帯電話といったインターネットにアクセス可能な全ての情報処理媒体を適用することが可能であるものとする。
【００３０】
なお、本実施形態においては、クライアント６とサーバシステム１はインターネット５を介して接続されることを前提としているが、本発明はこれに限られない。すなわち、クライアント６とサーバシステム１は、イントラネットを介して接続してもよい。また、本実施形態において、サーバシステム１は３台のウェブサーバを備えているが、本発明はこれに限られない。すなわち、サーバシステム１は、２台のウェブサーバを備えていても良いし、４台以上のウェブサーバを備えていてもよい。また、本実施形態に係るサーバ（ウェブサーバ）は、複数並列に配置された状態で本発明の効果が発揮されるように構成されている。しかし、本発明に係るサーバは、１台のみでサーバシステムを構成した場合にサーバとしての機能を発揮しなくなるものではない。なお、図１において、クライアント６は１台のみで構成されているが、本発明はこれに限られるものではなく、多数のクライアントが接続されているものとする。
【００３１】
負荷分散装置３は、インターネット５を介してウェブサーバにアクセスしてくるクライ
アント６のリクエストを、各サーバ２Ａ，Ｂ，Ｃの負荷等の状態に応じて振り分ける。すなわち、サーバ２Ａが処理しているリクエストの数が処理能力の上限値に近づいていれば、負荷分散装置３は、処理しているリクエストの数が比較的少ないサーバにリクエストを振り分ける。これにより、各サーバ２Ａ，Ｂ，Ｃの負荷が適切に配分される。
【００３２】
なお、負荷分散装置３は、各サーバ２Ａ，Ｂ，Ｃの負荷に応じてリクエストを配分するのみならず、サーバの故障等を検出し、リクエストを配分することが可能なように構成されている。負荷分散装置３がサーバ２Ａ，Ｂ，Ｃの故障を検出する方法としては、故障したサーバから送られる異常信号を受けて故障を検知するようにしたり、あるいは、特定のサーバに振り分けたリクエストが一定時間経過後もサーバに処理されないことをもって該サーバの故障を検知したりする方法を挙げる事ができる。また、負荷分散装置３は、セッション維持機能を有しており、同一のクライアント６から一定時間内（例えば、１分。）に送られるリクエストについては同一のサーバ２に送るように構成されている。
【００３３】
データベース４は、サーバ２Ａ，Ｂ，Ｃから送られるデータを蓄積したり、サーバ２Ａ，Ｂ，Ｃにデータを提供したりすることが可能な記憶媒体（本発明でいう「セッション情報蓄積手段」に相当する。）等で構成されている。データベース４は、大容量のハードディスク等を備えるサーバコンピュータで構成してもよいし、磁気記憶テープ等を多数備える記憶媒体類で構成してもよい。
【００３４】
図２は、サーバ２Ａ，Ｂ，Ｃの全体構成図である。以下、図２を参照しつつ、サーバ２の構成を説明する。なお、サーバ２Ａ，Ｂ，Ｃはどれも同様に構成されているため、説明の便宜上、一つのサーバについて説明する。
【００３５】
図２において示すように、サーバ２は、ＣＰＵ８（Central Processing Unit）、入出
力インターフェース９、ＲＡＭ１０（Random Access Memory）、ＨＤＤ１１（Hard Disk Drive）等で構成されている。サーバ２は、本発明に係るサーバ用プログラムが内部で実
行されることにより、その諸機能が実現される。サーバ２は、サーバ用プログラムが実行されると、その内部にウェブサイト１２、セッション情報記憶部１３、セッション確認部１４、セッション情報照会部１５、セッション再生部１６、アクセス承認部１７が構築される。
【００３６】
ウェブサイト１２は、クライアント６に提供するコンテンツ類で構成されている。ウェブサイト１２は、クライアント６とのセッションを維持した状態（すなわち、ログインした状態。）で提供されるユーザ用のコンテンツページ（本発明でいう、「特定のコンテンツ」に相当する。）や、クライアント６とのセッションを維持していない状態（すなわち、ログアウトした状態。）で提供されるゲスト用のコンテンツページ（本発明でいう、「不特定のコンテンツ」に相当する。）で構成される。
【００３７】
セッション情報記憶部１３は、ＲＡＭ１０やＨＤＤ１１等にセッション情報を記憶させる。ここで、セッション情報とは、サーバ２がクライアント６を特定するための情報であり、例えば、ユーザ７のユーザＩＤや氏名、クライアント６のリクエストに含まれている認証ヘッダ情報等である。また、セッション情報には、ウェブサイト１２でクライアント６がカートに入れた商品の数量等のデータが含まれる。サーバ２は、このセッション情報を基にクライアント６を特定し、クライアント６との接続状態を維持する。なお、セッションとは、サーバ２やクライアント６が互いに相手方を特定した通信を行っている一連の状態をいう。また、セッションが維持されている状態とは、サーバ２やクライアント６が互いに相手方を特定した通信を開始してから終了するまでの状態をいう。
【００３８】
セッション確認部１４は、リクエストを送信してきたクライアント６とのセッションが
維持されているか否かを確認する。セッション確認部１４は、セッション状態を確認するにあたり、セッション情報記憶部１３を照会する。セッション情報記憶部１３は、ＲＡＭ１０やＨＤＤ１１に対応するセッション情報が記憶されていれば、これをセッション確認部１４に通知する。
【００３９】
セッション情報照会部１５は、入出力インターフェース９を介してデータベース４内のデータを照会する。セッション情報照会部１５は、データベース４内に対応するセッション情報が蓄積されているか否かを検知することが可能なように構成されている。
【００４０】
セッション再生部１６は、入出力インターフェース９を介してデータベース４からセッション情報を取得する。セッション再生部１６は、セッション情報を取得したら、これをセッション情報記憶部１３に記憶させる。
【００４１】
セッション再生部１６は、データベース４からセッション情報が取得できた場合、取得したセッション情報をセッション情報記憶手段に記憶させる。これにより、サーバ２内にセッション情報が蓄積され、クライアント６とのセッションを再び維持することが可能となる。
【００４２】
アクセス承認部１７は、セッション情報記憶部１３にセッション情報が記憶されていると、クライアント６からのリクエストを承認する。アクセス承認部１７にリクエストが承認されると、ウェブサイト１２は、承認されたクライアント６に対してのみ提供される特定のコンテンツ等の送信が可能になる。
【００４３】
＜処理フロー＞
次に、サーバ２で行われる情報処理の流れを説明する。図３は、サーバ２内で行われる情報処理の流れを示すフロー図である。以下、図３に係るフロー図を参照しながら処理の流れを説明する。
【００４４】
サーバ２Ａのセッション確認部１４は、インターネット５や負荷分散装置３を介してクライアント６からのリクエストを受信する（ステップＳ１）。
【００４５】
サーバ２Ａのセッション確認部１４は、クライアント６からリクエストを受信すると、セッション情報記憶部１３を照会してセッションが維持されているか否かを確認する（ステップＳ２）。ここで、負荷分散装置３は、セッション維持機能を有しているのは前述の通りである。従って、クライアント６が既にサーバ２Ａにログインしており、セッションが保たれていればステップＳ５に移行する。
【００４６】
サーバ２Ａのアクセス承認部１７は、セッション確認部１４においてクライアント６とのセッションが維持されていることが既に確認されているため、クライアント６からのリクエストを承認する（ステップＳ５）。このように、セッションを確認しながらクライアント６のリクエストを承認することで、情報セキュリティが強化される。
【００４７】
サーバ２Ａのウェブサイト１２は、アクセス承認部１７の承認を受けて、ユーザ用のＨＴＭＬのページデータ等（特定のコンテンツ。）をクライアント６に送信する（ステップＳ６）。これにより、ユーザ７は、ショッピングサイト等において、カートに商品を入れて買い物を続けることができる。
【００４８】
ここで、クライアント６とセッションを保っていたサーバ２Ａがダウン等した場合、負荷分散装置３がサーバ２Ａのダウンを検知し、クライアント６からのリクエストを他のサーバ２（例えば、サーバ２Ｂ）に振り分ける。このため、クライアント６からのリクエス
トは、今まで何らセッションを保っていなかったサーバ２Ｂに送られることになる。クライアント６からのリクエストを受けたサーバ２Ｂでは、次のような処理が行われる。
【００４９】
すなわち、サーバ２Ｂのセッション確認部１４は、インターネット５や負荷分散装置３を介してクライアント６からのリクエストを受信する（ステップＳ１）。
【００５０】
サーバ２Ｂのセッション確認部１４は、クライアント６からリクエストを受信すると、セッション情報記憶部１３を照会してセッションが維持されているか否かを確認する（ステップＳ２）。ここで、クライアント６とサーバ２Ｂとの間では、まだ何らセッションが構築されていない。よって、ステップＳ３に移行する。
【００５１】
サーバ２Ｂのセッション情報照会部１５は、データベース４を照会し、クライアント６のセッション情報が蓄積されているか否かを確認する（ステップＳ３）。クライアント６とセッションを保っていたサーバ２Ａが、データベース４にセッション情報を保存していれば、そのデータが索出される。よって、ステップＳ４に移行する。なお、データベース４に保存されているセッション情報は、クライアント６がサーバ２Ａに新規にアクセスし、クライアント６とサーバ２Ａとの間でセッションが構築された時に、サーバ２Ａがデータベース４に保存しておいたものである。
【００５２】
サーバ２Ｂのセッション再生部１６は、データベース４から索出されたセッション情報を取得し、セッション情報記憶部１３に記憶させる（ステップＳ４）。これにより、サーバ２Ｂとクライアント６との間でセッションを保つことが可能になる。よって、ステップＳ５に移行する。なお、ステップＳ５およびステップＳ６については、前述と同様なので省略する。
【００５３】
クライアント６とセッションを保っていたサーバ２Ａが、データベース４にセッション情報を保存していなかった場合、サーバシステム１には、クライアント６とのセッションを保つためのセッション情報が残っていないことになる。従って、この場合はステップＳ７に移行し、サーバ２Ｂのウェブサイト１２は、一般用のＨＴＭＬのページデータ等をクライアント６に送信する（ステップＳ７）。
【００５４】
＜効果＞
以上により、サーバ２Ａがダウンし、サーバ２Ａとクライアント６とのセッションが無くなった場合であっても、サーバ２Ｂとクライアント６とのセッションが再び構築される。このため、負荷分散装置３によってサーバ２が切り替わった場合であっても、クライアント６やユーザ７は、ログインＩＤの再入力やカートに入れた商品の再入力といった負担を強いられることがない。また、データベース４は、サーバ２に不具合が発生した時にセッション情報を提供している。すなわち、クライアント６からのアクセスは、各サーバ２において行われている。従って、データベース４へのアクセス数を低減し、データベースを効率よく使用することが可能である。また、サーバ２がダウンする場合とは、故障によるもののほか、サーバ２のメモリのオーバーフローといったものも考えられる。しかし、このような場合であっても、サーバ２に蓄積されたセッション情報を他のサーバ２に引き継ぐことでクライアント６からのリクエストを適切に処理することが可能である。
【００５５】
なお、サーバ２Ａがダウンし、サーバ２Ｂがクライアント６のリクエストを処理した場合を説明したが、サーバ２Ａ，Ｂ，Ｃの何れがダウンし、何れのサーバ２がクライアント６のリクエストを処理しても同様の機能が実現されることは言うまでもない。
【００５６】
なお、上記サーバ２は、ウェブサイト１２のコンテンツをクライアント６に送信するコンテンツ送信部等を備えても良い。また、サーバシステム１内にクライアント６のセッシ
ョン情報が残っていなかった場合（すなわち、クライアント６がサーバ２に新たにアクセスしようとしており、サーバ２との間で何らセッションが構築されていない場合や、何れかのサーバ２との間でクライアント６がセッションを保っていたにも関わらず、そのセッション情報がデータベース４に保存される前にセッションが遮断された場合。）に、該クライアント６に対してログインＩＤ等の入力を促して新たなセッション情報を生成するセッション発生部を備えても良い。また、サーバ２は、新たなセッション情報が生成された場合、データベース４にセッション情報をアップロードしてデータベース４の情報を更新するデータベース更新部を備えるようにしてもよい。
【００５７】
ここで、データベース４は、蓄積されたセッション情報を一定時間経過後に削除するようにしてもよい。すなわち、クライアント６とセッションを保っていたサーバ２が、データベース４にクライアント６のセッション情報をアップロードして保存したのち、故障等によってダウンするような場合が考えられる。この場合、データベース４にクライアント６のセッション情報がいつまでも残ってしまう。そこで、データベース４に、保存されてから一定時間が経過したセッション情報を廃棄する、セッション情報廃棄部を設けても良い。なお、セッション情報廃棄部は、セッション情報が保存されてから一定時間が経過したらセッション情報を廃棄するようにしても良いし、サーバ２Ａ，Ｂ，Ｃの何れからもアクセスが無くなったことをもって廃棄してもよいし、クライアント６からセッションを解除するリクエストを受信したら廃棄するようにしてもよい。
【００５８】
＜処理フローの概要１＞
以下、サーバシステム１の情報処理の流れの概要を説明する。ここでは、サーバ２Ａ，Ｂ，Ｃが何れも正常に稼動しており、負荷分散装置３によってクライアント６とサーバ２とのセッションが変更されない場合の処理フローを説明する。図４は、サーバシステム１の処理フロー図である。以下、図４のフロー図を参照しつつ、情報処理の流れを説明する。
【００５９】
負荷分散装置３は、クライアント６から送られるリクエストを受信すると、サーバ２Ａ，Ｂ，Ｃの何れかのサーバ２にこのリクエストを送る（ステップＳ１０１）。
【００６０】
セッション確認部１４は、負荷分散装置３から送られたリクエストから、ユーザＩＤや氏名等のセッション情報を取得する（ステップＳ１０２）。
【００６１】
セッション確認部１４は、セッション情報記憶部１３を照会し、ステップＳ１０２で取得したセッション情報に対応するセッション情報がセッション情報記憶部１３に記憶されているか否かを確認する（ステップＳ１０３）。セッション情報がセッション情報記憶部１３に記憶されていれば、クライアント６とサーバ２とのセッションが維持されていると判断し、ステップＳ１０４に移行する。一方、セッション情報がセッション情報記憶部１３に記憶されていなければ、クライアント６とサーバ２とのセッションが維持されていないと判断し、ステップＳ１０６に移行する。
【００６２】
ウェブサイト１２は、セッションが維持されていることを確認したクライアント６から、購入商品の数量といったユーザ情報を取得する（ステップＳ１０４）。
【００６３】
ウェブサイト１２は、クライアント６から取得した購入商品の数量といった情報から購入金額を算出し、ユーザ７に対してのみ提供する特定のコンテンツである購入金額等を表示したＨＴＭＬ形式のページデータを出力する（ステップＳ１０５）。
【００６４】
なお、ウェブサイト１２は、ステップＳ１０３においてクライアント６のセッションが確認できなかった場合、不特定のユーザに対して提供する不特定のコンテンツである一般
的な情報を表示したＨＴＭＬ形式のページデータを出力する（ステップＳ１０６）。
【００６５】
クライアント６は、ステップＳ１０５またはステップＳ１０６においてウェブサイト１２から送られるページデータをディスプレイのユーザ画面に表示する（ステップＳ１０７）。
【００６６】
＜処理フローの概要２＞
以下、サーバシステム１の情報処理の流れを説明する。ここでは、サーバ２Ａ，Ｂ，Ｃの何れかがダウンし、負荷分散装置３によってクライアント６とサーバ２とのセッションが変更された場合の処理フローを説明する。図５は、サーバシステム１のフロー図である。以下、図５のフロー図を参照しつつ、情報処理の流れを説明する。
【００６７】
クライアント６は、ユーザ７からの入力に応じてリクエストをサーバシステム１に送信する（ステップＳ２０１）。
【００６８】
負荷分散装置３は、クライアント６から送られるリクエストを受信すると、サーバ２Ａ，Ｂ，Ｃの何れかのサーバ２にこのリクエストを送る（ステップＳ２０２）。ここでは、負荷分散装置３のセッション維持機能によってクライアント６のセッションはサーバ２Ａに設定されていたものとする。従って、負荷分散装置３は、クライアント６から送られるリクエストをサーバ２Ａに送る。
【００６９】
ここで、サーバ２Ａに障害が発生していた場合（ステップＳ２０３）、サーバ２Ａに送られたリクエストは負荷分散装置３に戻され（ステップＳ２０４）、その他のサーバ２Ｂまたはサーバ２Ｃに送られる。本処理フローでは、サーバ２Ｂに送られた場合を例示する。
【００７０】
サーバ２Ｂ内のセッション確認部１４は、セッション情報記憶部１３を照会し、セッション情報がセッション情報記憶部１３に記憶されているか否かを確認する（ステップＳ２０５）。しかし、クライアント６のセッションはサーバ２Ａとの間で保たれていたため、サーバ２Ｂ内のセッション情報記憶部１３にはクライアント６のセッション情報は記憶されていない。よって、ステップＳ２０７に移行する。
【００７１】
次に、サーバ２Ｂ内のセッション情報照会部１５は、データベース４を照会してセッション情報の有無を確認する（ステップＳ２０７）。データベース４にクライアント６のセッション情報があればステップＳ２０８に移行し、データベース４にクライアント６のセッション情報がなければステップＳ２１０に移行する。
【００７２】
サーバ２Ｂ内のセッション再生部１６は、データベース４にクライアント６のセッション情報があった場合、このセッション情報をセッション情報記憶部１３に記憶させる（ステップＳ２０８）。これにより、アクセス承認部１７はクライアント６からのリクエストを承認し、サーバ２Ｂとクライアント６とのセッションが復元される。
【００７３】
サーバ２Ｂ内のウェブサイト１２は、アクセス承認部１７によってクライアント６からのリクエストが承認されたら、特定のコンテンツであるユーザ用のＨＴＭＬのページデータ等をクライアント６に送信する（ステップＳ２０９）。
【００７４】
また、サーバ２Ｂ内のウェブサイト１２は、アクセス承認部１７によってクライアント６からのリクエストが承認されなければ、不特定のコンテンツである一般用のＨＴＭＬのページデータ等をクライアント６に送信する（ステップＳ２１０）。
【００７５】
クライアント６は、サーバ２Ｂのウェブサイト１２から送られるＨＴＭＬのページデータを画面に表示する（ステップＳ２１１）。
【００７６】
〔その他〕
本発明は、以下のように特定することができる。
（付記１）
クライアントとデータベースとの間に並列に複数設置されるサーバであって、
前記クライアントに提供するコンテンツを有するウェブサイトと、
前記ウェブサイトにアクセスする前記クライアントとのセッションの状態に関する情報であるセッション情報を記憶するセッション情報記憶手段と、
前記クライアントが前記ウェブサイトへのアクセスをリクエストすると、前記セッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会手段と、
前記セッション情報照会手段において前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認手段と、
を備えるサーバ。（１）
（付記２）
前記アクセス承認手段において前記クライアントからの前記リクエストが承認されるまでは不特定のクライアントに対して提供される不特定のコンテンツを該クライアントに送信し、前記アクセス承認手段において前記クライアントからの前記リクエストが承認されたら該クライアントに対してのみ提供される特定のコンテンツを該クライアントに送信するコンテンツ送信手段、を更に備える付記１に記載のサーバ。（２）
（付記３）
前記セッション情報照会手段において前記セッション情報が蓄積されていないことが確認されると、前記クライアントとのセッションを維持するためのセッション情報を新たに生成して前記セッション情報記憶手段に記憶させるセッション発生手段を更に備え、
前記アクセス承認手段は、前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション発生手段または前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認する、
付記１または２に記載のサーバ。（３）
（付記４）
前記セッション発生手段において新たなセッション情報が生成されると、該セッション情報を前記データベースに通知して蓄積させるデータベース更新手段を更に備える付記３に記載のサーバ。（４）
（付記５）
前記ウェブサイトは、ショッピングサイトであり、
前記セッション情報は、前記クライアントから送られる購入商品のデータを含む、
付記１から４の何れかに記載のサーバ。（５）
（付記６）
クライアントとデータベースとの間に並列に複数設置されるサーバが行う情報処理方法
であって、
前記クライアントがウェブサイトへのアクセスをリクエストすると、クライアントとのセッションの状態に関する情報であるセッション情報が記憶されるセッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会ステップと、
前記セッション情報照会ステップにおいて前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生ステップによって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認ステップと、
を有する情報処理方法。（６）
（付記７）
前記アクセス承認ステップにおいて前記クライアントからの前記リクエストが承認されるまでは不特定のクライアントに対して提供される不特定のコンテンツを該クライアントに送信し、前記アクセス承認ステップにおいて前記クライアントからの前記リクエストが承認されたら該クライアントに対してのみ提供される特定のコンテンツを該クライアントに送信するコンテンツ送信ステップ、を更に有する付記６に記載の情報処理方法。
（付記８）
前記セッション情報照会ステップにおいて前記セッション情報が蓄積されていないことが確認されると、前記クライアントとのセッションを維持するためのセッション情報を新たに生成して前記セッション情報記憶手段に記憶させるセッション発生ステップを更に有し、
前記アクセス承認ステップは、前記セッション確認ステップにおいて前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション発生ステップまたは前記セッション再生ステップによって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認する、
付記６または７に記載の情報処理方法。
（付記９）
前記セッション発生ステップにおいて新たなセッション情報が生成されると、該セッション情報を前記データベースに通知して蓄積させるデータベース更新ステップを更に有する付記８に記載の情報処理方法。
（付記１０）
前記ウェブサイトは、ショッピングサイトであり、
前記セッション情報は、前記クライアントから送られる購入商品のデータを含む、
付記６から９の何れかに記載の情報処理方法。
（付記１１）
クライアントとデータベースとの間に並列に複数設置されるサーバ用のプログラムであって、
サーバコンピュータに、
前記クライアントがウェブサイトへのアクセスをリクエストすると、クライアントとのセッションの状態に関する情報であるセッション情報が記憶されるセッション情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会ステップと、
前記セッション情報照会ステップにおいて前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生ステップと、
前記セッション確認ステップにおいて前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生ステップによって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認ステップと、
を実行させるサーバ用プログラム。（７）
（付記１２）
前記アクセス承認ステップにおいて前記クライアントからの前記リクエストが承認されるまでは不特定のクライアントに対して提供される不特定のコンテンツを該クライアントに送信し、前記アクセス承認ステップにおいて前記クライアントからの前記リクエストが承認されたら該クライアントに対してのみ提供される特定のコンテンツを該クライアントに送信するコンテンツ送信ステップ、を更に有する付記１１に記載のサーバ用プログラム。
（付記１３）
前記セッション情報照会ステップにおいて前記セッション情報が蓄積されていないことが確認されると、前記クライアントとのセッションを維持するためのセッション情報を新たに生成して前記セッション情報記憶手段に記憶させるセッション発生ステップを更に有し、
前記アクセス承認ステップは、前記セッション確認ステップにおいて前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション発生ステップまたは前記セッション再生ステップによって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認する、
付記１１または１２に記載のサーバ用プログラム。
（付記１４）
前記セッション発生ステップにおいて新たなセッション情報が生成されると、該セッション情報を前記データベースに通知して蓄積させるデータベース更新ステップを更に有する付記１３に記載のサーバ用プログラム。
（付記１５）
前記ウェブサイトは、ショッピングサイトであり、
前記セッション情報は、前記クライアントから送られる購入商品のデータを含む、
付記１１から１４の何れかに記載のサーバ用プログラム。
（付記１６）
クライアントからのリクエストを複数のサーバに分散する負荷分散手段と、
前記負荷分散手段に接続される複数のサーバと、
前記複数のサーバに接続されるデータベースと、を備えるサーバシステムであって、
前記負荷分散手段は、
一のクライアントからの複数のリクエストを一のサーバに振り分けるセッション維持機能を有し、
前記サーバは、
クライアントに提供するコンテンツを有するウェブサイトと、
前記ウェブサイトにアクセスする前記クライアントとのセッションの状態に関する情報であるセッション情報を記憶するセッション情報記憶手段と、
前記クライアントが前記ウェブサイトへのアクセスをリクエストすると、前記セッシ
ョン情報記憶手段を照会して該クライアントとセッションが維持されているか否かを確認するセッション確認手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていないことが確認されると、前記データベースを照会して該データベース内に該クライアントのセッション情報が蓄積されているか否かを確認するセッション情報照会手段と、
前記セッション情報照会手段において前記セッション情報が蓄積されていることが確認されると、前記データベースに対して前記クライアントのセッション情報を要求し、該データベースから通知された該セッション情報を前記セッション情報記憶手段に記憶させるセッション再生手段と、
前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認するアクセス承認手段と、を有し、
前記データベースは、
前記セッション情報を蓄積するセッション情報蓄積手段を有する、
サーバシステム。（８）
（付記１７）
前記サーバは、前記アクセス承認手段において前記クライアントからの前記リクエストが承認されるまでは不特定のクライアントに対して提供される不特定のコンテンツを該クライアントに送信し、前記アクセス承認手段において前記クライアントからの前記リクエストが承認されたら該クライアントに対してのみ提供される特定のコンテンツを該クライアントに送信するコンテンツ送信手段、を更に備える付記１６に記載のサーバシステム。（付記１８）
前記サーバは、前記セッション情報照会手段において前記セッション情報が蓄積されていないことが確認されると、前記クライアントとのセッションを維持するためのセッション情報を新たに生成して前記セッション情報記憶手段に記憶させるセッション発生手段を更に備え、
前記アクセス承認手段は、前記セッション確認手段において前記クライアントとセッションが維持されていることが確認されるか、または、前記セッション発生手段または前記セッション再生手段によって前記セッション情報記憶手段に前記クライアントのセッション情報が記憶されると、前記クライアントからの前記リクエストを承認する、
付記１６または１７に記載のサーバシステム。
（付記１９）
前記サーバは、前記セッション発生手段において新たなセッション情報が生成されると、該セッション情報を前記データベースに通知して蓄積させるデータベース更新手段を更に備える付記１８に記載のサーバシステム。
（付記２０）
前記ウェブサイトは、ショッピングサイトであり、
前記セッション情報は、前記クライアントから送られる購入商品のデータを含む、
付記１６から１９の何れかに記載のサーバシステム。
【図面の簡単な説明】
【００７７】
【図１】サーバシステムの全体構成図。
【図２】サーバの全体構成図。
【図３】サーバの処理フロー図。
【図４】サーバシステムの処理フロー図。
【図５】サーバシステムの処理フロー図。
【符号の説明】
【００７８】
１    サーバシステム
２    サーバ
３    負荷分散装置
４    データベース
５    インターネット
６    クライアント
７    ユーザ
８    ＣＰＵ
９    入出力インターフェース
１０    ＲＡＭ
１１    ＨＤＤ
１２    ウェブサイト
１３    セッション情報記憶部
１４    セッション確認部
１５    セッション情報照会部
１６    セッション再生部
１７    アクセス承認部
【図１】
2008152471.tif 000003
【図２】
2008152471.tif 000004
【図３】
2008152471.tif 000005
【図４】
2008152471.tif 000006
【図５】
2008152471.tif 000007