(57)【要約】  本発明は、サーバ側システムにおいて、通信量を削減し、効率的な運用ができる技術を提供するののであり、クライアント端末からのアプリケーション識別子を含むＨＴＴＰリクエストに応じてイベントメッセージを返信するサーバシステムであって、第１ないし第４のサーバを具備し、第１のサーバは、クライアント装置からのＨＴＴＰリクエストを受信して複数設けられた第２のサーバに転送し、第３のサーバは、ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送された第２のサーバのサーバ識別子を第４のサーバへ送信し、第４のサーバは、該ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示す第２の送信サーバに対してイベントメッセージを送信し、第２のサーバは、リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、第４のサーバからのイベントメッセージを受け付けるとクライアント装置に送信する。
2009087885.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末からのアプリケーション識別子を含むＨＴＴＰリクエストに応じてイベントメッセージを返信するサーバシステムであって、
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、
前記リクエスト受信サーバは、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送し、
前記クライアント管理サーバは、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信し、
前記アプリケーションサーバは、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信し、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信することを特徴とするサーバシステム。
【請求項２】
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、
前記リクエスト受信サーバは、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送し、
前記クライアント管理サーバは、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信し、
前記アプリケーションサーバは、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信し、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信するサーバシステム、に対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末であって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる再接続試行部を有するクライアント端末。
【請求項３】
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、クライアント端末からのアプリケーション識別子を含むＨＴＴＰリクエストに応じてイベントメッセージを返信するサーバシステムで行われるイベントメッセージ送信方法であって、
前記リクエスト受信サーバが、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送するステップと、
前記クライアント管理サーバが、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信するステップと、
前記アプリケーションサーバが、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信するステップと、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信するステップとを有することを特徴とするイベントメッセージ送信方法。
【請求項４】
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、
前記リクエスト受信サーバは、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送し、
前記クライアント管理サーバは、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信し、
前記アプリケーションサーバは、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信し、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信するサーバシステム、に対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末で行われる接続方法であって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる接続方法。
【請求項５】
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、
前記リクエスト受信サーバは、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送し、
前記クライアント管理サーバは、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信し、
前記アプリケーションサーバは、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信し、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信するサーバシステム、に対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末で行われる接続方法をコンピュータに実行させるためのプログラムであって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる処理をコンピュータに実行させるプログラム。
【請求項６】
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、
前記リクエスト受信サーバは、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送し、
前記クライアント管理サーバは、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信し、
前記アプリケーションサーバは、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信し、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信するサーバシステム、に対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末で行われる接続方法をコンピュータに実行させるためのプログラムを格納する記録媒体であって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる処理をコンピュータに実行させるプログラムを格納する記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＨＴＴＰプロトコルを利用したサーバシステムに関し、特に、クライアント接続を効率に制御するサーバシステム、方法およびプログラムに関する。
【背景技術】
【０００２】
ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）通信システムとして特許文献１（特開２００４−２２７１２１号公報）には、ネットワークを介して家電製品などの管理をＨＴＴＰを用いて行う技術が開示されている。【０００３】
特許文献１では、屋内ネットワークに屋外からアクセスが可能なアドレスを持ったアクセスポイントを置いた場合には、アクセスポイントが不法行為を受け易く、セキュリティの面でも問題があるとしている。【０００４】
また、特許文献１では、屋内にアクセスポイントを設けない方法として、ポーリングの手法を用いることを挙げている。特許文献１では、ポーリングの手法を用いる場合には、要求があったかどうかを確認するために、外部のネットワーク上にこの確認のための別のサーバを配し、操作要求があったかどうかを適宜屋内の通信装置から確認するとしているが、このような構成とした場合には、確認の都度、通信を行う必要があり、与えられた制御要求をレスポンス良く処理するために短期間に頻繁に確認を行うと、この確認に要する通信コストが膨大なものとなるとしている。【０００５】
上記のことを前提とする特許文献１に記載の発明は、屋外に設置されたＡＳＰ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）サーバと、屋内ネットワークに接続された通信装置と、ＡＳＰサーバに接続可能な端末装置と、から構成されていて、ＡＳＰサーバは操作端末から制御信号を受け付ける信号受付部を備え、通信装置から受信要求を受信すると、受信要求に対して応答することを操作端末から制御信号を受け付けるまで保留し、信号受付部が端末装置からの制御信号を受け付けたときに、この信号の情報を含む応答を通信装置に対して送信するものである。
【特許文献１】特開２００４−２２７１２１号公報
【発明の開示】
【０００６】
上述した特許文献１に記載される発明における第１の問題点は、通信装置からの受信要求が、信号受付部が端末装置からの制御信号を受け付けるまで保留されるため、メモリが大型化し、システム構成の効率が悪いという問題点がある。
【０００７】
また、１つのアプリケーションを取り扱った管理方式であり、複数のアプリケーションが混在する環境を考慮したものではないため、サーバシステム側に複数アプリケーションが混在する環境を構築することが困難である。
【０００８】
さらに、異常系に議論が及んでいるものではなく、そのリカバリ部について着目がなされていないため、サーバシステムのクライアントとの通信機能を司る構成要素が障害に陥った場合、システム全体が正常に機能しない可能性がある。
【０００９】
本発明の目的は、サーバ側システムにおいて複数アプリケーションが混在する環境において、サーバシステムの処理量、通信量を削減し、効率的な運用ができるセッション管理システムを実現する技術を提供することにある。
【００１０】
本発明は、さらに、上記の目的を達成したうえで、多数のクライアントが接続するシステムにおいてサーバ側システム障害時にもサーバ側から送信するイベントメッセージを失うことなくクライアントに送信できるリカバリシステムを実現する技術を提供することにある。
【００１１】
本発明のサーバシステムは、クライアント端末からのアプリケーション識別子を含むＨＴＴＰリクエストに応じてイベントメッセージを返信するサーバシステムであって、
リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、
前記リクエスト受信サーバは、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送し、
前記クライアント管理サーバは、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信し、
前記アプリケーションサーバは、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信し、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信することを特徴とする。
【００１２】
本発明のクライアント端末は、上記のサーバシステムに対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末であって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる再接続試行部を有する。
【００１３】
本発明のイベントメッセージ送信方法は、リクエスト受信サーバと、複数設けられたイベントメッセージ送信サーバと、クライアント管理サーバと、アプリケーションサーバとを具備し、クライアント端末からのアプリケーション識別子を含むＨＴＴＰリクエストに応じてイベントメッセージを返信するサーバシステムで行われるイベントメッセージ送信方法であって、
前記リクエスト受信サーバが、前記クライアント装置からのＨＴＴＰリクエストを受信してイベントメッセージ送信サーバに転送するステップと、
前記クライアント管理サーバが、前記ＨＴＴＰリクエストを行ったクライアント装置と、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバとを組として蓄積し、前記ＨＴＴＰリクエストが行われると、該ＨＴＴＰリクエストが転送されたイベントメッセージ送信サーバのサーバ識別子を前記アプリケーションサーバへ送信するステップと、
前記アプリケーションサーバが、前記ＨＴＴＰリクエストが行われて前記イベントメッセージ送信サーバの識別子を受信すると、該前記ＨＴＴＰリクエストに含まれるアプリケーション識別子をサーバ識別子が示すイベントメッセージ送信サーバに対してイベントメッセージを送信するステップと、
前記イベントメッセージ送信サーバは、前記リクエスト受信サーバから転送されたＨＴＴＰリクエストを保留し、前記アプリケーションサーバからのイベントメッセージを受け付けるとＨＴＴＰレスポンスとしてイベントメッセージをクライアント装置に送信するステップとを有することを特徴とする。
【００１４】
本発明の接続方法は、上記のサーバシステムに対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末で行われる接続方法であって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる。
【００１５】
本発明のプログラムは、上記のサーバシステムに対してアプリケーション識別子を含むＨＴＴＰリクエストを送信するクライアント端末で行われる接続方法をコンピュータに実行させるためのプログラムであって、
前記リクエスト受信サーバに対してＨＴＴＰプロトコルによるリクエストを送信し、そのレスポンスの受信が完了した際に前記リクエスト受信サーバに再接続を試みる処理をコンピュータに実行させる。
【００１６】
本発明の記録媒体は、上記のプログラムを格納している。
【図面の簡単な説明】
【００１７】
【図１】本発明による通信システムの第１の実施形態の構成を示すブロック図である。
【図２】図１中のサーバ装置１００の要部構成を示すブロック図である。
【図３】図１中のサーバ装置１１０（及びサーバ装置１２０）の要部構成を示すブロック図である。
【図４】図１中のサーバ装置１３０の要部構成を示すブロック図である。
【図５】図１中のサーバ装置１４０の要部構成を示すブロック図である。
【図６】図１中のクライアント装置１５０（及びクライアント装置１６０）の要部構成を示すブロック図である。
【図７】図１に示した実施形態の動作を示すフローチャートである。
【図８】図１に示した実施形態の動作を示すフローチャートである。
【図９】図１に示した実施形態の動作を示すフローチャートである。
【図１０】本発明による通信システムの第２の実施形態の構成を示すブロック図である。
【符号の説明】
【００１８】
１００、１１０、１２０、１３０、１４０    サーバ装置
１５０、１６０    クライアント装置
１０１    問い合わせ部
１０２    払い出し部
１０３    記録部
１０４    送信部
１０５    セッション許可部
１０６    検索部
１０７    転送部
１１１    受信部
１１２    保留部
１１３    識別子送信部
１１４    レスポンス送信部
１３１    対応記録部
１３２    検索返却部
１３３    対応情報記録部
１３４    対応情報返却部
１３５    検出部
１４１    アプリケーション起動部
１４２    識別子送信部
１４３    受信部
１４４    イベント送信部
１５１    初期化メッセージ送信部
１５３    受信部
１５４    再接続試行部
Ａ１〜Ａ２９、Ｂ１〜Ｂ９    ステップ
【発明を実施するための最良の形態】
【００１９】
次に、本発明の実施形態について図面を参照して説明する。【００２０】
図１は、本発明による通信システムの第１の実施形態の構成を示すブロック図である。【００２１】
図１を参照すると、本実施形態は、リクエスト受信サーバであるサーバ装置１００、イベントメッセージ送信サーバであるサーバ装置１１０およびサーバ装置１２０、クライアント管理サーバであるサーバ装置１３０、アプリケーションサーバであるサーバ装置１４０、クライアント装置１５０及びクライアント装置１６０から構成されている。【００２２】
図２は、サーバ装置１００の要部構成を示すブロック図である。【００２３】
問い合わせ部１０１は、クライアント装置１５０及びクライアント装置１６０から送信された初期化メッセージに含まれるアプリケーション識別子をキーにサーバ装置１３０に対してその登録があるか問い合わせる。【００２４】
払い出し部１０２は、問い合わせ部１０１の結果に応じてセッション管理ＩＤを払い出す。【００２５】
記録部１０３は、払い出し部１０２により払い出されたセッション管理ＩＤとクライアント装置１５０及びクライアント装置１６０の対応を記録する。【００２６】
送信部１０４は、払い出し部１０２により払い出されたセッション管理ＩＤをクライアント装置１５０及びクライアント装置１６０に送信する。【００２７】
セッション許可部１０５は、クライアント装置１５０及びクライアント装置１６０からのセッション開始メッセージに含まれるセッション管理ＩＤが記録部１０３に記録されたデータベースに存在するか確認し、存在しない場合セッション開始を拒否する。【００２８】
検索部１０６は、クライアント装置１５０及びクライアント装置１６０からのセッション開始メッセージに含まれるアプリケーション識別子をキーにサーバ装置１３０に対し該当アプリケーション識別子の接続を処理しているサーバ装置１１０又はサーバ装置１２０を検索する。【００２９】
転送部１０７は、検索部１０６によって取得した該当アプリケーション識別子の接続を処理しているサーバ装置１１０又はサーバ装置１２０に対しセッション開始メッセージを転送する。【００３０】
図３は、サーバ装置１１０（及びサーバ装置１２０）の要部構成を示すブロック図である。【００３１】
受信部１１１は、サーバ装置１００が転送したクライアント装置１５０及びクライアント装置１６０からのセッション開始メッセージを受信する。【００３２】
保留部１１２は、受信したセッション開始メッセージを一定期間保留する。【００３３】
識別子送信部１１３は、受信したセッション開始メッセージに含まれるアプリケーション識別子をサーバ装置１３０に送信する。【００３４】
レスポンス送信部１１４は、サーバ装置１４０から送信されたイベントメッセージを保留部１１２により保留されているセッション開始メッセージのレスポンスとして送信する。【００３５】
図４は、サーバ装置１３０の要部構成を示すブロック図である。【００３６】
対応記録部１３１は、サーバ装置１３０は、サーバ装置１４０で動作するアプリケーションが通知したアプリケーションＩＤ及びネットワーク識別名の対応を記録する。【００３７】
検索返却部１３２は、サーバ装置１００から送信された初期化メッセージから初期化メッセージに含まれるアプリケーションＩＤと同一のアプリケーションＩＤとサーバ装置１４０のネットワーク識別名が記録されているか検索し、サーバ装置１００に返却する。【００３８】
対応情報記録部１３３は、クライアント装置１５０及びクライアント装置１６０が接続しているサーバ装置１１０又はサーバ装置１２０の対応情報をアプリケーションＩＤとともに記録する。【００３９】
対応情報返却部１３４は、対応情報記録部１３３によって記録されたクライアント装置１５０及びクライアント装置１６０が接続しているサーバ装置１１０又はサーバ装置１２０の対応情報及びアプリケーションＩＤを、アプリケーションＩＤをキーに検索し返却する。【００４０】
検出部１３５は、サーバ装置１１０及びサーバ装置１２０が障害によりダウンした事実を検出する。【００４１】
図５は、サーバ装置１４０の要部構成を示すブロック図である。【００４２】
アプリケーション起動部１４１は、アプリケーションを動作させる。【００４３】
識別子送信部１４２は、起動したアプリケーションを識別するアプリケーション識別子をサーバ装置１３０に送信する。【００４４】
受信部１４３は、サーバ装置１３０に対し、アプリケーション識別子をキーに対応情報記録部１３３によって記録されたクライアント装置１５０及びクライアント装置１６０が接続しているサーバ装置１１０又はサーバ装置１２０の対応情報を検索する要求を送信し、結果を受信する。【００４５】
イベント送信部１４４は、サーバ装置１１０又は１２０に対してイベントメッセージを送信する。【００４６】
図６は、クライアント装置１５０（及びクライアント装置１６０）の要部構成を示すブロック図である。【００４７】
初期化メッセージ送信部１５１は、サーバ装置１００に対し初期化メッセージを送信する。【００４８】
開始メッセージ送信部１５２は、サーバ装置１００に対しセッション開始メッセージを送信する。【００４９】
受信部１５３は、サーバ装置１１０又はサーバ装置１２０からイベントメッセージを受信する。【００５０】
再接続試行部１５４は、セッション開始メッセージの送信、レスポンス受信が完了した際に自動的にサーバ装置１００に再接続を試みる。【００５１】
なお、上記の各装置は一般的なコンピュータシステムにより構成されるものである。以下の説明では、具体的な処理を行う各部を主体として説明を行うが、各部の動作は、それぞれに設けられた制御装置（不図示）により行われるものである。【００５２】
図７ないし図９は本実施形態の動作を示すフローチャートである。以下に、各図を参照して本実施形態の全体の動作について詳細に説明する。【００５３】
まず、サーバ装置１４０のアプリケーション起動部１４１で起動されたアプリケーションは、自身を識別するアプリケーション識別子ＡＰ１をサーバ装置１３０へ送信する（ステップＡ１）。【００５４】
サーバ装置１３０は、ステップＡ１で送信されたアプリケーション識別子ＡＰ１を受信し、受信したアプリケーション識別子ＡＰ１と該当アプリケーション識別子を送信したサーバ装置１４０の識別名（ＩＰアドレス、ホスト名など）とを組として、データベースである対応記録部１３１に記録する（ステップＡ２）。【００５５】
クライアント装置１５０の初期化メッセージ送信部１５１は、サーバ装置１００に対し、初期化メッセージをＨＴＴＰリクエストとして送信する（ステップＡ３）。この際、初期化メッセージにはアプリケーション識別子ＡＰ１を添付する。【００５６】
サーバ装置１００は、クライアント装置１５０からの初期化メッセージを受け付けると、問い合わせ部１０１にて初期化メッセージをサーバ装置１３０に転送し（ステップＡ４）、アプリケーション識別子ＡＰ１に示されるアプリケーションが登録されているかを問い合わせる。【００５７】
サーバ装置１３０では、初期化メッセージを受信すると、セッション許可部１０５が、初期化メッセージからアプリケーション識別子ＡＰ１を取り出し（ステップＡ５）、アプリケーション識別子ＡＰ１と同一のアプリケーション識別子を含むレコードが対応記録部１３１に存在するかを検索する（ステップＡ６）。【００５８】
検索返却部１３２は、ステップＡ６における検索の結果、アプリケーション識別子ＡＰ１と同一のアプリケーション識別子を含むレコードが対応記録部１３１に発見された場合、サーバ装置１００に対してレコードが存在することを通知する（ステップＡ７）。【００５９】
また、ステップＡ６の検索の結果、アプリケーション識別子ＡＰ１と同一のアプリケーション識別子を含むレコードが対応記録部１３１に発見されなかった場合、サーバ装置１００に対してレコードが存在しないことを通知する（ステップＡ８）。【００６０】
ステップＡ７にて、レコードが存在することの通知を受けたサーバ装置１００は、払い出し部１０２が一意値を持つセッション管理ＩＤＳＭ１を払い出し（ステップＡ９）、記録部１０３は、セッション管理ＩＤＳＭ１とクライアント装置１５０の識別名（ＩＰアドレス、ホスト名など）を記録部１０３に記録する（ステップＡ１０）。続いて、送信部１０４が、セッション管理ＩＤＳＭ１をクライアント装置１５０に返却する（ステップＡ１１）。【００６１】
ステップＡ８にて、レコードが存在しないことの通知を受けたサーバ装置１００は、送信部１０４がクライアント装置１５０に対し、接続は拒否されたことを通知し処理を終了する（ステップＡ１２）。【００６２】
ステップＡ１１の後、セッション管理ＩＤＳＭ１を受けたクライアント装置１５０は、開始メッセージ送信部１５２がサーバ装置１００に対してセッション開始メッセージＳＳ１を送信する。このとき、セッション開始メッセージＳＳ１には、ステップＡ１１で返却されたセッション管理ＩＤＳＭ１及びアプリケーション識別子ＡＰ１を含む（ステップＡ１３）。【００６３】
サーバ装置１００は、クライアント装置１５０からのセッション開始メッセージＳＳ１を受信すると（ステップＡ１４）、セッション許可部１０５が、クライアント装置１５０からのセッション開始メッセージＳＳ１に含まれるセッション管理ＩＤＳＭ１を取り出し、ステップＡ１０で記録した記録部１０３にセッション管理ＩＤＳＭ１を含むレコードが存在するか検索する（ステップＡ１５）。【００６４】
ステップＡ１５の検索の結果、データベースにセッション管理ＩＤＳＭ１を含むレコードが存在する場合、サーバ装置１００の検索部１０６は、サーバ装置１３０にセッション開始メッセージＳＳ１に含まれるアプリケーション識別子ＡＰ１を送信する（ステップＡ１６）。【００６５】
サーバ装置１３０の対応情報検索部１３４は、ステップＡ１６にて送られたアプリケーション識別子ＡＰ１を受け付けると、受信したアプリケーション識別子ＡＰ１をキーに対応情報記録部１３３を検索する（ステップＡ１７）。【００６６】
対応情報検索部１３４は、ステップＡ１７の結果、該当するレコードが対応情報記録部１３３に発見された場合、該当するレコードに記録されたサーバ装置１１０の識別名（ＩＰアドレス、ホスト名など）をサーバ装置１００に通知する（ステップＡ１８）。【００６７】
また、ステップＡ１７の結果、該当するレコードが対応情報記録部１３３に発見されなかった場合、対応情報検索部１３４は、アプリケーション識別子ＡＰ１とサーバ装置１１０の識別名（ＩＰアドレス、ホスト名など）を組として対応情報記録部１３３に保存し、サーバ装置１１０の識別名をサーバ装置１００に通知する（ステップＡ１９）。但し、このときサーバ装置１１０が性能的な理由により処理対象とできない場合は、サーバ装置１２０を割り当て、サーバ装置１００にサーバ装置１２０の識別名を通知する。【００６８】
ステップＡ１５の検索の結果、データベースにセッション管理ＩＤＳＭ１を含みレコードが存在しないことが確認されると、サーバ装置１００のセッション許可部１０５は、クライアント装置１５０からの接続を拒否し、処理を終了する（ステップＡ２０）。【００６９】
次に、サーバ装置１００の転送部１０７は、サーバ装置１１０にセッション開始メッセージＳＳ１を送信する（ステップＡ２１）。【００７０】
サーバ装置１１０の受信部１１１は、セッション開始メッセージＳＳ１を受信すると、保留部１１２により一定時間ＨＴＴＰレスポンスを返却せず保留状態にする（ステップＡ２２）。【００７１】
同じアプリケーション識別子ＡＰ１を初期化メッセージ及びセッション開始メッセージに含み、セッション開始を要求するクライアント装置１６０がセッションを開始するまでの処理は、上記ステップＡ３からステップＡ２２までの処理に従うが、理解を容易にするために重要なポイントを以下に説明する。【００７２】
ステップＡ３からＡ１６までの処理を実行する。【００７３】
次に、ステップＡ１７に進み、サーバ装置１３０の検索返却部１３２は、アプリケーション識別子ＡＰ１をキーとしてサーバ装置１１０の識別名（ＩＰアドレス、ホスト名など）が対応記録部１３１に記録されているかを確認するが、ここで、記録されていることが確認されるため、ステップＡ１８において検索返却部１３２はサーバ装置１００にサーバ装置１１０の識別名を通知する。【００７４】
ステップＡ１８からＡ１９及びステップＡ２１からステップＡ２２の処理を実行し、クライアント装置１５０及びクライアント装置１６０は、同一のサーバ装置１１０で処理されることになる。【００７５】
次に、サーバ装置１４０で動作するアプリケーションにより、クライアント装置１５０及びクライアント装置１６０にイベントメッセージを行う際の処理を説明する。【００７６】
サーバ装置１４０で動作するアプリケーションにより、識別子送信部１４２は、サーバ装置１３０にアプリケーション識別子ＡＰ１を送信する（ステップＡ２３）。【００７７】
サーバ装置１３０では、対応情報返却部１３４が、受信したアプリケーション識別子ＡＰ１をキーとして、ステップＡ１９で保存を行った対応情報記録部１３３を検索する（ステップＡ２４）。【００７８】
ステップＡ２４における検索の結果、対応情報記録部１３３に該当するレコードが発見された場合、対応情報返却部１３４は該当レコードに記録されているサーバ装置１１０の識別名（ＩＰアドレス、ホスト名など）をサーバ装置１４０に通知する（ステップＡ２５）。この時、サーバ装置１２０もアプリケーション識別子ＡＰ１についてのクライアント接続を処理している場合は、サーバ装置１１０及びサーバ装置１２０の識別名のリストを通知する。【００７９】
ステップＡ２４における検索の結果、対応情報記録部１３３に該当するレコードが発見されなかった場合、対応情報返却部１３４は該当レコードが存在しないことをサーバ装置１４０に通知して終了する（ステップＡ２６）。【００８０】
サーバ装置１４０で動作するアプリケーションにより、識別子送信部１４１は、ステップＡ２５で通知されたサーバ装置１１０（もしくはサーバ装置１１０及びサーバ装置１２０）に対してアプリケーション識別子ＡＰ１及びイベントメッセージＥＶ１を送信する（ステップＡ２７）。【００８１】
次に、サーバ装置１１０（もしくはサーバ装置１１０及びサーバ装置１２０）のレスポンス送信部１１４は、ステップＡ２７で送信されたアプリケーション識別子ＡＰ１で接続しているクライアント装置１５０及びクライアント装置１６０に対してイベントメッセージＥＶ１をステップＡ２２のＨＴＴＰレスポンスとして返却する（ステップＡ２８）。【００８２】
クライアント装置１５０及びクライアント装置１６０の受信部１５３は、イベントメッセージＥＶ１を受信する（ステップＡ２９）。【００８３】
次に、クライアント装置１５０及びクライアント装置１６０は、次のイベントメッセージを受信するために、ステップＡ３からの処理を再度実行する。【００８４】
次に、本発明の第２の実施形態について図面を参照して詳細に説明する。【００８５】
本実施形態の構成は、図１ないし図６に示した第１の実施形態の構成と同様である。図１０は本実施形態の動作を示すフローチャートであり、以下に、図１ないし図６および図１０を参照して本実施形態の全体の動作について詳細に説明する。【００８６】
クライアント装置１５０及びクラインと装置１６０は、ステップＡ３からステップＡ２２の処理を実行し、サーバ装置１１０に接続済みであるとする。また、以下の説明は、サーバ装置１１０に障害が発生し、ダウンした直後の動作について説明するものである。【００８７】
サーバ装置１３０の検出部１３５は、サーバ装置１１０のダウンを検出する（ステップＢ１）。【００８８】
次に、サーバ装置１３０の制御装置は、ステップＡ１９で記録した対応情報記録部１３３の中の、サーバ装置１１０の識別名を含むレコードのステータスに「障害中」を示すマークを付ける（ステップＢ２）。【００８９】
次に、アプリケーションが動作中であるサーバ装置１４０は、イベントメッセージのためにステップＡ２３の処理、識別子送信部１４２がサーバ装置１３０にアプリケーション識別子ＡＰ１を送信する（ステップＢ３）。【００９０】
次に、サーバ装置１３０の対応情報返却部１３４は、アプリケーション識別子ＡＰ１に該当するレコードをステップＡ１９で記録した対応情報記録部１３３から検索し、ステータスが「障害中」であることを確認し、サーバ装置１４０への検索結果送信を保留する（ステップＢ４）。【００９１】
クライアント装置１５０及びクライアント装置１６０は、再接続のためステップＡ３からＡ１７を実行する（ステップＢ５）。【００９２】
サーバ装置１３０の対応情報返却部１３４は、ステップＡ１７の処理において、アプリケーション識別子ＡＰ１に該当するレコードのステータスが「障害中」であることを確認し、該当レコードを削除した上で、新たにサーバ装置１２０を割り当てデータベースに記録する（ステップＢ６）。【００９３】
ステップＡ２１からＡ２２の処理を実行する（ステップＢ７）。【００９４】
次に、サーバ装置１３０の対応情報返却部１３４は、ステップＢ４で保留していた検索結果送信を再開し、サーバ装置１４０へ新たに割り当てたサーバ装置１２０の識別名（ＩＰアドレス、ホスト名など）を通知する（ステップＢ８）。【００９５】
ステップＡ２３からＡ２９までの処理を実行する（ステップＢ９）。【００９６】
上記、ステップＢ８は、サーバ装置１４０への検索結果送信をさらに一定時間保留することにより、サーバ装置１１０の障害前に接続していたクライアント装置の大半が再接続するまで処理を一時停止させることが可能となる。【００９７】
なお、上述したように、上記の各装置は一般的なコンピュータシステムにより構成されるものである。特に、クライアント装置はサーバシステムに接続する一般的なユーザが使用するものであり、クライアント装置を構成する初期化メッセージ送信部１５１、開始メッセージ送信部１５２、受信部１５３および再接続試行部１５４はＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭなどの記録媒体に格納されたプログラムやＷｅｂを介して配信されるプログラムによりコンピュータシステム上に構築されるものであり、本発明にはプログラム、記録媒体も含まれる。【００９８】
本発明によれば、災害予知情報や交通情報などの一斉配信システムといった用途に適用できる。また、クイズなどのエンタテインメントシステムといったクライアントからのイベントを契機としてその他のクライアントに同時にイベントを発信するような用途にも利用可能である。【００９９】
上記発明の構成による第一の効果は、アプリケーションサーバからクライアント装置に送信されるイベントメッセージの通信処理量を削減できることにある。その理由は、クライアント装置からイベントメッセージ送信サーバに接続する際、アプリケーション識別子をキーに決定し、同一アプリケーション識別子が指定された要求を同じイベントメッセージ送信サーバに集積するため、イベントメッセージを受信すべきイベントメッセージ送信サーバが削減され、通信処理の総量が削減されるためである。【０１００】
第二の効果は、クライアント装置が接続していたイベントメッセージ送信サーバが障害によりダウンした場合であっても、クライアント管理サーバが新たなイベントメッセージ送信サーバに接続するまでアプリケーションサーバからのイベントメッセージを保留でき、イベントメッセージを失うことなくクライアント装置に送信できる。【０１０１】
その理由は、アプリケーションサーバはイベントメッセージ送信サーバにイベントを送信する際、クライアント管理サーバに問い合わせを行って送信すべきイベントメッセージ送信サーバのリストを取得する構成とし、クライアント管理サーバはイベントメッセージ送信サーバのダウンを検出すると代わりとなる新たなイベントメッセージ送信サーバを割り当てたリストを保留する構成としたため、クライアント装置が確実に再接続することができるためである。【０１０２】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。第一の実施の形態において一例を示したのと同様に、本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【０１０３】
この出願は２００８年１月８日に出願された日本出願特願２００８−００１１９３号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2009087885.tif 000003
【図２】
2009087885.tif 000004
【図３】
2009087885.tif 000005
【図４】
2009087885.tif 000006
【図５】
2009087885.tif 000007
【図６】
2009087885.tif 000008
【図７】
2009087885.tif 000009
【図８】
2009087885.tif 000010
【図９】
2009087885.tif 000011
【図１０】
2009087885.tif 000012
【国際調査報告】
2009087885.tif 000013
2009087885.tif 000014