(57)【特許請求の範囲】
【請求項１】
ユーザ端末装置からのアクセスに応じて該ユーザ端末装置にサービスを提供するサーバ装置として該ユーザ端末装置に割り当てられた該サーバ装置と、前記ユーザ端末装置と、に接続されている管理装置であって、
前記ユーザ端末装置において規定の種別の操作を行った旨を前記ユーザ端末装置から受けた頻度が、該頻度と、前記サーバ装置以外の他サーバ装置に割り当てられている他ユーザ端末装置において規定の種別の操作を行った旨を前記他ユーザ端末装置から受けた頻度と、に基づく規定の頻度よりも高い場合、次回から前記サーバ装置が前記ユーザ端末装置に対して割り当てられないように、前記割り当てを行う装置に対して設定を行う設定手段
を備えることを特徴とする管理装置。
【請求項２】
ユーザ端末装置からのアクセスに応じて該ユーザ端末装置にサービスを提供するサーバ装置として該ユーザ端末装置に割り当てられた該サーバ装置と、前記ユーザ端末装置と、に接続されている管理装置の制御方法であって、
前記管理装置の制御手段が、前記ユーザ端末装置において規定の種別の操作を行った旨を前記ユーザ端末装置から受けた頻度が、該頻度と、前記サーバ装置以外の他サーバ装置に割り当てられている他ユーザ端末装置において規定の種別の操作を行った旨を前記他ユーザ端末装置から受けた頻度と、に基づく規定の頻度よりも高い場合、次回から前記サーバ装置が前記ユーザ端末装置に対して割り当てられないように、前記割り当てを行う装置に対して設定を行う
ことを特徴とする管理装置の制御方法。
【請求項３】
コンピュータを、請求項１に記載の管理装置の設定手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御技術に関するものである。
【背景技術】
【０００２】
フォールトトレランスは、システムの安定性を確保するための重要な技術であり、ソフトウェア面、ハードウェア面から多くの手法が用いられている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許4081258号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の出願人は、フォールトトレランスの制御に、システムに対するユーザの行動を反映させることに着目し、該行動に基づいてフォールトトレランスを制御する為の技術を提供する。
【課題を解決するための手段】
【０００６】
本発明の第１の様態は、ユーザ端末装置からのアクセスに応じて該ユーザ端末装置にサービスを提供するサーバ装置として該ユーザ端末装置に割り当てられた該サーバ装置と、前記ユーザ端末装置と、に接続されている管理装置であって、
前記ユーザ端末装置において規定の種別の操作を行った旨を前記ユーザ端末装置から受けた頻度が、該頻度と、前記サーバ装置以外の他サーバ装置に割り当てられている他ユーザ端末装置において規定の種別の操作を行った旨を前記他ユーザ端末装置から受けた頻度と、に基づく規定の頻度よりも高い場合、次回から前記サーバ装置が前記ユーザ端末装置に対して割り当てられないように、前記割り当てを行う装置に対して設定を行う設定手段
を備えることを特徴とする。
【０００８】
本発明の第２の様態は、ユーザ端末装置からのアクセスに応じて該ユーザ端末装置にサービスを提供するサーバ装置として該ユーザ端末装置に割り当てられた該サーバ装置と、前記ユーザ端末装置と、に接続されている管理装置の制御方法であって、
前記管理装置の制御手段が、前記ユーザ端末装置において規定の種別の操作を行った旨を前記ユーザ端末装置から受けた頻度が、該頻度と、前記サーバ装置以外の他サーバ装置に割り当てられている他ユーザ端末装置において規定の種別の操作を行った旨を前記他ユーザ端末装置から受けた頻度と、に基づく規定の頻度よりも高い場合、次回から前記サーバ装置が前記ユーザ端末装置に対して割り当てられないように、前記割り当てを行う装置に対して設定を行う
ことを特徴とする。
【発明の効果】
【０００９】
本発明の構成によれば、システムに対するユーザの行動に基づいてフォールトトレランスを制御することができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態に係るシステムの構成を示す図である。
【図２】管理装置１００のハードウェア構成例を示すブロック図である。
【図３】ユーザ端末装置１４０、サーバ装置１２０、管理装置１００のそれぞれが行う処理のフローチャートである。
【図４】管理装置１００が管理している、各サーバ装置のカウント値が登録されているテーブルの構成例を示す図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
【００１２】
［第１の実施形態］
先ず、本実施形態に係るシステムの構成例について、図１を用いて説明する。図１には、ユーザ端末装置１４０、管理装置１００、複数台のサーバ装置のうちユーザ端末装置１４０に割り当てられたサーバ装置１２０、が示されており、各装置はＬＡＮやインターネットなどの１種類以上のネットワークを介して接続されている。具体的には、ユーザ端末装置１４０とサーバ装置１２０とは、ＬＡＮやインターネットなどの１種類以上のネットワークにより構成されているネットワーク１３０を介して接続されている。また、サーバ装置１２０と管理装置１００とは、ＬＡＮやインターネットなどの１種類以上のネットワークにより構成されているネットワーク１１０を介して接続されている。
【００１３】
ユーザ端末装置１４０は、ＰＣ（パーソナルコンピュータ）や携帯電話などのコンピュータであり、本実施形態に係るシステムが有する複数台のサーバ装置のうち、管理装置１００若しくはその他の装置によってユーザ端末装置１４０に割り当てられたサーバ装置１２０に対し、該サーバ装置１２０が提供するサービスを享受すべくアクセスする。このアクセスには、サーバ装置１２０に対するログイン要求や、サービスを要求するためのアクセス、再ログイン要求（前回のログイン要求から一定期間内に行うログイン要求のこと）、サービス利用のための設定変更、ログインの設定変更（ＩＰアドレスの変更など）の為のアクセス、サーバ装置１２０の障害報告のためのアクセス、などがある。
【００１４】
サーバ装置１２０は、ＰＣなどのコンピュータであり、本実施形態に係るシステムが有する複数台のサーバ装置のうち、管理装置１００（その他の装置でもよい）によってユーザ端末装置１４０に対して割り当てられた装置である。この割り当てについては特定の方法に限るものではない。そしてサーバ装置１２０は、ユーザ端末装置１４０からアクセスを受けると、このアクセスに応じた処理を行う。例えばサーバ装置１２０は、ユーザ端末装置１４０からログイン要求（再ログイン要求）を受けると、ユーザ端末装置１４０のユーザを認証する処理を行う。そしてサーバ装置１２０は、この認証が成功すると、後述するログイン情報をネットワーク１１０を介して管理装置１００に送信すると共に、ユーザ端末装置１４０に対し、ネットワーク１３０を介したサービスの提供を開始する。サービスの提供方法については本実施形態の趣旨ではなく、どのような方法でサービスを提供してもよいが、例えば、サーバ装置１２０が管理しているコンテンツ（音楽や動画像）をユーザ端末装置１４０に対してストリーミングなどでもって配信しても良い。また、サーバ装置１２０がネットワークゲームを提供する場合には、ユーザ端末装置１４０からの要求に応じたゲーム画面やゲーム情報（他のプレーヤに関する情報等）をユーザ端末装置１４０に対して送信する。
【００１５】
また、サーバ装置１２０は、ユーザ端末装置１４０から、サーバ装置１２０に対する再ログイン要求、ログインの設定変更、サーバ装置１２０の障害報告、等の規定の種別のアクセスを受けると、その旨をネットワーク１１０を介して管理装置１００に通知する。
【００１６】
管理装置１００は、ＰＣなどのコンピュータであり、ユーザ端末装置１４０からサービスを受けたい旨の通知を受けるなど、サービス開始前の何れかのタイミングでもって、本実施形態に係るシステムが有する複数台のサーバ装置のうち後述するリストに登録されていないサーバ装置から１つを、ユーザ端末装置１４０に対して割り当てる（図１ではサーバ装置１２０を割り当てている）。
【００１７】
また、管理装置１００は、本実施形態に係るシステムが有するそれぞれのサーバ装置について、該サーバ装置にログイン中のユーザ端末装置に関する情報を管理すると共に、該サーバ装置に対する規定の種別のアクセスの頻度を管理している。
【００１８】
ここで、この「アクセス頻度」については、一の定義に限るものではなく、単に「これまでのアクセス回数」と定義しても良いし、「過去の一定期間内におけるアクセス回数」と定義しても良い。
【００１９】
そして管理装置１００は、この管理している頻度が規定の頻度よりも高いサーバ装置については、次回から該サーバ装置をユーザ端末装置に割り当てる対象から外すようにすべく、該サーバ装置の識別情報を後述するリストに登録する。換言すれば、管理装置１００は、次回ユーザ端末装置１４０に対してサーバ装置を割り当てる際には、本実施形態に係るシステムが有する複数台のサーバ装置のうち、管理している頻度が規定の頻度よりも高いサーバ装置以外のサーバ装置のうち１つを割り当てる。
【００２０】
なお、図１に示したシステム構成は、本実施形態をわかりやすく説明するために簡略化させた構成の一例であって、本実施形態で説明した各装置の動作則を適用可能なシステム構成は、図１に示したシステム構成以外のシステム構成であっても良い。
【００２１】
次に、管理装置１００のハードウェア構成について、その一例を示す図２を用いて説明する。なお、図２に示した全ての構成は必ずしも必須なものではなく、状況によっては不必要な構成もあるし、追加すべき構成もある。
【００２２】
ＣＰＵ２０１は、ＲＡＭ２０２やＲＯＭ２０３に格納されているコンピュータプログラムやデータを用いて管理装置１００全体の動作制御を行うと共に、管理装置１００が行うものとして説明する各処理を実行する。
【００２３】
ＲＡＭ２０２は、ハードディスク２０６からロードされたコンピュータプログラムやデータ、ネットワークインターフェース２０７を介してサーバ装置１２０から受信した様々なデータを一時的に記憶するためのエリアを有する。更に、ＲＡＭ２０２は、ＣＰＵ２０１が各種の処理を実行する際に用いるワークエリアも有する。即ち、ＲＡＭ２０２は、各種のエリアを適宜提供することができる。
【００２４】
ＲＯＭ２０３には、管理装置１００の設定データや、ブートプログラムなどが格納されている。
【００２５】
入力部２０４は、キーボードやマウスなどの、ユーザが指示入力の為に操作可能なデバイスにより構成されており、ユーザはこの入力部２０４を操作することで、各種の指示をＣＰＵ２０１に対して与えることができる。
【００２６】
表示装置２０５は、ＣＰＵ２０１によって実行された処理の結果を画像や文字として表示することができる。
【００２７】
ハードディスク２０６には、管理装置１００のＯＳ（オペレーティングシステム）や、管理装置１００が行うものとして説明する各処理をＣＰＵ２０１に実行させるためのコンピュータプログラムやデータが保存されている。また、ハードディスク２０６には、管理装置１００が管理しているものとして説明する各種の情報や、既知の情報として説明するものも保存されている。ハードディスク２０６に保存されているコンピュータプログラムやデータは、ＣＰＵ２０１による制御に従って適宜ＲＡＭ２０２にロードされ、ＣＰＵ２０１による処理対象となる。
【００２８】
ネットワークインターフェース２０７は、管理装置１００を上記のネットワーク１１０に接続するためのもので、管理装置１００はこのネットワークインターフェース２０７を介して、ネットワーク１１０に接続されているサーバ装置１２０との間のデータ通信を行うことができる。
【００２９】
上記の説明した各部は何れも、バス２０８に接続されている。
【００３０】
なお、本実施形態では、説明を簡単にするために、ユーザ端末装置１４０、サーバ装置１２０の何れも、管理装置１００と同様のハードウェア構成、即ち、図２に示したハードウェア構成を有するものとする。然るに、以下の説明において、ユーザ端末装置１４０が行うものとして説明する処理は、ユーザ端末装置１４０のＣＰＵ２０１が実行するし、サーバ装置１２０が行うものとして説明する処理は、サーバ装置１２０のＣＰＵ２０１が実行することになる。なお、ユーザ端末装置１４０、サーバ装置１２０に適用可能なハードウェア構成については様々なものが考えられ、図２に示したハードウェア構成に限るものではない。
【００３１】
次に、ユーザ端末装置１４０、サーバ装置１２０、管理装置１００のそれぞれが行う処理について、図３のフローチャートを用いて説明する。
【００３２】
ステップＳ３０１では、ユーザ端末装置１４０は、サーバ装置１２０に対してログインの要求（ログイン要求）を送信する。このログイン要求には、ユーザ端末装置１４０のユーザＩＤやログインのためのパスワードなど、後述する認証に必要な情報が含まれている。このようなログイン要求は、ネットワーク１３０を介してサーバ装置１２０に入力される。
【００３３】
ステップＳ３１１では、サーバ装置１２０は、このログイン要求を受信すると、このログイン要求を用いて認証処理を行う。この認証処理については周知の技術であるため、詳細な説明は省略するが、例えば、サーバ装置１２０は、このログイン要求に含まれているユーザＩＤに対して予め保持しているパスワードと、このログイン要求に含まれているパスワードとを比較する。そしてそれぞれのパスワードが一致すれば、認証は成功と判断し、一致しなければ、認証は失敗と判断する。図３は、この認証が成功した場合について示しているが、この認証が失敗した場合は、サーバ装置１２０は認証が失敗した旨をユーザ端末装置１４０に通知する。
【００３４】
ステップＳ３１２ではサーバ装置１２０は、ログイン要求に含まれているユーザＩＤやパスワード、ユーザ端末装置１４０がサーバ装置１２０にログインしている旨を示す情報、等を含むログイン情報を生成し、該生成したログイン情報を送信する。この送信されたログイン情報は、ネットワーク１１０を介して管理装置１００に入力される。
【００３５】
ステップＳ３２１では、管理装置１００のＣＰＵ２０１は、サーバ装置１２０から送信されたログイン情報を、ネットワークインターフェース２０７を介して受信し、受信したログイン情報を、例えば、ハードディスク２０６に格納する。
【００３６】
サーバ装置１２０は、上記の認証が成功すると、ユーザ端末装置１４０に対し、ネットワーク１３０を介したサービスの提供を開始する。然るに、ステップＳ３１３では、サーバ装置１２０は、サーバ装置１２０が管理しているコンテンツ（音楽や動画像）や、ユーザ端末装置１４０からの要求に応じたゲーム画面やゲーム情報をユーザ端末装置１４０に対して送信する。なお、サーバ装置１２０は、サービスを提供するために、１以上の外部の機器に処理を実行させ、その実行結果をユーザ端末装置１４０に送信するようにしても良い。
【００３７】
ステップＳ３０２では、ユーザ端末装置１４０は、サーバ装置１２０から送信された情報を再生する。例えば、サーバ装置１２０から上記のようなコンテンツが送信された場合、このコンテンツに画像データが含まれていれば、この画像データに基づく画像を表示し、このコンテンツに音データが含まれていれば、この音データに基づく音を出力する。また、サーバ装置１２０から上記のようなゲーム画面やゲーム情報が送信された場合、このゲーム画面を表示すると共に、このゲーム情報に応じた表示や音出力を行う。
【００３８】
その後、ユーザ端末装置１４０からサーバ装置１２０に対してアクセス３０３があれば、サーバ装置１２０は、このアクセス３０３の種別を判断する（ステップＳ３１４）。このアクセス３０３は、上記のような規定の種別のアクセスであるかもしれないし、コンテンツの要求のためのアクセスやゲームに係る操作指示のためのアクセス等の規定の種別以外の種別のアクセスであるかもしれない点に注意されたい。
【００３９】
なお、ステップＳ３１４で行うアクセスの種別の判断については周知の技術である。そしてサーバ装置１２０は、ステップＳ３１４で、この判断した種別を管理装置１００に対して送信する。
【００４０】
なお、アクセス３０３の種別は、サーバ装置１２０以外の装置が判断しても良く、例えば、サーバ装置１２０へのアクセスを管理装置１００が監視している場合は、管理装置１００がこのアクセスの種別を判別するようにしても良い。
【００４１】
そしてステップＳ３１５では、サーバ装置１２０は、アクセス３０３に対する応答をユーザ端末装置１４０に対して送信するので、ステップＳ３０４ではユーザ端末装置１４０は、この応答を受信することになる。
【００４２】
ステップＳ３２２では、ＣＰＵ２０１は、サーバ装置１２０から送信されたアクセス３０３の種別をネットワークインターフェース２０７を介して受信する。そしてステップＳ３２３では、ＣＰＵ２０１は、このアクセス３０３の種別が規定の種別であるか否かを判断する。そして、規定の種別であると判断した場合は、処理はステップＳ３２４に進み、規定の種別ではないと判断した場合は、処理はステップＳ３２５に進む。
【００４３】
例えば、アクセス３０３の種別が、サーバ装置１２０に対する再ログイン、サーバ装置１２０に対するログインの設定変更、サーバ装置１２０の障害報告、のいずれかであれば、処理はステップＳ３２３を介してステップＳ３２４に進む。一方、何れでもない場合は、処理はステップＳ３２３を介してステップＳ３２５に進む。
【００４４】
ステップＳ３２４では、ＣＰＵ２０１は、サーバ装置１２０について管理しているカウント値を１つ（カウントアップの増分は１に限らない）カウントアップする。即ち、サーバ装置１２０に対するアクセス３０３の種別が規定の種別であると判断された回数（頻度）をこのカウンタ値でカウントしている。
【００４５】
なお、実際には、管理装置１００には、複数台のサーバ装置が接続されているので、管理装置１００は、ハードディスク２０６内で図４に示す如く、管理装置１００に接続されているサーバ装置ごとに、該サーバ装置の識別情報（ネットワークアドレスや個体番号など）と、該サーバ装置について管理しているカウント値と、を保持している。
【００４６】
ＣＰＵ２０１は、規定の種別のアクセス３０３を受けたサーバ装置について管理しているカウント値を１つカウントアップする。例えば、サーバ装置Ａ、サーバ装置Ｂ、サーバ装置Ｃのそれぞれからアクセス３０３の種別を受け、そのうちサーバ装置Ａ、サーバ装置Ｃのそれぞれから受けた種別が規定の種別であったとする。この場合、ＣＰＵ２０１は、サーバ装置Ａについて管理しているカウント値を１つカウントアップすると共に、サーバ装置Ｃについて管理しているカウント値を１つカウントアップする。
【００４７】
ステップＳ３２５では、ＣＰＵ２０１は、サーバ装置１２０について管理しているカウント値が、他のサーバ装置について管理しているカウント値と比べて比較的大きいか否かを判断する。この判断では、図４に例示したテーブルを参照すれば、それぞれのサーバ装置に対するカウント値を参照し、その中で比較的大きいカウント値や、該カウント値のサーバ装置（厳密には該サーバ装置の識別情報）を特定することができる。
【００４８】
例えば、管理装置１００にサーバ装置Ａ、サーバ装置Ｂ、サーバ装置Ｃの３台のサーバ装置が接続されているとする。この場合、ＣＰＵ２０１は、サーバ装置Ａ、サーバ装置Ｂ、サーバ装置Ｃのそれぞれのカウント値Ａ〜Ｃを参照する。そして例えば、カウント値Ａ〜Ｃのうち、カウント値Ａ〜Ｃの平均値よりも大きいカウント値を特定する。なお、ここでは規定値として平均値を用いているが、カウント値Ａ〜Ｃから求めることができる統計量であれば、他の統計量を規定値として用いても良い。
【００４９】
実際には、管理装置１００は、サーバ装置１２０だけでなく、全てのサーバ装置について管理しているカウント値を参照し、その中で規定値以上のカウント値を特定する。
【００５０】
そして、サーバ装置１２０について管理しているカウント値が、他のサーバ装置（サーバ装置１２０を含めても良い）について管理しているカウント値から計算される規定値以上であれば、処理はステップＳ３２６に進み、カウント値が規定値未満であれば、通常動作（例えばサーバ装置１２０からのアクセスを待機）を行う。
【００５１】
ステップＳ３２６では、ＣＰＵ２０１は、サーバ装置１２０を割り当て対象から外すべく、リストを作成する。例えば、何れのユーザ端末装置（ユーザ端末装置１４０を含む）に対しても割り当て不可能なサーバ装置の識別情報を登録するためのリストをハードディスク２０６内に作成し、このリストにサーバ装置１２０の識別情報を登録する。これにより、次回から、ユーザ端末装置１４０に対してサーバ装置を割り当てる際には、このリストに登録されていないサーバ装置を割り当てればよいことになり、結果として、サーバ装置１２０をシステムから分離させることができる。
【００５２】
このようなステップＳ３２６における処理が、「次回からサーバ装置１２０がユーザ端末装置に対して割り当てられないように、割り当てを行う装置に対して設定を行う」処理である。
【００５３】
なお、ＣＰＵ２０１は、ステップＳ３２６の時点で、本実施形態に係るシステムが有する複数台のサーバ装置のうち、このリストに登録されていないサーバ装置のうち１つ（新規サーバ装置）をユーザ端末装置１４０に割り当てる処理を即座に行うようにしても良い。
【００５４】
以上の処理により、サーバ装置１２０に対するアクセス３０３の種別が規定の種別であると判断された回数（頻度）が規定値以上であれば、このサーバ装置１２０を次回からの割り当て対象から外すことができる。例えば、サーバ装置１２０に対する再ログイン、サーバ装置１２０に対するログインの設定変更、サーバ装置１２０の障害報告、等のアクセスが規定回数以上サーバ装置１２０に対して行われているようであれば、このサーバ装置１２０には何らかの問題があると考えられる。そこで本実施形態では、このような規定の種別のアクセスが規定回数以上行われたサーバ装置を問題のあるサーバ装置と見なし、ユーザ端末装置へのサービス提供を行うホストから外すようにしている。
【００５５】
［第２の実施形態］
第１の実施形態では、サーバ装置１２０はユーザ端末装置１４０からアクセスがあると、その種別を判断して管理装置１００に通知し、管理装置１００はこの通知された種別が規定の種別であるか否かを判断していた。しかし、そもそも規定の種別のアクセスを行ったか否かは、すでにユーザ端末装置１４０側で分かっているため、ユーザ端末装置１４０は、規定の種別のアクセスを行った際には、管理装置１００に直接その旨を通知するようにしても良い。この場合、管理装置１００は、ユーザ端末装置１４０がサーバ装置１２０に対して規定の種別のアクセスを行った旨の通知をユーザ端末装置１４０から受けると、サーバ装置１２０に対するカウント値をカウントアップする。以降については、第１の実施形態と同様である。
【００５６】
［第３の実施形態］
第１の実施形態で説明した構成はあくまでも一例であり、ユーザ端末装置からのアクセスに応じて該ユーザ端末装置にサービスを提供するサーバ装置として該ユーザ端末装置に割り当てられた該サーバ装置、に対するアクセスの種別を取得し、該種別が規定の種別であるか否かを判断し、該判断で「規定の種別である」と判断した頻度が規定の頻度よりも高い場合に、次回から該サーバ装置がユーザ端末装置に対して割り当てられないように、割り当てを行う装置に対して設定を行うことが可能であれば、如何なる構成を採用しても良い。
【００５７】
［第４の実施形態］
第１の実施形態では、管理装置１００は、アクセスの種別が規定の種別であればカウントアップしていた。しかし、ユーザ端末装置側でローカルに行った操作（ユーザ行動）が規定の操作（ユーザ端末装置の再起動など）であれば、その旨を管理装置１００に通知し、管理装置１００は、その時点で該ユーザ端末装置に接続されているサーバ装置を特定し、該特定したサーバ装置のカウント値をカウントアップしても良い。
【図１】
0005947540.tif 000002
【図２】
0005947540.tif 000003
【図３】
0005947540.tif 000004
【図４】
0005947540.tif 000005