(57)【要約】【課題】  従来のマルチサーバシステムでは、全てのサーバが他のサーバの障害を認識するまでに時間がかかり、迅速に処理を切り替えることができないという問題点があり、各サーバがシステム内の全てのサーバの運用状況を認識でき、障害発生時に短時間で処理を切り替えて、システム停止を回避できるマルチサーバシステムを提供する。【解決手段】  二重化されたマネージャ及び複数のエージェントに全てのサーバの稼働状況を記憶したファイルを備え、エージェントが、サーバの障害を検出するとマネージャのファイルを更新してマネージャに変更通知を送信すると共に、マネージャから変更要求通知を受信するとマネージャのファイルをコピーし、マネージャが、サーバの障害を検出すると自己のファイルを更新すると共に、ファイルを更新した場合又は変更通知を受信した場合に、稼働中の全てのエージェントに変更要求通知を送信するマルチサーバシステムである。【選択図】        図６
2005316630.tif 000002
【特許請求の範囲】
【請求項１】
現用のサーバと予備のサーバとで二重化されたマネージャと、現用のサーバと予備のサーバとで二重化された複数のエージェントとを備えたマルチサーバシステムであって、
前記マネージャ及び前記エージェントの各サーバに、システム内の全てのサーバの稼働状況として「正常」又は「停止中」を記憶したシステム構成定義ファイルを備え、
前記エージェントが、システム内のいずれかのサーバの障害を検出した場合に、当該サーバの稼働状況を「停止中」とするよう前記マネージャのシステム構成定義ファイルを更新し、前記マネージャにシステム構成定義ファイルを変更したことを通知するシステム構成定義ファイル変更通知を送信すると共に、マネージャからシステム構成定義ファイルの変更を要求するシステム構成定義ファイル変更要求通知を受信した場合には、送信元のマネージャのシステム構成定義ファイルの内容で自己のシステム構成定義ファイルを更新するサーバから成るエージェントであり、
前記マネージャが、サーバの障害を検出した場合に、当該サーバの稼働状況を「停止中」とするよう自己のシステム構成定義ファイルを更新すると共に、前記システム構成定義ファイルを更新した場合、若しくは前記エージェントからシステム構成定義ファイル変更通知を受信した場合に、システム構成定義ファイルを参照して、稼働状況が「正常」である全てのエージェントにシステム構成定義ファイル変更要求通知を送信するサーバから成るマネージャであることを特徴とするマルチサーバシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二重化システムで構築されたマルチサーバシステムに係り、特に各サーバがシステム内の全てのサーバの稼働状況をリアルタイムで認識でき、障害時に短時間で処理を切り替えることができるマルチサーバシステムに関する。
【背景技術】
【０００２】
従来のマルチサーバシステムについて説明する。
従来、複数のサーバを備えたマルチサーバシステムでは、各々のサーバについて現用と予備の２つのハードウェアを備えた二重化システムで構築されているものがある。このような二重化システムでは、現用機でハードウェア障害が発生した場合に、処理を予備機に移行することにより、システム全体の停止を回避することができるものである。
【０００３】
従来の二重化システムの例としては、現用系の制御用コンピュータが一定時間間隔で稼働状況確認指令を送信し、予備系の制御用コンピュータと、現用系及び予備系の業務用コンピュータからの稼働状況情報に基づいて、現用系と予備系の切り替え指示を与え、また、予備系の制御用コンピュータが、稼働状況確認指令を一定時間間隔以上受信しないときに、自律的に現用系に切り替わる分散処理システムがあった（特許文献１参照）。
【０００４】
【特許文献１】特開平６−１９５３１８号公報（第４−９頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のマルチサーバシステムでは、現用機・予備機で各サーバ毎に運用状態を監視しているため、全てのサーバが他のサーバの障害を認識するまでに時間がかかり、迅速に処理を切り替えることができず、システムを一時停止させてしまうおそれがあるという問題点があった。
【０００６】
本発明は上記実情に鑑みて為されたもので、各サーバがシステム内の全てのサーバの運用状況を認識でき、障害発生時にも短時間で自動的に処理の切り替えを行うことができ、システム停止を回避することができるマルチサーバシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記従来例の問題点を解決するための本発明は、現用のサーバと予備のサーバとで二重化されたマネージャと、現用のサーバと予備のサーバとで二重化された複数のエージェントとを備えたマルチサーバシステムであって、マネージャ及びエージェントの各サーバに、システム内の全てのサーバの稼働状況として「正常」又は「停止中」を記憶したシステム構成定義ファイルを備え、エージェントが、システム内のいずれかのサーバの障害を検出した場合に、当該サーバの稼働状況を「停止中」とするようマネージャのシステム構成定義ファイルを更新し、マネージャにシステム構成定義ファイルを変更したことを通知するシステム構成定義ファイル変更通知を送信すると共に、マネージャからシステム構成定義ファイルの変更を要求するシステム構成定義ファイル変更要求通知を受信した場合には、送信元のマネージャのシステム構成定義ファイルの内容で自己のシステム構成定義ファイルを更新するサーバから成るエージェントであり、マネージャが、サーバの障害を検出した場合に、当該サーバの稼働状況を「停止中」とするよう自己のシステム構成定義ファイルを更新すると共に、システム構成定義ファイルを更新した場合、若しくはエージェントからシステム構成定義ファイル変更通知を受信した場合に、システム構成定義ファイルを参照して、稼働状況が「正常」である全てのエージェントにシステム構成定義ファイル変更要求通知を送信するサーバから成るマネージャであるマルチサーバシステムとしており、システム内のサーバに障害が発生した場合には、まず、マネージャのシステム構成定義ファイルを更新し、次に、当該マネージャから稼働中の全てのエージェントに対してシステム構成定義ファイルの更新を一斉に通知することにより、マネージャ及びエージェントの全てのサーバがシステム内の各サーバの最新の稼働状況を共通して認識することができ、障害発生時に迅速に処理を切り替えることができる。
【発明の効果】
【０００８】
本発明によれば、マネージャ及びエージェントの各サーバに、システム内の全てのサーバの稼働状況を記憶したシステム構成定義ファイルを備え、エージェントが、サーバの障害を検出すると、当該サーバの稼働状況を「停止中」としてマネージャのシステム構成定義ファイルを更新して、マネージャにシステム構成定義ファイル変更通知を送信すると共に、マネージャからシステム構成定義ファイル変更要求通知を受信した場合には、送信元のマネージャのシステム構成定義ファイルの内容で自己のシステム構成定義ファイルを更新し、また、マネージャが、サーバの障害を検出すると、当該サーバの稼働状況を「停止中」として自己のシステム構成定義ファイルを更新すると共に、システム構成定義ファイルを更新した場合又はエージェントからシステム構成定義ファイル変更通知を受信した場合に、システム構成定義ファイルを参照して、稼働中の全てのエージェントにシステム構成定義ファイル変更要求通知を送信するマルチサーバシステムとしているので、システム内のサーバに障害が発生した場合には、まず、マネージャのシステム構成定義ファイルを更新し、次に、当該マネージャから稼働中の全てのエージェントに対してシステム構成定義ファイルの更新を一斉に通知することにより、マネージャ及びエージェントの全てのサーバがシステム内の各サーバの最新の稼働状況を共通して認識することができ、障害発生時に迅速に処理を切り替えることができ、システムの一時停止を回避し、安定運用を図ることができる効果がある。
【発明を実施するための最良の形態】
【０００９】
本発明の実施の形態について図面を参照しながら説明する。
本発明のマルチサーバシステムは、現用と予備により二重化されたマネージャのサーバと、ノード毎に現用と予備により二重化された複数のエージェントのサーバから成るシステムであり、各サーバにシステム内の全サーバの稼働状態を示すデータを記憶するテーブルを備え、障害発生時には、まずマネージャのテーブルを更新し、次いでマネージャからの指示により、エージェントが一斉に自己のテーブルを更新するものであり、各々のサーバが全てのサーバの稼働状況をリアルタイムで共通認識でき、テーブルを参照することにより、障害発生時には迅速に処理の切り替えを行うことができるものである。
【００１０】
本発明の実施の形態に係るマルチサーバシステム（本システム）について図面を用いて説明する。図１は、本発明の実施の形態に係るマルチサーバシステム（本システム）の構成ブロック図である。
本発明の実施の形態に係るマルチサーバシステムは、図１に示すように、多重化された複数のノード（ノード１〜ノードＮ）を備えており、現用と予備の１組のマネージャと、現用と予備の組から成る複数のエージェントと、それらを接続するＬＡＮ等のネットワークとから構成されている。ノード１〜ノードＮは、それぞれサーバである。
【００１１】
ノード１はマネージャであり、マネージャ（現用）１-1と、マネージャ（予備）１-2と、とから構成されている。
また、ノード２〜ノードＮはエージェントであり、ノード２の現用はエージェント１、ノード２の予備はエージェント２、以下同様にノードＮの現用はエージェントｎ、ノードＮの予備はエージェントｎ＋１となっている。
【００１２】
各ノードの概略ハードウェア構成について図１を用いて説明する。
ノード１のマネージャ（現用）１-1は、ネットワークを介した通信を行うＬＡＮボード等の通信部１５と、装置全体の制御を行うＣＰＵ等の制御部１６と、種々のデータや制御部１６における処理プログラムを記憶するハードディスク等の記憶部１７を備えている。特に、制御部１６は、システム構成管理プロセスを実行して、多重化されたシステム全体のシステム構成の管理を行うものである。尚、制御部１６には処理に伴うデータを一時的に記憶する記憶部（ワークメモリ）が設けられている。そして、本システムの特徴として、記憶部１７にシステム構成定義ファイル１０が記憶されており、制御部１６においてシステム構成を管理するマネージャ用のシステム構成管理プロセスを実行するようになっている。
マネージャ（予備）１-2も同様の構成であるため、図示及び説明を省略する。
【００１３】
また、ノード２〜ノードＮのエージェント２-1〜エージェント２-n+1は、マネージャ１と同様に、通信制御を行う通信部２５と、装置全体の制御を行う制御部２６と、種々のデータや制御部２６における処理プログラムを記憶する記憶部２７とを備えており、記憶部２７にはマネージャ１と同様のシステム構成定義ファイル２０が記憶されている。そして、エージェントの制御部２６は、エージェント用のシステム構成管理プロセスを実行するものである。
【００１４】
本システムは、マネージャの制御部１６におけるシステム構成管理プロセスと、エージェントの制御部２６におけるシステム構成管理プロセスとが、マネージャのシステム構造定義ファイル１０とエージェントのシステム構造定義ファイル２０のデータが、常に一致するように、通知及びファイルを更新する処理を行うものであり、障害が発生した場合に、各ノードが直ちに障害発生を認識して、システムの切り替えを行うことができるものである。
【００１５】
ここで、システム構成定義ファイル１０、２０の構成について図２を用いて説明する。図２は、システム構成定義ファイル１０、２０の構成を示す模式説明図である。
図２に示すように、システム構成定義ファイル１０又は２０は、マネージャ／エージェントにかかわらず、システム内の全てのサーバが同一内容で備えているものであり、各ノード毎に現用と予備の現在の稼働状況（ステータス）を示すデータを記憶している。具体的には、サーバが正常に稼働している状態であれば、システム構成定義ファイル１０及び２０の当該のサーバに対応する部分に「正常」が記憶され、サーバに障害が発生して停止中であれば「停止中」が記憶されているものである。例えば、図２の例では、「ノード２の現用」サーバが「停止中」となっている。
【００１６】
次に、マネージャ１及びエージェント２のソフトウェア構成について図３を用いて説明する。図３（ａ）は、マネージャのソフトウェア構成を示す説明図であり、（ｂ）は、エージェントのソフトウェア構成を示す説明図である。
図３（ａ）に示すように、マネージャのシステム構成管理プロセスを実現するソフトウェアは、状態確認プロセス１１と、システム構成定義ファイル変更プロセス１２（以下、ファイル変更プロセス１２）と、システム構成定義ファイル変更通知プロセス１３（以下ファイル変更通知プロセス１３）とから構成され、これらの処理においてシステム構成定義ファイル１０を参照／更新するようになっている。
【００１７】
ここで、各プロセスは、図１に示したマネージャ１の記憶部１７に記憶されている各プロセスに対応したプログラムを、制御部１６がワークメモリ（図示せず）に展開して起動することにより実現されるものである。
【００１８】
マネージャの各プロセスについて具体的に説明する。
マネージャの状態確認プロセス１１は、二重化されているマネージャ（現用）１-1とマネージャ（予備）１-2の間で、定期的（例えば１分間隔等）に稼働状態を確認し、障害（応答無し）を検出したときは、ファイル変更プロセス１２を起動する処理である。
【００１９】
また、マネージャのファイル変更プロセス１２は、状態確認プロセス１１が障害を検出した場合に起動され、マネージャ１の記憶部１５に記憶されているシステム構成定義ファイル１０の、障害が発生したサーバの稼働状況を「停止中」に書き替える処理である。
【００２０】
マネージャのファイル変更通知プロセス１３は、マネージャが、エージェント２から「システム構成定義ファイル変更通知」のコマンドを受信した場合に起動されるものであり、システム構成定義ファイル１０を読み込み、稼働状態が「停止中」以外のエージェントに対して、「システム構成に変更が発生したこと」を通知するものである。尚、本システムではこの通知を「システム構成定義ファイル変更要求通知」と称し、送信元のマネージャを特定する情報を含むものとする。
【００２１】
また、図３（ｂ）に示すように、エージェントのシステム構成管理プロセスを実現するソフトウェアは、状態確認プロセス２１と、システム構成定義ファイル変更プロセス２２（以下、ファイル変更プロセス２２）と、システム構成定義ファイル変更通知プロセス２３（以下、ファイル変更通知プロセス２３）と、システム構成定義ファイル取得プロセス２４（以下、ファイル取得プロセス２４）から構成され、システム構成定義ファイル２０を参照／更新するようになっている。
【００２２】
また、これらの各プロセスも、マネージャにおけるプロセスと同様に、エージェントの記憶部２７に記憶されている各プロセスに対応したプログラムを、制御部２６がワークメモリ（図示せず）に展開して起動することにより実現されるものである。
【００２３】
エージェントの各プロセスについて具体的に説明する。
エージェントの状態確認プロセス２１は、二重化されている各々のノードにおいて、現用と予備との間で定期的に稼働状況を確認し、障害（応答無し）を検出した場合に、ファイル変更プロセス２２を起動する処理である。
例えば、ノードｍにおける現用がエージェントｐ、予備がエージェントｑであった場合、エージェントｐとエージェントｑの状態確認プロセス２１が、それぞれ定期的に相手方の稼働状況を確認して、障害を検出すると、自己のファイル変更プロセス２２を起動するようになっている。
【００２４】
エージェントのファイル変更プロセス２２は、状態確認プロセス２１が障害を検出した場合に起動され、マネージャのシステム構成定義ファイル１０にアクセスして、障害が発生したノードの現用又は予備の稼働状況を「停止中」に書き替える処理である。
例えば、ノードｍの現用（エージェントｐ）に障害が発生して停止した場合には、予備（エージェントｑ）が、ファイル変更プロセス２２によってマネージャ１-1及び１-2のシステム構成定義ファイル１０にアクセスしてノードｍの現用に対応する稼働状況を「停止中」に更新するものである。
【００２５】
また、エージェントでは、マネージャに対する書き込みや読み込み等のイベント時にマネージャ１の障害を検出することがあり、そのようなイベント時にマネージャ１の障害を検出した際にも、ファイル変更プロセス２２が起動される。
この場合には、マネージャ１の障害が発生していない方の装置のシステム構成定義ファイル１０にアクセスして、障害が発生したマネージャ１の稼働状況を「停止中」に書き替えるものである。
【００２６】
エージェントのファイル変更通知プロセス２３は、ファイル変更プロセス２２によって更新が行われた場合に起動されるものであり、「システム構成に変更が発生したこと」を「システム構成定義ファイル変更通知」によってマネージャ１に通知する処理である。
ここで、ファイル変更通知プロセス２３では、システム構成定義ファイル変更通知を送信する前に、ファイル変更プロセス２２の更新処理の成否に基づいてマネージャの稼働状況を確認し、マネージャの現用が正常の場合にはマネージャ（現用）１-1にシステム構成定義ファイル変更通知を送信し、マネージャの現用が停止中の場合にはマネージャ（予備）１-2に送信するようになっている。
【００２７】
そして、エージェントのファイル取得プロセス２４は、マネージャからシステム構成定義ファイル変更要求通知を受信したときに起動され、通知の送信元であるマネージャにアクセスして、システム構成定義ファイル１０を取得し、自己のシステム構成定義ファイル２０にコピーする処理である。
マネージャ及びエージェントの各プロセスが連動した動作については後で詳細に説明する。
【００２８】
次に、本システムの動作について具体的に説明する。
まず、障害の検出方法について図４を用いて説明する。図４は、状態確認プロセスによる障害検出を示す模式説明図である。
図４に示すように、マネージャ、エージェントでは、各ノード毎に、多重化されている現用と予備との間で定期的に互いの稼働状況を確認する。具体的には、定期的（例えば１分間隔）に状態確認プロセスを起動することにより、定期的に、一方の装置（送信側の装置）が他方の装置（受信側の装置）に対して状態確認要求を出力し、受信側の装置が応答信号を出力する。送信側の装置で応答信号が受信されない場合、送信側の装置は、受信側の装置に障害が発生したと認識するようになっている。この処理は、受信側と送信側を入れ替えた組み合わせでも定期的に行われている。そして、状態確認プロセスは、上述したように、障害発生を認識すると、マネージャのファイル変更プロセス１２又はエージェントのファイル変更プロセス２２を起動するようになっている。
【００２９】
次に、エージェントにおけるイベントで障害を検出する場合について図５を用いて説明する。図５は、エージェントがイベントで障害を検出する場合の模式説明図である。
図５に示すように、例えばエージェント２-1がマネージャ（現用）１-1又はマネージャ（予備）１-2に対してデータの書き込みや読み込みプロセスを実行した際に、書き込みや読み込みプロセスに失敗すると、エージェント２-1はマネージャ１-1又はマネージャ１-2の障害を検出し、ファイル変更プロセス２２を起動するようになっている。
【００３０】
次に、エージェントに障害が発生した場合の本システムの動作について図６を用いて説明する。図６は、エージェントに障害が発生した場合の動作を示す模式説明図である。
図６に示すように、例えば、ノード２の現用であるエージェント２-1で障害が発生すると、ノード２の予備であるエージェント２-2の状態確認プロセス２１が障害を検出し、エージェント２-2のファイル変更プロセス２２が、マネージャ（現用）１-1及びマネージャ（予備）１-2のシステム構成定義ファイル１０にアクセスして、ノード２の現用に対応する稼働状況を「停止中」に書き替える（１）。
【００３１】
そして、エージェント２-2は、ファイル変更通知プロセス２３を起動して、ファイル変更プロセス２２の更新処理の成否に基づいて、マネージャ１-1及びマネージャ１-2の稼働状況を判断し、マネージャ１-1が正常に稼働している場合には、マネージャ１-1に対して、システム構成定義ファイル１０の更新を行ったことを通知する（２）。尚、ファイル変更プロセス２２において、マネージャ１-1が障害状態であると判断した場合には、エージェント２-2は、ファイル変更通知プロセス２３によってマネージャ１-2に変更通知を送信する。
【００３２】
エージェント２-2からの変更通知コマンドを受信したマネージャ１-1は、ファイル変更通知プロセス１３を起動し、システム構成定義ファイル１０を参照して、稼働中の（稼働状況が「正常」である）全てのエージェントに対して、システム構成定義ファイル変更要求通知を出力する（３）。
【００３３】
そして、各エージェントは、マネージャ１-1からシステム構成定義ファイル変更要求通知を受信すると、ファイル取得プロセス２４を起動して、送信元のマネージャ１-1にアクセスし、最新のシステム構成定義ファイル１０のデータを取得して自己のシステム構成定義ファイル２０にコピーする（４）。これにより、全てのエージェントのシステム構成定義ファイルにおいて、「ノード２（現用）」の稼働状況は「停止中」となり、システム内の全てのサーバが「ノード２（現用）が停止中」であることを記憶するものである。このようにして、エージェントで障害が発生した場合の本システムの動作が行われるものである。
【００３４】
次に、マネージャにも障害が発生した場合の動作について図７を用いて説明する。図７は、エージェントに加えてマネージャにも障害が発生した場合の本システムの動作を示す模式説明図である。
図７に示すように、ノード２（現用）のエージェント２-1に引き続きノード１（現用）のマネージャ１-1に障害が発生し、これをノード１（予備）のマネージャ１-2が状態確認プロセス１１で検出した場合、マネージャ１-2はファイル変更プロセス１２を起動して、システム構成定義ファイル１０のノード１（現用）を「停止中」に書き換える（１）。
【００３５】
そして、マネージャ１-2は、システム構成定義ファイル１０を書き換えると、ファイル変更通知プロセス１３を起動して、システム構成定義ファイル１０を参照し、稼働状況が「正常」である全てのエージェントにシステム構成定義ファイル変更要求通知を出力する（２）。ここで、システム構成定義ファイル変更通知の中には、送信元がマネージャ１-2であることを示す識別情報も含まれているものである。
【００３６】
そして、システム構成定義ファイル変更要求通知を受信したエージェントは、ファイル取得プロセス２４を起動して、システム構成定義ファイル変更要求通知の送信元であるマネージャ１-1にアクセスし、システム構成定義ファイル１０をコピーして、自己のシステム構成定義ファイル２０をコピーしたファイルの内容で更新する（３）。
【００３７】
これにより、各エージェントのシステム構成定義ファイルにおいても「ノード１（現用）」の稼働状況は「停止中」となり、エージェントからマネージャ１に対するアクセスが必要となった場合には、ノード１（予備）であるマネージャ１-2にアクセスする。このようにしてマネージャに障害が発生した場合の動作が行われるものである。
【００３８】
次に、マネージャに障害が発生したことをエージェントがイベントの際に検出した場合の動作について図８を用いて説明する。図８は、マネージャに障害が発生したことをエージェントがイベントの際に検出した場合の本システムの動作を示す模式説明図である。
図８に示すように、ノード２（現用）のエージェント２-1が、ノード１（現用）のマネージャ１-1に対する書き込みエラーや読み出しエラー等によりマネージャ１-1の障害を検出した場合、エージェント２-1は、ファイル変更プロセス２２を起動して、ノード１（予備）のマネージャ１-2にアクセスしてシステム構成定義ファイル１０の「ノード１（現用）」を「停止中」に更新する（１）。
【００３９】
そして、エージェント２-1は、ファイル変更通知プロセス２３により、マネージャ１-2にシステム構成定義ファイル変更通知を送信する（２）。
マネージャ１-2は、システム構成定義ファイル変更通知を受信すると、システム構成定義ファイル１０を参照して、稼働中の全てのエージェントに対してシステム構成定義ファイル変更要求通知を送信する（３）。
【００４０】
そして、システム構成定義ファイル変更要求通知を受信したエージェントが、マネージャ１-2のシステム構成定義ファイル１０を取得して自己のシステム構成定義ファイル２０を更新する（４）。このようにして、エージェントにおけるイベントでマネージャ１の障害が検出された場合の動作が行われるものである。
【００４１】
次に、本システムを音声応答システムに適用した場合の例について説明する。
まず、本システムが適用された音声応答システムについて図９を用いて説明する。図９は、本システムが適用された音声応答システムの概略システム構成図である。
音声応答システムは、証券会社等に設けられるものであり、投資家等からの電話による株価や市況情報等の問い合わせに対して、自動音声にて回答するシステムである。そして、図９に示すように、音声応答システムは、公衆回線網に接続するＩＮＳ1500回線３６と、ＩＮＳ1500回線３６に接続するＩＮＳ1500用回線切替機３２と、音声応答制御を行うコールセンター７と、情報ベンダー３１からの情報を受信し、ネットワーク制御を行うシンクディストリビュータ現用４１及びシンクディストリビュータ予備４２と、情報ベンダから市況データを取得して市況データ蓄積サーバに出力する市況データ取得サーバ現用５１及び市況データ取得サーバ予備５２と、取得した市況データを蓄積する市況データ蓄積サーバ現用６１及び市況データ蓄積サーバ予備６２と、サーバ間を接続するＬＡＮ等のネットワーク３７とから構成されている。
【００４２】
更に、コールセンター７には、コールセンターサーバ現用７１及びコールセンターサーバ予備７２とが設けられている。また、市況データ蓄積サーバ現用６１には市況データを記憶する市況データ蓄積データベース６３が接続され、同様に、市況データ蓄積サーバ予備６２には市況データ蓄積データベース６４が接続されている。
【００４３】
このように、本システムを用いた音声応答システムは、各ノードが多重化されたマルチサーバシステムとなっており、ここでは、市況データ蓄積サーバ現用６１及び市況データ蓄積サーバ予備６２がマネージャであり、市況データ取得サーバ現用５１及び市況データ取得サーバ予備５２と、コールセンターサーバ現用７１及びコールセンターサーバ予備７２とがエージェントとなっている。尚、図９において、破線で囲んだ部分が本システムが適用されている部分である。
【００４４】
そして、図９では図示は省略されているが、マネージャ、エージェントの各サーバには、上述したようにシステム構成定義ファイル１０又は２０が設けられており、本システム内のいずれかのサーバに障害が発生したことを検出した場合には、上述した方法で迅速にシステム構成定義ファイルを更新すると共に、各サーバがシステム構成定義ファイルを参照して処理の切り替えを行うようになっている。
【００４５】
ここで、図９に示した音声応答システムの一般的な動作を簡単に説明する。
情報取得時の動作は、情報ベンダー３１からの市況データが、シンクディストリビュータ４１（又は４２）を介して市況データ取得サーバ現用５１及び市況データ取得サーバ予備５２に入力され、市況データ取得サーバ現用５１又は市況データ取得サーバ予備５２によって市況データ蓄積サーバ現用６１及び市況蓄積サーバ予備６２に取得された市況データが出力され、それぞれ市況データ蓄積データベース６３又は６４にデータを蓄積する。これにより、市況データ蓄積データベース６３及び６４に市況データが蓄積されるものである。
【００４６】
また、顧客からの情報要求時の動作は、まず、顧客の電話機３４又はＦＡＸ３５から入力されたデータが公衆回線網及びＩＮＳ1500回線３６を介してＩＮＳ1500用回線切替機３７に入力され、変換されてコールセンター７に入力される。コールセンター７では、コールセンターサーバ７１（又は７２）が入力されたデータに基づいて、顧客が希望する情報を市況データ蓄積サーバ６１（又は６２）に要求し、市況データ蓄積サーバ６１（又は６２）が市況データ蓄積データベース６３（又は６４）を検索して、要求されたデータをコールセンターサーバ７１（又は７２）に出力し、コールセンターサーバ７１（又は７２）が応答音声を生成して、顧客の電話機３４に応答したり、若しくはコールセンターサーバ７１（又は７２）がＦＡＸデータを生成して顧客のＦＡＸ３５に出力するようになっている。これにより、顧客は、所望の情報を音声又はＦＡＸ情報として得ることができるものである。
【００４７】
次に、上記音声応答システムにおける市況データ取得及び市況データ蓄積サーバへの蓄積（格納）の動作について図１０を用いて説明する。図１０は、音声応答システムにおけるデータ取得及び格納の動作を示す模式説明図である。
図１０に示すように、まず、音声応答システムでは、情報ベンダー３１に対して市況データを要求する銘柄を予め通知しておく。そして、情報ベンダー３１は、要求されている銘柄を対象として、データ更新のイベントが発生した場合に、更新された部分だけを音声応答システムのシンクディストリビュータ現用４１に出力する（１）。
【００４８】
シンクディストリビュータ現用４１は、更新データを受信すると（２）、受信した更新データをエージェントである市況データ取得サーバ現用５１及び市況データ取得サーバ予備５２の両方に出力する。
【００４９】
市況データ取得サーバ現用５１が正常に動作している場合、市況データ取得サーバ現用５１は、シンクディストリビュータ現用４１からの更新データを受け取り、市況データ蓄積サーバ現用６１及び市況データ蓄積サーバ予備６２に、データベース更新要求を発行する（３）。
【００５０】
また、市況データ取得サーバ予備５２は、シンクディストリビュータ現用４１からの更新データを受け取り、自己のシステム構成定義ファイル２０を参照して、市況データ取得サーバ現用５１の稼働状況が「正常」の場合には、そのまま処理を終わる。すなわち、市況データ取得サーバ現用５１が正常に稼働中であれば、市況データ取得サーバ現用５１がデータベース更新要求するので、市況データ取得サーバ予備５２は何もしないものである。
【００５１】
しかし、市況データ取得サーバ予備５２は、システム構成定義ファイル２０を参照して、市況データ取得サーバ現用５１が「停止中」の場合には、市況データ取得サーバ予備５２が、市況データ蓄積サーバ現用６１及び市況データ蓄積サーバ予備６２に、データベース更新要求を発行する（３′）。
【００５２】
そして、市況データ蓄積サーバ現用６１及び市況データ蓄積サーバ予備６２は、データベース更新要求を受信すると、それぞれ、市況データ蓄積データベース６３又は市況データ蓄積データベース６４を更新する（４）。
【００５３】
このようにして、本システムを用いた音声応答システムにおけるデータ取得時の処理が行われ、市況データ取得サーバ現用５１に障害が発生した場合に迅速に市況データ取得サーバ予備５２に処理を移行して、市況データ蓄積サーバ現用６１及び市況データ蓄積サーバ予備６２にデータベース更新要求を発行でき、市況データ蓄積データベース６３及び６４へのデータの蓄積が支障無く行われるものである。
【００５４】
次に、本システムを用いた音声応答システムにおける顧客からの問い合わせ時の動作について図１１を用いて説明する。図１１は、音声応答システムにおける顧客からの問い合わせ時の動作を示す説明図である。
図１１に示すように、顧客が電話機３４から音声による問い合わせを入力すると（１）、音声データが公衆網等を介してコールセンター７のコールセンターサーバ現用７１の自動音声応答手段７１ａに入力される。すると、コールセンターサーバ現用７１の自動音声応答手段７１ａは、入力された音声データをトーン解析し、株価照会手段（図では株価照会ＪＯＢ）７１ｂに通知する（２）。
【００５５】
ここで、自動音声応答手段及び株価照会手段は、コールセンターサーバ現用７１のＣＰＵ等の制御部が、記憶部に記憶されたそれぞれの手段に対応したプログラムを起動して実現されるものである。コールセンターサーバ予備７２にもコールセンターサーバ現用７１と同様の手段が設けられている。
【００５６】
株価照会手段７１ｂは、指定銘柄の株価を市況データ蓄積サーバ現用６１又は市況データ蓄積サーバ予備６２に問い合わせる（３）。
このとき、エージェントであるコールセンターサーバ現用７１の株価照会手段７１ｂは、自己のシステム構成定義ファイル２０を参照して、マネージャである市況データ蓄積サーバ現用６１の稼働状況を確認する。そして、市況データ蓄積サーバ現用６１の稼働状況が「正常」であった場合には、指定銘柄の株価を市況データ蓄積サーバ現用６１に問い合わせるものである。
【００５７】
また、株価照会手段７１ｂが、システム構成定義ファイル２０を参照した際に、市況データ蓄積サーバ現用６１の稼働状況が「停止中」であった場合には、株価照会手段７１ｂは、市況データ蓄積サーバ予備６２に指定銘柄の株価を問い合わせるようになっている。
このように、株価照会手段７１ｂは、市況データ蓄積サーバ現用６１に障害が発生した場合には市況データ蓄積サーバ予備６２に問い合わせて、確実に株価データを取得することができるものである。
【００５８】
要求された市況データ蓄積サーバ現用６１又は市況データ蓄積サーバ予備６２は、市況データ蓄積データベース６３又は６４を検索し、要求のあった銘柄の株価を株価照会手段７１ｂに出力する（４又は４′）。
【００５９】
そして、株価照会手段７１ｂは、市況データ蓄積サーバ現用６１又は市況データ蓄積サーバ予備６２を介して市況データ蓄積データベース６３（又は６４）から指定銘柄の株価を取得すると（５）、自動音声応答手段７１ａに出力し、自動音声応答手段７１ａが音声の応答メッセージを組み立て、通信回線を介して顧客の電話機電話機３４に出力する（６）。このようにして、顧客からの株価の問い合わせがあった場合の動作が行われるものである。これにより、サーバに障害が発生した場合でも、支障なく投資家等に情報を提供することができるものである。
【００６０】
また、図示は省略するが、（１）の顧客からの株価問い合わせがコールセンターサーバ現用７１とコールセンターサーバ予備７２の両方に入力されるようにしておき、コールセンターサーバ予備７２は、システム構成定義ファイルを参照して、コールセンターサーバ７１が停止している場合にのみ株価照会手段を起動して、市況データ蓄積サーバ現用６１又は市況データ蓄積サーバ予備６２への問い合わせを行うようにしてもよい。
【００６１】
本発明の実施の形態に係るマルチサーバシステムによれば、現用のサーバと予備のサーバが二重化されているマネージャと複数のエージェントとを備えたマルチサーバシステムであって、各サーバ毎にシステム内の全てのサーバの稼働状況を記憶するシステム構成定義ファイルを備え、多重化された一方のエージェントで障害が発生したことを多重化された他方のエージェントが検出すると、検出したエージェントが、マネージャのシステム構成定義ファイルを、障害が発生したエージェントの稼働状況が停止中となるよう書き換え、書き換えたことをマネージャに通知し、マネージャが、システム構成定義ファイルを参照して稼働中の全てのエージェントに対して、システム構成定義ファイルを更新するようシステム構成定義ファイル変更要求通知を送信し、通知を受けたエージェントが、通知の送信元のマネージャのシステム構成定義ファイルをコピーして自己のシステム構成定義ファイルを更新するマルチサーバシステムとしているので、システム内の全てのサーバが、各々のサーバの最新の稼働状況を共通に認識することができ、いずれかのエージェントで障害が発生した場合に迅速に処理を切り替えて、システムの停止を防ぐことができる効果がある。
【００６２】
また、本発明の実施の形態に係るマルチサーバシステムによれば、各サーバ毎にシステム内の全てのサーバの稼働状況を記憶するシステム構成定義ファイルを備え、多重化された一方のマネージャで障害が発生したことを多重化された他方のマネージャが検出すると、検出したマネージャが自己のシステム構成定義ファイルを書き換え、更に、システム構成定義ファイルを参照して稼働中の全てのエージェントに対して、システム構成定義ファイルを更新するようシステム構成定義ファイル変更要求通知を送信し、通知を受けたエージェントが、通知の送信元のマネージャのシステム構成定義ファイルをコピーして自己のシステム構成定義ファイルを更新するマルチサーバシステムとしているので、システム内の全てのサーバが、各々のサーバの最新の稼働状況を共通に認識することができ、いずれかのマネージャで障害が発生した場合に他方のマネージャを用いるよう迅速に処理を切り替えて、システムの停止を防ぐことができる効果がある。
【００６３】
また、本発明の実施の形態に係るマルチサーバシステムによれば、各サーバ毎にシステム内の全てのサーバの稼働状況を記憶するシステム構成定義ファイルを備え、一方のマネージャで障害が発生したことを任意のエージェントが読み出し／書き込みのイベントで検出すると、検出したエージェントが他方のマネージャのシステム構成定義ファイルを書き換え、他方のマネージャにシステム構成定義ファイルを書き換えたことを通知し、通知を受けたマネージャが、システム構成定義ファイルを参照して稼働中の全てのエージェントに対して、システム構成定義ファイルを更新するようシステム構成定義ファイル変更要求通知を送信し、通知を受けたエージェントが、通知の送信元のマネージャのシステム構成定義ファイルをコピーして自己のシステム構成定義ファイルを更新するマルチサーバシステムとしているので、システム内の全てのサーバが、各々のサーバの最新の稼働状況を共通に認識することができ、いずれかのマネージャで障害が発生したことをエージェントがイベントで検出した場合に、迅速にもう一方のマネージャに処理を切り替えて、システムの停止を防ぐことができる効果がある。
【産業上の利用可能性】
【００６４】
本発明は、二重化システムで構築されたマルチサーバシステムであって、各サーバがシステム内の全てのサーバの稼働状況を認識でき、障害発生時に短時間で処理を切り替えることができるマルチサーバシステムに適している。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施の形態に係るマルチサーバシステム（本システム）の構成ブロック図である。
【図２】システム構成定義ファイル１０、２０の構成を示す模式説明図である。
【図３】（ａ）は、マネージャのソフトウェア構成を示す説明図であり、（ｂ）は、エージェントのソフトウェア構成を示す説明図である。
【図４】状態確認プロセスによる障害検出を示す模式説明図である。
【図５】エージェントがイベントで障害を検出する場合の模式説明図である。
【図６】エージェントに障害が発生した場合の動作を示す模式説明図である。
【図７】エージェントに加えてマネージャにも障害が発生した場合の本システムの動作を示す模式説明図である。
【図８】マネージャに障害が発生したことをエージェントがイベントの際に検出した場合の本システムの動作を示す模式説明図である。
【図９】本システムが適用された音声応答システムの概略システム構成図である。
【図１０】音声応答システムにおけるデータ取得及び格納の動作を示す模式説明図である。
【図１１】音声応答システムにおける顧客からの問い合わせ時の動作を示す説明図である。
【符号の説明】
【００６６】
１…マネージャ、  ２…エージェント、  ７…コールセンター、  １０…システム構成定義ファイル、  １１…状態確認プロセス、  １２…システム構成定義ファイル変更プロセス、  １３…システム構成定義ファイル変更通知プロセス、  １５…通信部、  １６…制御部、  １７…記憶部、  ２０…システム構成定義ファイル、  ２１…状態確認プロセス、  ２２…システム構成定義ファイル変更プロセス、  ２３…システム構成定義ファイル変更通知、  ２４…システム構成定義ファイル取得プロセス、２５…  ３１…情報ベンダー、  ３２…ＩＮＳ1500用回線切替機、  ３４…電話機、  ３５…ＦＡＸ、  ３７…ネットワーク、  ４１…シンクディストリビュータ現用、  ４２…シンクディストリビュータ予備、  ５１…市況データ取得サーバ現用、  ５２…市況データ取得サーバ予備、  ６１…市況データ蓄積サーバ現用、  ６２…市況データ蓄積サーバ予備、  ６３…市況データ蓄積データベース現用、  ６４…市況データ蓄積データベース予備、  ７１…コールセンターサーバ現用、  ７２…コールセンターサーバ予備
【図１】
2005316630.tif 000003
【図２】
2005316630.tif 000004
【図３】
2005316630.tif 000005
【図４】
2005316630.tif 000006
【図５】
2005316630.tif 000007
【図６】
2005316630.tif 000008
【図７】
2005316630.tif 000009
【図８】
2005316630.tif 000010
【図９】
2005316630.tif 000011
【図１０】
2005316630.tif 000012
【図１１】
2005316630.tif 000013