JP2016062340A - 情報処理システム、情報処理装置、情報処理方法、及び、プログラム - Google Patents

情報処理システム、情報処理装置、情報処理方法、及び、プログラム Download PDF

Info

Publication number
JP2016062340A
JP2016062340A JP2014190272A JP2014190272A JP2016062340A JP 2016062340 A JP2016062340 A JP 2016062340A JP 2014190272 A JP2014190272 A JP 2014190272A JP 2014190272 A JP2014190272 A JP 2014190272A JP 2016062340 A JP2016062340 A JP 2016062340A
Authority
JP
Japan
Prior art keywords
notification
failure
tree
client
information processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014190272A
Other languages
English (en)
Other versions
JP6369255B2 (ja
Inventor
順平 宮内
Junpei Miyauchi
順平 宮内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2014190272A priority Critical patent/JP6369255B2/ja
Publication of JP2016062340A publication Critical patent/JP2016062340A/ja
Application granted granted Critical
Publication of JP6369255B2 publication Critical patent/JP6369255B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】サーバ装置の障害をクライアント装置で検出するシステムにおいて、障害通知の数を低減する。【解決手段】サービス提供システム1は、サーバ装置100と複数のクライアント装置200とを含む。複数のクライアント装置200の各々は、監視部220と通知部230とを含む。監視部220は、サーバ装置100の障害を監視する。通知部230は、複数のクライアント装置200の各々から所定の装置への通知の経路を示す、複数のクライアント装置200が配置された仮想ツリー142に従って、サーバ装置100の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する。【選択図】図1

Description

本発明は、情報処理システム、情報処理装置、情報処理方法、及び、プログラムに関する。
サーバ装置がクライアント装置に対してWebサービスを提供するシステムにおいて、クライアント装置側でサーバ装置の障害を検出する技術が、例えば、特許文献1に開示されている。特許文献1に記載されているクライアント装置は、サーバからのレスポンスタイムをもとに、スローダウンの予兆を検出し、予兆が検出された場合に、その旨を評価装置へ通知する。
なお、関連技術として、特許文献2には、多数のノードにおいて障害が同時に発生した場合に、ネットワーク監視装置において同一内容の障害通知を破棄する技術が開示されている。
特開2010−231368号公報 特開平6−30014号公報
上述の特許文献1の技術では、クライアント装置が多数存在する場合に、同時に多数のクライアント装置から通知が送信される。クライアント装置からの通知を評価装置やサーバ装置が受信する場合、このような多数の通知により、評価装置やサーバ装置は、サービス妨害攻撃(DOS(Denial Of Service)攻撃)を受けたときと同様に、ダウンさせられる危険性がある。
本発明の目的は、上述した課題を解決し、サーバ装置の障害をクライアント装置で検出するシステムにおいて、障害通知の数を低減可能な、情報処理システム、情報処理装置、情報処理方法、及び、プログラムを提供することにある。
本発明の情報処理システムは、サーバ装置と複数のクライアント装置とを備え、前記複数のクライアント装置の各々は、前記サーバ装置の障害を監視する監視手段と、前記複数のクライアント装置の各々から所定の装置への通知の経路を示す、前記複数のクライアント装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する通知手段と、を含む。
本発明の情報処理装置は、サーバ装置と複数の情報処理装置を含む情報処理システムにおける情報処理装置であって、前記サーバ装置の障害を監視する監視手段と、前記複数の情報処理装置の各々から所定の装置への通知の経路を示す、前記複数の情報処理装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する通知手段と、を含む。
本発明の情報処理方法は、サーバ装置と複数のクライアント装置を含む情報処理システムにおける情報処理方法であって、前記複数のクライアント装置の各々において、前記サーバ装置の障害を監視し、前記複数のクライアント装置の各々から所定の装置への通知の経路を示す、前記複数のクライアント装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する。
本発明のプログラムは、サーバ装置と複数のクライアント装置を含む情報処理システムにおけるクライアント装置のプログラムであって、コンピュータに、前記サーバ装置の障害を監視する処理と、前記複数のクライアント装置の各々から所定の装置への通知の経路を示す、前記複数のクライアント装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する通知処理と、を実行させる。
本発明の効果は、サーバ装置の障害をクライアント装置で検出するシステムにおいて、障害通知の数を低減できることである。
本発明の実施の形態の特徴的な構成を示すブロック図である。 本発明の実施の形態における、サービス提供システム1の構成を示すブロック図である。 本発明の実施の形態における、コンピュータにより実現されたサーバ装置100、及び、クライアント装置200の構成を示すブロック図である。 本発明の実施の形態における、ツリー更新処理のフローチャートである。 本発明の実施の形態における、障害検出処理のフローチャートである。 本発明の実施の形態における、障害転送処理のフローチャートである。 本発明の実施の形態における、ログ取得処理のフローチャートである。 本発明の実施の形態における、ツリー情報141、仮想ツリー142、及び、ツリー情報261の例を示す図である。 本発明の実施の形態における、検出情報241の例を示す図である。 本発明の実施の形態における、通知情報251の例を示す図である。 本発明の実施の形態における、ツリー情報141、仮想ツリー142、及び、ツリー情報261の他の例を示す図である。 本発明の実施の形態における、ツリー情報141、仮想ツリー142、及び、ツリー情報261のさらに他の例を示す図である。 本発明の実施の形態における、障害通知の転送経路の例を示す図である。 本発明の実施の形態における、障害通知の他の転送経路の例を示す図である。 本発明の実施の形態における、障害通知のさらに他の転送経路の例を示す図である。 本発明の実施の形態における、フラグクリア要求の転送経路の例を示す図である。
本発明の実施の形態について説明する。
はじめに、本発明の実施の形態の構成について説明する。
図2は、本発明の実施の形態における、サービス提供システム1の構成を示すブロック図である。サービス提供システム1は、本発明の情報処理システムの一実施形態である。
サービス提供システム1は、クライアント装置200にWebサービスを提供するサーバ装置100、及び、複数のクライアント装置200を含む。サーバ装置100とクライアント装置200とは、ネットワーク等により接続される。
サーバ装置100は、Webサーバ110、リクエスト受付部120、ツリー情報管理部130、ツリー情報記憶部140、レスポンス閾値管理部150、レスポンス閾値記憶部160、ログ取得部170、及び、ログ記憶部180を含む。リクエスト受付部120、ツリー情報管理部130、レスポンス閾値管理部150、及び、ログ取得部170は、サーバ装置100上で動作する常駐プログラム190により実現されていてもよい。
Webサーバ110は、クライアント装置200から受信したWebサービスに係るリクエスト(サービスリクエスト)に対して、Webサービスに係る提供データを含むレスポンス(サービスレスポンス)をWebブラウザ210へ送信する。
リクエスト受付部120は、クライアント装置200からサービスリクエストを受け付け、Webサーバ110へ転送する。また、リクエスト受付部120は、Webサーバ110から受信したサービスレスポンスをクライアント装置200へ転送する。
ツリー情報管理部130は、ツリー情報141を生成、更新する。ツリー情報141は、各クライアント装置200が、サーバ装置100へ障害通知を送信するための経路を表す、仮想ツリー142を示す。
図8は、本発明の実施の形態における、ツリー情報141、仮想ツリー142、及び、ツリー情報261の例を示す図である。図8の左側のツリー情報141、ツリー情報261は、右側の仮想ツリー142に対応する。
ツリー情報141は、図8に示すように、各クライアント装置200の識別子(クライアントID(IDentifier))、当該クライアント装置200の親、及び、1以上の子のクライアントIDを含む。ツリー情報141は、さらに、前回のアクセス時刻を含んでいてもよい。
本発明の実施の形態では、仮想ツリー142上における、各親のクライアント装置200が持つことができる子のクライアント装置200の数は3台であると仮定する。子のクライアント装置200は、親のクライアント装置200へ障害通知を送信する。また、ルート(根)に登録されたクライアント装置200は、サーバ装置100へ障害通知を送信する。
ツリー情報管理部130は、クライアント装置200からの最初のアクセスに対して、当該クライアント装置200を仮想ツリー142に登録し、ツリー情報141を更新する。そしてツリー情報管理部130は、当該クライアント装置200に、後述するツリー情報261を送信する。
ツリー情報記憶部140は、ツリー情報141を記憶する。
レスポンス閾値管理部150は、レスポンス閾値161をクライアント装置200へ配布する。レスポンス閾値161は、サービスリクエストに対するサービスレスポンスを受信するまでの時間の閾値である。レスポンス閾値161は、クライアント装置200の監視部220が、サーバ装置100の障害の有無を判定するために用いられる。例えば、レスポンス閾値161が「2分」の場合、クライアント装置200がサービスリクエストを送信してから、サーバ装置100からサービスレスポンスを受信するまでの時間が2分を超えた場合、サーバ装置100の障害が発生していると判定される。
レスポンス閾値記憶部160は、レスポンス閾値161を記憶する。
ログ取得部170は、クライアント装置200から障害通知を受信した場合に、ログ181を取得する。ここで、ログ取得部170は、例えば、Webサーバ110の動作に係る各種ログや、クライアント装置200との通信に係る各種ログを取得する。
ログ記憶部180は、ログ181を記憶する。
クライアント装置200は、Webブラウザ210、監視部220、通知部230、検出情報記憶部240、通知情報記憶部250、及び、ツリー情報記憶部260を含む。監視部220、及び、通知部230は、クライアント装置200上で動作する監視プログラム270により実現されていてもよい。
Webブラウザ210は、サービスリクエストを、サーバ装置100のWebサーバ110に送信する。また、Webブラウザ210は、サービスレスポンスをWebサーバ110から受信する。
監視部220は、サーバ装置100の障害の有無を監視する。監視部220は、上述のレスポンス閾値161を用いて、サーバ装置100の障害が発生しているかどうかを判定する。
通知部230は、監視部220によりサーバ装置100の障害が検出された場合、または、他のクライアント装置200から障害通知を受信した場合に、通知情報251を参照して、障害通知を送信するかどうか判定する。通知部230は、ツリー情報261を参照し、ツリー上の親のクライアント装置200、または、サーバ装置100へ障害通知を送信する。
検出情報記憶部240は、検出情報241(detectフラグ)を記憶する。検出情報241は、サーバ装置100の障害の検出有無を示す。
図9は、本発明の実施の形態における、検出情報241の例を示す図である。
図9に示すように、検出情報241には、自クライアント装置200において、サーバ装置100の障害が検出されている場合は「true」が、検出されていない場合は「false」が設定される。
通知情報記憶部250は、通知情報251(sendRequestフラグ)を記憶する。通知情報251は、自クライアント装置200または他のクライアント装置200において検出されたサーバ装置100の障害に対して、自クライアント装置200が障害通知を送信済みかどうかを示す。
図10は、本発明の実施の形態における、通知情報251の例を示す図である。
図10に示すように、通知情報251には、自クライアント装置200が障害通知を送信済みの場合は「true」が、送信済みでない場合は「false」が設定される。
ツリー情報記憶部260は、ツリー情報261を記憶する。ツリー情報261は、ツリー情報141の内、自クライアント装置200に係るツリーの情報を示す。
図8に示すように、ツリー情報261には、ツリー上の自クライアント装置200のクライアントIDに対して、当該クライアント装置200の親、及び、1以上の子のクライアントIDが設定される。さらに、ツリー情報261には、ツリー上の自クライアント装置200からルートまでの各クライアント装置200のクライアントIDに対して、当該クライアント装置200の親のクライアントIDが設定される。
なお、サーバ装置100、及び、クライアント装置200は、それぞれ、CPU(Central Processing Unit)とプログラムを記憶した記憶媒体を含み、プログラムに基づく制御によって動作するコンピュータであってもよい。
図3は、本発明の実施の形態における、コンピュータにより実現されたサーバ装置100、及び、クライアント装置200の構成を示すブロック図である。
サーバ装置100は、CPU101、ハードディスクやメモリ等の記憶手段(記憶媒体)102、他の装置と通信を行う通信手段103、キーボード等の入力手段104、及び、ディスプレイ等の出力手段105を含む。CPU101は、Webサーバ110を実現するためのプログラム、及び、上述の常駐プログラム190を実行する。記憶手段102は、ツリー情報記憶部140、レスポンス閾値管理部150、レスポンス閾値記憶部160、及び、ログ記憶部180のデータを記憶する。通信手段103は、クライアント装置200との間で、サービスリクエスト/レスポンスの送受信を行う。また、また、通信手段103は、クライアント装置200との間で、障害通知/レスポンスの送受信を行う。入力手段104は、例えば、管理者等から、ログ181出力の指示を受け付ける。出力手段105は、例えば、管理者等へ、ログ181を出力する。
同様に、クライアント装置200は、CPU201、記憶手段(記憶媒体)202、通信手段203、入力手段204、及び、出力手段205を含む。CPU201は、Webブラウザ210を実現するためのプログラム、及び、上述の監視プログラム270を実行する。記憶手段202は、検出情報記憶部240、通知情報記憶部250、及び、ツリー情報記憶部260のデータを記憶する。通信手段203は、サーバ装置100との間で、サービス/レスポンスの送受信を行う。また、また、通信手段103は、サーバ装置100や他のクライアント装置200との間で、障害通知/レスポンスの送受信を行う。入力手段204は、例えば、利用者等から、サービスリクエストを受け付ける。出力手段205は、例えば、利用者等へ、サービスレスポンスを出力する。
次に、本発明の実施の形態の動作について説明する。
ここでは、クライアント装置200の監視部220が、予め、サーバ装置100のレスポンス閾値管理部150に、レスポンス閾値161を要求し、取得していると仮定する。
<ツリー更新処理>
はじめに、本発明の実施の形態におけるツリー更新処理を説明する。
図4は、本発明の実施の形態における、ツリー更新処理のフローチャートである。
クライアント装置200のWebブラウザ210は、サービスリクエストを、サーバ装置100へ送信する(ステップS101)。
サーバ装置100のリクエスト受付部120は、受信したサービスリクエストが、クライアント装置200からの最初のサービスリクエストの場合(ステップS151/Y)、ツリー情報管理部130にツリー情報141の更新を指示する。ツリー情報管理部130は、当該クライアント装置200を仮想ツリー142に登録し、ツリー情報141を更新する(ステップS152)。ここで、ツリー情報管理部130は、当該クライアント装置200を、仮想ツリー142におけるルート(根)、または、既に登録されているクライアント装置200の子として、順番に登録する。
ツリー情報管理部130は、仮想ツリー142上に登録された(サービスリクエスト送信元の)クライアント装置200、及び、当該クライアント装置200の親のクライアント装置200に、ツリー情報261を送信する(ステップS153)。ここで、ツリー情報管理部130は、登録された(サービスリクエスト送信元の)クライアント装置200には、ツリー情報261を、サービスレスポンスとともに送信してもよい。
クライアント装置200の監視部220は、受信したツリー情報261をツリー情報記憶部260に保存する(ステップS102)。
次に、ツリー更新処理の具体例を説明する。
図11、図12は、本発明の実施の形態における、ツリー情報141、仮想ツリー142、及び、ツリー情報261の他の例を示す図である。
例えば、サーバ装置100が、識別子「2.1.1.1」のクライアント装置200(以下、クライアント装置200「2.1.1.1」と記載する)から、最初のサービスリクエストを受信したと仮定する。サーバ装置100のツリー情報管理部130は、クライアント装置200「2.1.1.1」を、図11のように仮想ツリー142に登録し、ツリー情報141に、クライアント装置200「2.1.1.1」を追加する。また、ツリー情報管理部130は、図11のような、クライアント装置200「2.1.1.1」に係るツリー情報261を、クライアント装置200「2.1.1.1」に送信する。クライアント装置200「2.1.1.1」のツリー情報記憶部260は、受信したツリー情報261を、ツリー情報記憶部260に保存する。
次に、サーバ装置100が、クライアント装置200「3.1.1.1」から、最初のサービスリクエストを受信したと仮定する。サーバ装置100のツリー情報管理部130は、クライアント装置200「3.1.1.1」を、図12のように仮想ツリー142に登録し、ツリー情報141に、クライアント装置200「3.1.1.1」を追加する。ツリー情報管理部130は、図12のような、クライアント装置200「3.1.1.1」に係るツリー情報261を、クライアント装置200「3.1.1.1」に送信する。クライアント装置200「3.1.1.1」のツリー情報記憶部260は、受信したツリー情報261を、ツリー情報記憶部260に保存する。さらに、ツリー情報管理部130は、図12のような、クライアント装置200「2.1.1.1」に係るツリー情報261を、クライアント装置200「2.1.1.1」に送信する。クライアント装置200「2.1.1.1」のツリー情報記憶部260は、受信したツリー情報261で、ツリー情報記憶部260に保存されているツリー情報261を更新する。
<障害検出処理、障害通知転送処理>
次に、本発明の実施の形態における障害検出処理を説明する。
図5は、本発明の実施の形態における、障害検出処理のフローチャートである。
はじめに、クライアント装置200の監視部220は、サーバ装置100の障害の有無を判定する(ステップS201)。ここで、監視部220は、サービスリクエストに対するサービスレスポンスを受信するまでの時間がレスポンス閾値161を超えている場合、サーバ装置100の障害が発生していると判定する。
サーバ装置100の障害が検出された場合(ステップS201/Y)、監視部220は、検出情報241に「true」を設定する(ステップS202)。
通知部230は、通知情報251に「true」が設定されているかを判定する(ステップS203)。
通知情報251に「true」が設定されている場合(ステップS203/Y)、障害通知は送信済みである。通知部230は、障害通知が重複してサーバ装置100に送信されるのを防ぐため、障害通知を送信せず、処理を終了する。
通知情報251に「false」が設定されている場合(ステップS203/N)、障害通知は送信されていないため、通知部230は、ツリー情報261を参照し、自クライアント装置200の親に、障害通知を送信する(ステップS204)。
通知部230は、親から、所定の時間内に、障害通知に対するレスポンスを受信したかどうかを判定する(ステップS205)。
障害通知に対するレスポンスを受信しなかった場合(ステップS205/N)、親のクライアント装置200の電源がオフになっている等の理由で、障害通知を送受信できない可能性がある。したがって、通知部230は、ツリー情報261を更新する(ステップS206)。ここで、通知部230は、自クライアント装置200の親のクライアント装置200に対して設定された情報を削除する。また、通知部230は、自クライアント装置200に対して設定された親のクライアントIDを、当該親のさらに親のクライアントIDで更新する。
そして、通知部230は、ステップS204からの処理を繰り返す。なお、通知部230は、ステップS204において、更新後の親に障害通知を送信するときに、更新前の親のクライアントIDを含むツリー情報更新要求を、障害通知とともに送信する。
一方、障害通知に対するレスポンスを受信した場合(ステップS205/Y)、通知部230は、通知情報251に「true」を設定し(ステップS207)、処理を終了する。
次に、本発明の実施の形態における障害転送処理を説明する。
図6は、本発明の実施の形態における、障害転送処理のフローチャートである。
はじめに、クライアント装置200の通知部230は、他のクライアント装置200から、障害通知を受信したかどうかを判定する(ステップS301)。
障害通知を受信した場合(ステップS301/Y)、通知部230は、障害通知の送信元のクライアント装置200に、当該障害通知に対するレスポンスを送信する(ステップS302)。
通知部230は、ツリー情報261を参照し、障害通知とともにツリー情報更新要求を受信したかどうかを判定する(ステップS303)。
ツリー情報更新要求を受信した場合(ステップS303/Y)、自クライアント装置200の子の内、ツリー情報更新要求に含まれるクライアントIDで示される子は、電源がオフになっている等の理由で、障害通知を送受信できない可能性がある。したがって、通知部230は、ツリー情報261を更新する(ステップS304)。ここで、通知部230は、自クライアント装置200に対する子のクライアントIDの内、ツリー情報更新要求に含まれるクライアントIDを、ツリー情報更新要求の送信元(障害通知の送信元)のクライアント装置200のクライアントIDで更新する。
以降、上述の障害検出処理における、ステップS203以降の処理が行われる。
次に、障害検出処理、及び、障害通知転送処理の具体例を説明する。
例えば、図8のように仮想ツリー142が生成されているときに、クライアント装置200「3.1.1.1」においてサーバ装置100の障害が検出されたと仮定する。また、図8のすべてのクライアント装置200における検出情報241、通知情報251には、「false」が設定されていると仮定する。
図13は、本発明の実施の形態における、障害通知の転送経路の例を示す図である。
クライアント装置200「3.1.1.1」の監視部220は、検出情報241に「true」を設定する(図13、(1))。通知部230は、親のクライアント装置200「2.1.1.1」に障害通知を送信する(図13、(2))。
クライアント装置200「2.1.1.1」の通知部230は、クライアント装置200「3.1.1.1」に障害通知に対するレスポンスを送信する(図13、(3))。
クライアント装置200「3.1.1.1」の通知部230は、通知情報251に「true」を設定する(図13、(4))。
クライアント装置200「2.1.1.1」の通知部230は、親のサーバ装置100「1.1.1.1」に障害通知を送信する(図13、(5))。クライアント装置200「2.1.1.1」の通知部230は、通知情報251に「true」を設定する(図13、(6))。
そして、さらに、クライアント装置200「4.1.1.1」においてサーバ装置100の障害が検出されたと仮定する。
図14は、本発明の実施の形態における、障害通知の他の転送経路の例を示す図である。
クライアント装置200「4.1.1.1」の監視部220は、検出情報241に「true」を設定する(図14、(1))。通知部230は、親のクライアント装置200「3.1.1.1」に障害通知を送信する(図14、(2))。
クライアント装置200「3.1.1.1」の通知部230は、クライアント装置200「4.1.1.1」に障害通知に対するレスポンスを送信する(図14、(3))。
クライアント装置200「4.1.1.1」の通知部230は、通知情報251に「true」を設定する(図14、(4))。
クライアント装置200「3.1.1.1」の通知部230は、通知情報251に「true」が設定されているため、障害通知を送信しない。
また、例えば、図8のように仮想ツリー142が生成されているときに、クライアント装置200「3.1.1.1」の電源がオフになったと仮定する。そして、クライアント装置200「4.1.1.1」においてサーバ装置100の障害が検出されたと仮定する。また、図8のすべてのクライアント装置200における検出情報241、通知情報251には、「false」が設定されていると仮定する。
図15は、本発明の実施の形態における、障害通知のさらに他の転送経路の例を示す図である。
クライアント装置200「4.1.1.1」の監視部220は、検出情報241に「true」を設定する(図15、(1))。通知部230は、親のクライアント装置200「3.1.1.1」に障害通知を送信する(図15、(2))。通知部230は、クライアント装置200「3.1.1.1」から、障害通知に対するレスポンスを受信しないため、ツリー情報261を更新する(図15、(3))。ここで、通知部230は、クライアント装置200「3.1.1.1」に対して設定された情報を削除する。また、通知部230は、クライアント装置200「4.1.1.1」に対して設定された親のクライアントID「3.1.1.1」をさらに親のクライアントID「2.1.1.1」で更新する。通知部230は、更新後の親のクライアント装置200「2.1.1.1」に障害通知を送信する(図15、(4))。ここで、通知部230は、更新前の親のクライアントID「3.1.1.1」を含むツリー情報更新要求を、障害通知とともに送信する。
クライアント装置200「2.1.1.1」の通知部230は、クライアント装置200「4.1.1.1」に障害通知に対するレスポンスを送信する(図15、(5))。
クライアント装置200「4.1.1.1」の通知部230は、通知情報251に「true」を設定する(図15、(6))。
クライアント装置200「2.1.1.1」の通知部230は、ツリー情報261を更新する(図15、(7))。ここで、通知部230は、子のクライアントID「3.1.1.1」を、障害通知の送信元のクライアントID「4.1.1.1」で更新する。通知部230は、親のサーバ装置100「1.1.1.1」に障害通知を送信する(図15、(8))。通知部230は、通知情報251に「true」を設定する(図15、(9))。
<ログ取得処理>
次に、本発明の実施の形態におけるログ取得処理を説明する。
図7は、本発明の実施の形態における、ログ取得処理のフローチャートである。
はじめに、サーバ装置100のログ取得部170は、クライアント装置200から、障害通知を受信したかどうかを判定する(ステップS451)。
障害通知を受信した場合(ステップS451/Y)、ログ取得部170は、ログ181を取得する(ステップS452)。
ログ181の取得が完了すると、ログ取得部170は、ツリー情報141を参照し、子のクライアント装置200に、フラグクリア要求を送信する(ステップS453)。
各クライアント装置200の通知部230は、親のサーバ装置100またはクライアント装置200から、フラグクリア要求を受信したかどうかを判定する(ステップS401)。
フラグクリア要求を受信した場合(ステップS401/Y)、通知部230は、検出情報241と通知情報251とに「false」を設定する(ステップS402)。また、通知部230は、ツリー情報261を参照し、子のクライアント装置200に、フラグクリア要求を送信する(ステップS403)。
これにより、仮想ツリー142に沿って、フラグクリア要求が、すべてのクライアント装置200に送信され、すべてのクライアント装置200で、検出情報241と通知情報251とに「false」が設定される。そして、各クライアント装置200は、次の障害検出に備えることができる。
次に、ログ取得処理の具体例を説明する。
例えば、図8のように仮想ツリー142が生成されているときに、各クライアント装置200においてサーバ装置100の障害が検出され、いずれかのクライアント装置200から送出された障害通知がサーバ装置100に到達したと仮定する。また、すべてのクライアント装置200における検出情報241、通知情報251に、「true」が設定されていると仮定する。
図16は、本発明の実施の形態における、フラグクリア要求の転送経路の例を示す図である。
サーバ装置100のログ取得部170は、障害通知を受信すると(図16、(1))、ログ181を取得する(図16、(2))。ログ取得部170は、子のクライアント装置200「2.1.1.1」にフラグクリア要求を送信する(図16、(3))。
クライアント装置200「2.1.1.1」の通知部230は、検出情報241と通知情報251に「false」を設定する(図16、(4))。通知部230は、さらに、子のクライアント装置200「3.1.1.1」「3.1.1.2」「3.1.1.3」にフラグクリア要求を送信する(図16、(5))。
クライアント装置200「3.1.1.1」「3.1.1.2」「3.1.1.3」の通知部230は、検出情報241と通知情報251に「false」を設定する(図16、(6))。クライアント装置200「3.1.1.1」の通知部230は、さらに、子のクライアント装置200「4.1.1.1」にフラグクリア要求を送信する(図16、(7))。
クライアント装置200「4.1.1.1」の通知部230は、検出情報241と通知情報251に「false」を設定する(図16、(8))。
以上により、本発明の実施の形態の動作が完了する。
なお、本発明の実施の形態では、クライアント装置200が、仮想ツリー142に従って、障害通知をサーバ装置100に送信(転送)した。これに限らず、クライアント装置200は、仮想ツリー142に従って、障害通知をサーバ装置100以外の他の管理装置等に送信(転送)してもよい。この場合、当該管理装置等が、サーバ装置100のログ取得部170に、ログ181の取得を指示してもよい。
次に、本発明の実施の形態の特徴的な構成を説明する。図1は、本発明の実施の形態の特徴的な構成を示すブロック図である。
図1を参照すると、本発明のサービス提供システム1(情報処理システム)は、サーバ装置100と複数のクライアント装置200とを含む。複数のクライアント装置200の各々は、監視部220と通知部230とを含む。監視部220は、サーバ装置100の障害を監視する。通知部230は、仮想ツリー142(ツリー)に従って、サーバ装置100の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する。仮想ツリー142は、複数のクライアント装置200の各々から所定の装置への通知の経路を示す、複数のクライアント装置200が配置されたツリーである。
本発明の実施の形態によれば、サーバ装置の障害をクライアント装置で検出するシステムにおいて、障害通知の数を低減できる。その理由は、複数のクライアント装置200の各々が、仮想ツリー142(ツリー)に従って、サーバ装置100の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信するためである。
これにより、例えば、仮想ツリー142上での各親のクライアント装置200が持つ子のクライアント装置200の台数が3台の場合、1000台規模のクライアント装置200に係る障害通知の経路が、例えば、7階層の仮想ツリー142により表される。そして、1000台のクライアント装置200の内のいずれかで障害が検出された場合でも、仮想ツリー142上の6回以内の転送で、障害通知をサーバ装置100へ送信できる。また、1000台のクライアント装置200の内の複数で障害が検出された場合でも、サーバ装置100へは、1つの障害通知だけが、仮想ツリー142上のルート(根)のクライアント装置200から送信される。
また、本発明の実施の形態によれば、サーバ装置100がクラウド環境下に構築される場合に、サーバ装置100の監視コストを抑えることができる。その理由は、各クライアント装置200が、サーバ装置100の障害を監視し、障害通知をサーバ装置100に送信するためである。これにより、例えば、サーバ装置100と各クライアント装置200との間の通信の状況を監視、収集するための他の装置や仕組みが不要となり、システムを構築するためのコストや、監視を行うためのコストが低減する。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
例えば、本発明の実施の形態では、仮想ツリー142上での各親のクライアント装置200が持つ子のクライアント装置200の台数を3台としたが、台数は3台以外でもよい。これにより、例えばシステムの規模(クライアント装置200の数)に応じて、仮想ツリー142の階層数を変え、障害通知がクライアント装置200からサーバ装置100に届くまでの時間を調整できる。
また、本発明の実施の形態では、サーバ装置100に対して1つの仮想ツリー142が生成されたが、サーバ装置100に対して複数の仮想ツリー142が生成されてもよい。この場合、各仮想ツリー142のルート(根)に登録されたクライアント装置200が、サーバ装置100へ障害通知を送信する。
また、仮想ツリー142のルート(根)に、サーバ装置100が登録されてもよい。この場合、サーバ装置100は、クライアント装置200と同様に、ツリー情報261を記憶し、クライアント装置200からツリー情報更新要求を受信した場合に、ツリー情報261を更新する。
また、サーバ装置100が、クライアント装置200からの最初のアクセスに対してツリー情報141を更新したが、前回のアクセスから所定期間(例えば1日)経過した場合にツリー情報141を更新してもよい。この場合、サーバ装置100は、例えば、仮想ツリー142における、当該クライアント装置200に係る生成済みの親子の関係を削除し、当該クライアント装置200を、新たな親のクライアント装置200の子として登録する。そして、更新された親子関係に係るツリー情報261を、クライアント装置200に送信する。
1 サービス提供システム
100 サーバ装置
101 CPU
102 記憶手段
103 通信手段
104 入力手段
105 出力手段
110 Webサーバ
120 リクエスト受付部
130 ツリー情報管理部
140 ツリー情報記憶部
141 ツリー情報
142 仮想ツリー
150 レスポンス閾値管理部
160 レスポンス閾値記憶部
161 レスポンス閾値
170 ログ取得部
180 ログ記憶部
181 ログ
190 常駐プログラム
200 クライアント装置
201 CPU
202 記憶手段
203 通信手段
204 入力手段
205 出力手段
210 Webブラウザ
220 監視部
230 通知部
240 検出情報記憶部
241 検出情報
250 通知情報記憶部
251 通知情報
260 ツリー情報記憶部
261 ツリー情報
270 監視プログラム

Claims (10)

  1. サーバ装置と複数のクライアント装置とを備え、
    前記複数のクライアント装置の各々は、
    前記サーバ装置の障害を監視する監視手段と、
    前記複数のクライアント装置の各々から所定の装置への通知の経路を示す、前記複数のクライアント装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する通知手段と、
    を含む情報処理システム。
  2. 前記通知手段は、前記監視手段によって前記サーバ装置の障害が検出された場合、または、前記ツリーにおける子のクライアント装置から前記障害通知を受信した場合、前記障害通知を送信済みでなければ、前記ツリーにおいて親として指定された前記所定の装置またはクライアント装置に、前記障害通知を送信する、
    請求項1に記載の情報処理システム。
  3. 前記通知手段は、前記ツリーにおける親のクライアント装置の障害が検出された場合、前記ツリーにおける当該親のクライアント装置のさらに親として指定された前記所定の装置またはクライアント装置を、新たな親に設定する、
    請求項2に記載の情報処理システム。
  4. 前記サーバ装置は、前記クライアント装置からアクセスされたときに、当該クライアント装置を前記ツリーに追加する、ツリー管理手段を備える、
    請求項1乃至3のいずれかに記載の情報処理システム。
  5. 前記サーバ装置は、前記所定の装置が前記障害通知を受信した場合、当該サーバ装置におけるログを取得するログ取得手段を含む、
    請求項1乃至4のいずれかに記載の情報処理システム。
  6. 前記監視手段は、前記サーバ装置にリクエストを送信してからレスポンスを受信するまでの時間が所定の閾値を超えている場合に、前記サーバ装置に障害が発生していると判定する、
    請求項1乃至5のいずれかに記載の情報処理システム。
  7. 前記所定の装置は、前記サーバ装置である、
    請求項1乃至6のいずれかに記載の情報処理システム。
  8. サーバ装置と複数の情報処理装置を含む情報処理システムにおける情報処理装置であって、
    前記サーバ装置の障害を監視する監視手段と、
    前記複数の情報処理装置の各々から所定の装置への通知の経路を示す、前記複数の情報処理装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する通知手段と、
    を備えた、情報処理装置。
  9. サーバ装置と複数のクライアント装置を含む情報処理システムにおける情報処理方法であって、
    前記複数のクライアント装置の各々において、
    前記サーバ装置の障害を監視し、
    前記複数のクライアント装置の各々から所定の装置への通知の経路を示す、前記複数のクライアント装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する、
    情報処理方法。
  10. サーバ装置と複数のクライアント装置を含む情報処理システムにおけるクライアント装置のプログラムであって、
    コンピュータに、
    前記サーバ装置の障害を監視する処理と、
    前記複数のクライアント装置の各々から所定の装置への通知の経路を示す、前記複数のクライアント装置が配置されたツリーに従って、前記サーバ装置の障害が検出されたことを示す障害通知を、当該障害通知が重複しないように送信する通知処理と、
    を実行させるプログラム。
JP2014190272A 2014-09-18 2014-09-18 情報処理システム、情報処理装置、情報処理方法、及び、プログラム Active JP6369255B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014190272A JP6369255B2 (ja) 2014-09-18 2014-09-18 情報処理システム、情報処理装置、情報処理方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014190272A JP6369255B2 (ja) 2014-09-18 2014-09-18 情報処理システム、情報処理装置、情報処理方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2016062340A true JP2016062340A (ja) 2016-04-25
JP6369255B2 JP6369255B2 (ja) 2018-08-08

Family

ID=55797793

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014190272A Active JP6369255B2 (ja) 2014-09-18 2014-09-18 情報処理システム、情報処理装置、情報処理方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP6369255B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001290676A (ja) * 2000-04-05 2001-10-19 Nec Software Chubu Ltd 複数の監視装置を備えたシステムの通報方式、被監視装置、監視装置、通報方法、及び記録媒体
JP2003162430A (ja) * 2001-11-27 2003-06-06 Mitsubishi Electric Corp 障害情報管理装置および障害情報管理方法
JP2003330758A (ja) * 2002-05-09 2003-11-21 Nec Corp 集約機能付障害情報通知システム及びマシンを集約機能付障害情報通知手段として機能させるためのプログラム
WO2014010021A1 (ja) * 2012-07-09 2014-01-16 富士通株式会社 情報処理装置、情報処理システム、情報処理装置制御方法及び情報処理装置制御プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001290676A (ja) * 2000-04-05 2001-10-19 Nec Software Chubu Ltd 複数の監視装置を備えたシステムの通報方式、被監視装置、監視装置、通報方法、及び記録媒体
JP2003162430A (ja) * 2001-11-27 2003-06-06 Mitsubishi Electric Corp 障害情報管理装置および障害情報管理方法
JP2003330758A (ja) * 2002-05-09 2003-11-21 Nec Corp 集約機能付障害情報通知システム及びマシンを集約機能付障害情報通知手段として機能させるためのプログラム
WO2014010021A1 (ja) * 2012-07-09 2014-01-16 富士通株式会社 情報処理装置、情報処理システム、情報処理装置制御方法及び情報処理装置制御プログラム

Also Published As

Publication number Publication date
JP6369255B2 (ja) 2018-08-08

Similar Documents

Publication Publication Date Title
US10680874B2 (en) Network service fault handling method, service management system, and system management module
EP3231135B1 (en) Alarm correlation in network function virtualization environment
JP5872731B2 (ja) クラスタの複数のノードのそれぞれに対してリンクの障害の検出を伝えるためのコンピュータ実装方法、非一時的なコンピュータ可読媒体およびコンピュータシステム
CN107534570A (zh) 虚拟化网络功能监控
US20190065229A1 (en) Network notification loss detection for virtual machine migration
US20180054475A1 (en) Load balancing system and method for cloud-based network appliances
US11252267B2 (en) Content stream integrity and redundancy system
JP6279744B2 (ja) eメールのウェブクライアント通知の待ち行列化方法
US20110099273A1 (en) Monitoring apparatus, monitoring method, and a computer-readable recording medium storing a monitoring program
WO2017080161A1 (zh) 云计算中报警信息的处理方法及装置
CN104301140A (zh) 业务请求响应方法、装置和系统
CN111049690B (zh) 设备故障监测处理方法、装置、设备及存储介质
US20200336395A1 (en) Identification of candidate problem network entities
US9444913B2 (en) Multi-ring reliable messaging system
JP6369255B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
US9456046B2 (en) Dynamic generation of proxy connections
JP2020038506A (ja) 情報処理システム、情報処理方法、及び、プログラム
JPWO2012004891A1 (ja) コンピュータの監視プログラム,監視方法及び監視装置
CN106230729A (zh) 一种网络设备地址通告的方法和装置
WO2014010021A1 (ja) 情報処理装置、情報処理システム、情報処理装置制御方法及び情報処理装置制御プログラム
JP6513001B2 (ja) 故障検知装置、故障検知方法、及びプログラム
JP2012174079A (ja) 機器管理システム
JP2016057683A (ja) イベント監視コンピュータシステム及びイベント監視方法
JP2015114991A (ja) データ処理装置、データ処理装置監視方法およびデータ処理システム
WO2015154456A1 (zh) 路由器的控制处理方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180518

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180625

R150 Certificate of patent or registration of utility model

Ref document number: 6369255

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150