JP2015526815A - コンピュータ情報システム及びその動的障害回復方法 - Google Patents

コンピュータ情報システム及びその動的障害回復方法 Download PDF

Info

Publication number
JP2015526815A
JP2015526815A JP2015525717A JP2015525717A JP2015526815A JP 2015526815 A JP2015526815 A JP 2015526815A JP 2015525717 A JP2015525717 A JP 2015525717A JP 2015525717 A JP2015525717 A JP 2015525717A JP 2015526815 A JP2015526815 A JP 2015526815A
Authority
JP
Japan
Prior art keywords
service
cluster
user experience
service cluster
dynamic
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.)
Pending
Application number
JP2015525717A
Other languages
English (en)
Inventor
ワン,シュウシン
シュエ,ペン
Original Assignee
テンセント テクノロジー (シェンジェン) カンパニー リミテッド
テンセント テクノロジー (シェンジェン) カンパニー リミテッド
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 テンセント テクノロジー (シェンジェン) カンパニー リミテッド, テンセント テクノロジー (シェンジェン) カンパニー リミテッド filed Critical テンセント テクノロジー (シェンジェン) カンパニー リミテッド
Publication of JP2015526815A publication Critical patent/JP2015526815A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/143Reconfiguring to eliminate the error with loss of software functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/90Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Abstract

コンピュータ情報システムが、少なくとも2つのサービスクラスタと動的障害回復ノードとを含む。各サービスクラスタは、少なくとも2つのサービスノードを含む。各サービスノードは、複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを含み、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理することになる。動的障害回復ノードは、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいて各サービスクラスタのためのそれぞれの動的障害回復ポリシーを設定し、サービスクラスタの動作状態を監視することになる。サービスクラスタが正常に動作する場合、動的障害回復ノードは、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を、該サービスクラスタにスケジュールする。サービスクラスタが異常に動作する場合、動的障害回復ノードは、動的障害回復ポリシーに従ってサービス要求の処理を動的に調整する。

Description

本出願は、コンピュータ情報処理の技術分野に関し、具体的には、コンピュータ情報システムとその動的障害回復(dynamic disaster recovery)方法とに関する。
コンピュータ情報システムにおいて、情報サービスの機密性及び安定性を保証するためには、同じ機能を有する2以上のサービス処理システムが確立される必要があり、機能的な障害回復が2以上のサービス処理システム間で実施されることがある。すなわち、1つのサービス処理システムにおいて問題が発生したとき、別のサービス処理システムが使用されてサービスを外部に提供することができ、したがって、外部向けのサービスの機密性及び安定性を保証することができる。障害回復はシステム高可用性テクノロジーの重要なコンポーネントであり、外部環境の影響又はシステム上の緊急事態が前もって考慮される必要があり、したがって、障害が発生したときにシステムがサービス又はデータ損失をもたらすという不能が回避される。いわゆる障害は、正常なサービスを提供することを不可能にする事象、例えば、マシンハードウェア故障、ネットワーク故障、プログラムクラッシュ、及び緊急事態により引き起こされる過負荷などを指す。
現在、上記産業において、障害回復解決策は、コンピュータシステムの組成及びサービスアーキテクチャにおいて一般に実施される。
図1は、先行技術におけるインターネットサービスシステムのアーキテクチャの概略図である。図1を参照すると、インターネットサービスシステムは、コンピュータ情報システムの特定のアプリケーション領域であり、このアーキテクチャにおいて、すべてのサービスノードはピアである。例えば、図1には3つのピアサービスノード101、102及び103が存在し、サービスノードの各々はすべてのサービスの処理ロジックを外部に同時に提供し(サービスカテゴリは、分類されたクラスA、B及びCであると仮定される)、これらのピアサービスノードがサービスクラスタを形成する。図1におけるシステムアーキテクチャは、多くのウェブサイトによって現在採用されており、その障害回復原理は、クライアントがあるカテゴリのサービス要求を開始した後、このサービス要求がシステムのトランスミッションコントロールプロトコル(TCP)レイヤ上でロードバランシングシステムを通じてサービスクラスタの中のあるサービスノードに無作為に割り当てられ、このサービスノードが上記サービス要求に応答するというものである。障害事象、例えばハードウェア故障が、あるサービスノードにおいて発生したとき、サービス要求は、応答のために他の正常動作サービスノードに割り当てられることになる。
図2は、先行技術におけるインターネットサービスシステムの別のアーキテクチャの概略図である。図2を参照すると、このアーキテクチャにおいて、3つのサービスクラスタがそのサービスカテゴリに従って分類されており、各サービスクラスタの中のサービスノードのすべてが、それぞれの固定カテゴリのサービスだけを提供し、それぞれのサービスクラスタ内のサービスノードは、ピアである。例えば、図2において、サービスクラスタ201はクラスAサービスを提供し、サービスクラスタ202はクラスBサービスを提供し、サービスクラスタ203はクラスCサービスを提供する。サービスクラスタ201を例にとると、その内部のサービスノード211、212及び213の各々は、クラスAサービスのための処理ロジックだけを有し、サービスの各カテゴリに対応するサービスクラスタのアドレスが、クライアントに設定される。クライアントがクラスAサービスのサービス要求を開始した後、クラスAサービス要求がサービスクラスタ201に送信され、それから、クラスAサービス要求は、TCPレイヤ上のロードバランシングシステムを通じてサービスクラスタ201の中のあるサービスノードに無作為に割り当てられ、このサービスノードが上記サービス要求に応答する。障害事象、例えばハードウェア故障が、サービスクラスタ201の中のサービスノードにおいて発生したとき、上記クラスAサービス要求は、応答のために、サービスクラスタ201内の他の正常動作サービスノードに割り当てられる。現在、図2におけるシステムアーキテクチャは、多くのインターネットゲームサービスシステムによって一般に採用されている。
しかしながら、前述の先行技術は、下記の技術的な課題、すなわち、コンピュータ情報システム全体がロバスト性において不十分であることを有する。例えば、図1に例示されるアーキテクチャにおいて、サービスクラスタの中の故障サービスノードが一定数に到達した場合、システムの実際の負荷が、正常動作サービスノードによって生み出され得る負荷より大きくなり、システムは過負荷を掛けられ、それゆえに全体的に利用できなくなる。図2に例示されるアーキテクチャにおいて、異なるカテゴリのサービスノードが異なるサービスクラスタによって別個に処理されるが、図1に例示されるアーキテクチャにおけるものと同様の不十分なロバスト性の課題が、このサービスクラスタの各々にも存在する。すなわち、サービスクラスタの中の故障サービスノードが一定数に到達した場合、サービスクラスタの実際の負荷が正常動作サービスノードによって生み出され得る負荷より大きくなり、サービスクラスタは過負荷を掛けられ、それゆえに全体的に利用できなくなり、したがって、利用できないサービスクラスタに対応するそれぞれのサービスカテゴリのサービスを、外部に提供することができない。
上記を考慮して、本発明の目的は、コンピュータ情報システムのロバスト性を改良するように、コンピュータ情報システム及びその動的障害回復方法を提供することである。
本発明の技術的な解決策は、下記のとおり実施される。
いくつかの実施形態に従い、コンピュータ情報システムが、各サービスクラスタが少なくとも2つのサービスノードを含む、少なくとも2つのサービスクラスタであって、各サービスノードは、複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを含み、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するように構成される、少なくとも2つのサービスクラスタと、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいて各サービスクラスタのためのそれぞれの動的障害回復ポリシーを設定し、サービスクラスタの動作状態を監視するように構成された動的障害回復ノードと、を含み、サービスクラスタが正常に動作する場合、上記動的障害回復ノードは、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタにスケジュールするように構成され、サービスクラスタが異常に動作する場合、上記動的障害回復ノードは、サービス要求の処理を上記動的障害回復ポリシーに従って動的に調整するように構成される。
いくつかの実施形態に従い、複数のサービスノードを含むコンピュータ情報システムによって実施される動的障害回復方法が、上記複数のサービスノードを少なくとも2つのサービスクラスタと動的障害回復ノードとに分けるステップであり、各サービスクラスタは少なくとも2つのサービスノードを含む、ステップと、各サービスクラスタについて、複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを各サービスノードにインストールし、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するようにサービスノードを構成するステップと、上記動的障害回復ノードに、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいてサービスクラスタのための動的障害回復ポリシーを設定させ、サービスクラスタの動作状態を監視させるステップと、サービスクラスタが正常に動作する場合、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタ内のサービスノードにスケジュールするステップと、サービスクラスタが異常に動作する場合、サービス要求の処理を上記動的障害回復ポリシーに従って動的に調整するステップと、を含む。
いくつかの実施形態に従い、非一時的コンピュータ可読媒体が、複数のサービスノードを含むコンピュータ情報システムに関連して使用される。当該非一時的コンピュータ可読媒体は、上記コンピュータ情報システムにより実行される1又は複数のプログラムを記憶し、上記1又は複数のプログラムは、上記複数のサービスノードを少なくとも2つのサービスクラスタと動的障害回復ノードとに分ける命令であり、各サービスクラスタは少なくとも2つのサービスノードを含む、命令と、各サービスクラスタについて、複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを各サービスノードにインストールし、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するようにサービスノードを構成する命令と、上記動的障害回復ノードに、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいてサービスクラスタのための動的障害回復ポリシーを設定させ、サービスクラスタの動作状態を監視させる命令と、サービスクラスタが正常に動作する場合、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタ内のサービスノードにスケジュールする命令と、サービスクラスタが異常に動作する場合、サービス要求の処理を上記動的障害回復ポリシーに従って動的に調整する命令と、を含む。
先行技術と比較すると、本発明においては、2つ以上のサービスクラスタがサービスカテゴリに従って分類され、2つ以上のサービスノードが各サービスクラスタに設定される。サービスノードはすべて、ピアノードである。すなわち、サービスノードはすべて、システムにおけるすべてのサービスカテゴリのサービス処理ロジックを備える必要がある。その一方で、各サービスクラスタの動的障害回復ポリシーが、設定される。サービスクラスタのすべてが正常に動作している場合、それぞれのサービスカテゴリのサービス要求は、応答処理のために、それぞれのサービスカテゴリに応答するように固定されたサービスクラスタに対してスケジュールされる。サービスクラスタのうち1つが異常に動作している場合、そのサービスクラスタの動的障害回復ポリシーに従って、対応サービスカテゴリのサービス要求のための応答サービスクラスタ及び/又は応答モードに対して、動的調整が行われる。このようにして、コンピュータ情報システム全体におけるすべてのサービスノードはピアであり、サービスクラスタの各々の動作状態に従って、サービス要求に対する対応サービスクラスタの応答モードは動的に調整することができる。サービスクラスタのうち1つの中の故障サービスノードが規定数に到達し、外部向けのサービスが提供できないとしても、サービスクラスタが相応に応答すべきサービス要求は他の正常動作サービスクラスタに転送されることもでき、したがって、コンピュータ情報システム全体によって外部に提供されるサービスは容易には中断されず、これにより、コンピュータ情報システムのロバスト性が改良される。
さらなる理解のために、下記の詳細な説明を添付の図面と共に参照すべきである。同様の参照番号は、図面にわたって対応部分を示す。
先行技術におけるインターネットサービスシステムのアーキテクチャの概略図である。 先行技術におけるインターネットサービスシステムの別のアーキテクチャの概略図である。 本発明のいくつかの実施形態に従うコンピュータ情報システムのための動的障害回復方法のフローチャートである。 本発明のいくつかの実施形態に従うコンピュータ情報システムのシステムアーキテクチャの概略図である。 本発明のいくつかの実施形態に従うコンピュータ情報システムの別のシステムアーキテクチャの概略図である。 本発明のいくつかの実施形態に従うサービスクラスタの中のサービスノードを例示するブロック図である。 本出願のいくつかの実施形態に従う動的障害回復ノードを例示するブロック図である。 本出願のいくつかの実施形態に従うクライアントを例示するブロック図である。
次に、様々な実施例に対して詳細に参照が行われ、その例が添付図面に例示される。下記の詳細な説明において、多数の特定の詳細が本願開示と本明細書に説明される実施例との完全な理解を提供するために明記される。しかしながら、本明細書に説明される実施例は、これらの特定の詳細なしで実施されることもある。他の例において、周知の方法、手順、コンポーネント及び機械的な装置は、実施例の様態を不必要に分かりにくくしないように、詳細には説明されていない。
本発明は、さらに、添付の図面と具体的な実施形態とを参照して以下に詳細に説明される。
図3は、本発明のいくつかの実施形態に従うコンピュータ情報システムのための動的障害回復方法のフローチャートである。図3を参照すると、コンピュータ情報システムのための動的障害回復方法は、下記のステップを含む。
ステップ301:サービスカテゴリに従って少なくとも2つのサービスクラスタを分類し、サービスクラスタの各々に少なくとも2つのサービスノードを設定し、サービスノードの各々は、システムにおけるサービスカテゴリのすべてのためのサービス処理ロジックを設定する。
ステップ302:サービスクラスタの各々のための動的障害回復ポリシーを設定する。
ステップ303:サービスクラスタの各々の動作状態を監視し、サービスクラスタの各々が正常に動作している場合、それぞれのサービスカテゴリのサービス要求が、動的障害回復ポリシーに従って、応答のために上記サービスカテゴリに対応するサービスクラスタに対してスケジュールされ、サービスクラスタのうち1つが異常に動作している場合、そのサービスクラスタの動的障害回復ポリシーに従って、対応サービスカテゴリのサービス要求の応答サービスクラスタ及び/又は応答モードに対して、動的調整が行われる。
本発明における方法に対応して、本発明は、コンピュータ情報システムも開示する。
図4は、本発明のいくつかの実施形態に従うコンピュータ情報システムのシステムアーキテクチャの概略図である。図4を参照すると、コンピュータ情報システムは、下記を含む。
サービスカテゴリに従って分類された少なくとも2つのサービスクラスタ。例えば、図3における3つのサービスクラスタ401、402及び403であり、各サービスクラスタは少なくとも2つのサービスノードを含む。サービスノードの各々は、コンピュータ情報システムにおけるサービスカテゴリのすべてのためのサービス処理ロジックを有し、サービス処理ロジックは、サービスクラスタに到達するサービス要求に応答することに使用される。すなわち、本発明におけるサービスクラスタのすべての中のすべてのサービスノードは、機能においてピアであり、サービス要求のいかなるカテゴリについても(例えば、図3において、3つのサービスカテゴリA、B及びCが分類されると仮定される)、サービスノードのうち任意の1つがサービス要求に対して応答処理を実行することができる。
サービスクラスタに加えて、本発明のいくつかの実施形態に従うコンピュータ情報システムは、さらに、動的障害回復ノード、すなわち、図4におけるノードD404を含む。動的障害回復ノードは、サービスクラスタの各々のための動的障害回復ポリシーを設定すること、及びサービスクラスタの各々の動作状態を監視することに使用される。サービスクラスタのすべてが正常に動作している場合、動的障害回復ポリシーに従って、それぞれのサービスカテゴリのサービス要求が、応答処理のために上記サービスカテゴリに対応するサービスクラスタに対してスケジュールされる。サービスクラスタのうち1つが異常に動作している場合、そのサービスクラスタの動的障害回復ポリシーに従って、対応サービスカテゴリのサービス要求の応答サービスクラスタ及び/又は応答モードに対して、動的調整が行われる。
いくつかの実施形態において、動的障害回復ノードの数は、1つである。いくつかの他の実施形態において、動的障害回復ノードの数は、2つ又は3つ以上である。例えば、図5は、本発明のいくつかの実施形態に従うコンピュータ情報システムの別のシステムアーキテクチャの概略図であり、これには、互いをバックアップし、互いにおいて障害回復切り替えを実行する能力があるプライマリ動的障害回復ノード541とスタンバイ障害回復ノード542とが含まれ、プライマリ動的障害回復ノード541とスタンバイ障害回復ノード542とは、動的障害回復サービスを提供する障害回復サービスクラスタ504を形成する。正常な状況において、プライマリ動的障害回復ノードが動的障害回復サービスを提供し、プライマリ動的障害回復ノードが異常に動作するとき、スタンバイ動的障害回復ノードがさらなる動作のために切り替えられることができる。スタンバイ動的障害回復ノードはプライマリ動的障害回復ノードになるように切り替えられ、前述のプライマリ動的障害回復ノードはスタンバイ動的障害回復ノードになるように切り替えられ、これにより、システム全体のロバスト性がさらに改良される。
動的障害回復ポリシーは前もって設定されてよく、具体的に設定された動的障害回復ポリシーは様々な内容を有してよく、これらは以下で実施形態に具体的に導入される。
いくつかの実施形態において、動的障害回復ポリシーは、サービスクラスタのすべてが正常に動作している場合に、それぞれのサービスカテゴリのサービス要求が、そのサービスカテゴリに対応するように固定されたサービスクラスタによって実行される応答処理を受けるというストラテジを含む。図4及び図5に示されるとおり、サービスクラスタのすべてが正常に動作している場合、サービスクラスタ401は外部に対してクラスAサービスだけを提供し、サービスクラスタ402は外部に対してクラスBサービスだけを提供し、サービスクラスタ403は外部に対してクラスCサービスだけを提供する。この固定の相互関係は、動的障害回復ポリシー内の情報の一部であり、前もって設定される必要があり、その特定の内容には、各サービスカテゴリとそれに対応するサービスクラスタアドレスとの間の相互関係を含む。サービスクラスタのうち1つが異常に動作している場合、その対応サービスカテゴリのサービス要求の応答サービスクラスタ及び/又は応答モードが、動的に調整される必要がある。さらに、特定の調整命令情報が動的障害回復ポリシーの一部であり、概して、各サービスカテゴリのサービスクラスタは、上記調整命令を含む対応動的障害回復ポリシーを有する。
ステップ303において、サービスカテゴリの各々の動作状態を監視する多数の特定の方法が存在する。例えば、2つの典型的な方法が、下記のとおりである。
第1の監視方法は、サービスクラスタの各々の中のサービスノードの各々が周期的に(例えば、T1秒の間隔で)その自身の負荷情報を動的障害回復ノードに報告することであり、負荷情報には、一般的な負荷情報、例えば、CPU使用率、ネットワーク使用率などを含んでよい。動的障害回復ノードは、報告状況と報告された負荷情報とに従ってサービスクラスタの各々の動作状態を判断する。例えば、報告状況は、サービスノードが負荷情報をT1秒ごとに1回報告しているかを示し、サービスノードからの報告の数又は頻度が規定値より少ない場合、サービスノードが異常であると判定される。それから、サービスノードの負荷が規定値より大きいかが、報告された負荷情報に従って判断される。サービスノードの負荷が規定値より大きい場合、サービスノードは異常に動作していると判定される。最後、各サービスクラスタの中の異常なサービスノードの数が規定値より大きいかが判断される。それぞれのサービスクラスタの中の異常なサービスノードの数が規定値より大きい場合、それぞれのサービスクラスタは異常に動作していると判定され、そうでない場合、それぞれのサービスクラスタは正常に動作していると判定される。
別法として、第2の監視方法は、サービスを要求するクライアントが周期的に(例えば、T2秒の間隔で)各カテゴリのサービス要求の数及び応答コンディションを動的障害回復ノードに報告することであり、動的障害回復ノードは、それぞれのカテゴリに対応するサービスクラスタの動作状態を、それぞれのカテゴリのサービス要求の報告された数と応答コンディションとに従って判断する。例えば、あるカテゴリのサービス要求における応答失敗の数が規定閾値より大きい場合、このサービスカテゴリに対応するように固定されたサービスクラスタは異常に動作していると判定され、そうでない場合、このサービスカテゴリに対応するサービスクラスタは正常に動作していると判定される。
前述された監視方法を通じて、動的障害回復ノードは、いかなるときもサービスクラスタの各々の動作状態を監視し、動作状態とサービスクラスタの各々に対応する動的障害回復ポリシーとに従って調整を行うことができる。
いくつかの実施形態において、各サービスカテゴリとこれに対応するサービスクラスタアドレスとの間の相互関係に関する情報が、様々なクライアントに設定されてよい。例えば、上記情報は、前もってクライアントに具体的に設定されてもよく、あるいはシステムが起動した後に動的障害回復ノードによって様々なクライアントに送信されてもよい。コンピュータ情報システムが最初に起動した後、サービスクラスタのすべてが、デフォルトで正常に動作していると考えられ、この時点において、クライアントがあるカテゴリのサービス要求を開始した場合、そのカテゴリのサービス要求は、上記相互関係に従って、応答処理のために該カテゴリに対応するサービスクラスタアドレスに送出されることになる。例えば、クラスAサービス要求はクラスAサービスクラスタに送信され、クラスBサービス要求はクラスBサービスクラスタに送信され、クラスCサービス要求はクラスCサービスクラスタに送信される。サービス要求を受信するサービスクラスタは、内部のTCPレイヤを通じてロードバランスをとる態様で、あるサービスノードにサービス要求を無作為に割り当て、このサービスノードは、サービス要求に対して応答処理を実行する。障害事象、例えばハードウェア故障が、あるサービスノードにおいて発生したとき、サービスクラスタは、受信したサービス要求を、応答処理のために他の正常動作サービスノードに割り当てることになる。
システムが動作するように起動した後、動的障害回復ノードは、前述の監視方法によってサービスクラスタの各々の動作状態を監視し、サービスクラスタのうち1つが異常に動作していると監視された場合、動的障害回復ノードは、サービスクラスタの動的障害回復ポリシーに従って、その対応サービスカテゴリのサービス要求のための応答サービスクラスタ及び/又は応答モードを動的に調整する。
いくつかの実施形態において、低下可能サービス次元(degradable service dimension)に従って分類されたサービスカテゴリの技術的解決策が、さらに提供される。上述の、サービスカテゴリに従ったサービスクラスタ分類について、種々のサービスカテゴリが、低下可能サービス次元を使用して区別される。低下可能サービスとは、サービスロジックの中のいくつかのモジュールにおいて故障が発生したとき、いくつかのサービスがユーザになおも提供されて、ユーザの中核的要望、例えばインターネットウェブサイトに対するユーザのログインと個人情報の確認となどの要望を満たせることを指し、このサービスは、低下可能サービスと呼ぶことができる。低下可能サービス次元は、低下可能サービスにとって容認可能な低下程度を評価し、容認可能な低下程度が大きいほど、その低下可能サービス次元は高くなる。
例えば、上述のクラスA、B及びCサービスは、ユーザ作用及び到来作用に従って分類することができ、低下可能サービスのアプリケーションシナリオが考慮される。一般的なインターネットサービスを一例にとると、クラスAサービスは、中核的ユーザ体験サービスであり、必須のコンテンツである。ユーザは、このカテゴリのサービス、例えばログイン動作などにおける問題を容認できず、これの低下可能サービス次元は最も低い。クラスBサービスは、ユーザ体験低下可能サービスである。このカテゴリのサービス、例えば、友人のホームページを確認すること、ファイルをアップロード又はダウンロードすることなどのサービスにおいて短時間利用できないことは、ユーザにとって容認可能であり、このカテゴリのサービスの低下可能サービス次元は、クラスAサービスの次元よりもわずかに高くなる。クラスCサービスは、ユーザ体験無視可能サービスである。このカテゴリのサービスは、ユーザ体験にだけ影響し、サービスが長時間修復できないとしても大きな影響を与えず、このカテゴリのサービスの低下可能サービス次元は最も高い。
上記で説明されたとおり、クラスA、B及びCサービスは、低下可能サービス次元に従って低から高に及ぶ。サービス要求の応答サービスクラスタ及び/又は応答モードが動的に調整されるとき、処理は、種々の低下可能サービス次元に従って実行されることができる。
例えば、サービスクラスタが異常に動作していて、動的障害回復ノードがサービスクラスタの動的障害回復ポリシーに従って対応サービスカテゴリのサービス要求の応答サービスクラスタ及び/又は応答モードを動的に調整する特定のモードには、下記の判断し及び処理するステップを含む:(1又は複数の)他の正常動作サービスクラスタの負荷状況が、異常動作サービスクラスタに対応するカテゴリのサービス要求の負荷を担うことができるかを判断し、そうである場合、(1又は複数の)正常動作サービスクラスタを、異常動作サービスクラスタに対応するカテゴリのサービス要求に応答するようにスケジュールし、そうでない場合、異常動作サービスクラスタの次元より高い低下可能サービス次元を有するサービスクラスタについて、上記のより高い低下可能サービス次元を有するサービスクラスタによってその対応カテゴリのサービス要求に対して実行される応答処理を停止し、判断し及び処理するステップを繰り返す。
例えば、図4及び図5に示されるとおり、動的障害回復ノードが、クラスAサービスクラスタが異常に動作していると監視を通じて見いだした場合、動的障害回復ノードは、最初、別の正常動作サービスクラスタ(例えば、本明細書におけるクラスBサービスクラスタ及びクラスCサービスクラスタ)の負荷状況が、クラスAサービスクラスタが相応に応答すべきと想定されるクラスAサービス要求の負荷を担うことができるかを判断する。例えば、上記の判断は、具体的に、サービスノード又はクライアントによって報告される情報に従って実行されてよく、特定の判断態様が、当分野に知られる手法を使用して実施されてもよい。
クラスBサービスクラスタとクラスCサービスクラスタとがクラスAサービス要求の負荷を担うことができる場合、正常動作のクラスBサービスクラスタ及びクラスCサービスクラスタは、クラスAサービス要求に応答するようにスケジュールされる。例えば、具体的に、クライアントからのクラスAサービス要求は、応答処理のためにクラスBサービスクラスタ及びクラスCサービスクラスタの中のサービスノードの各々に均等に分散されることがあり得る。
クラスBサービスクラスタ及びクラスCサービスクラスタ双方の低下可能サービス次元がクラスAサービスクラスタの低下可能サービス次元より高いため、クラスBサービスクラスタとクラスCサービスクラスタとがクラスAサービス要求の負荷を担うことができる場合、クラスBサービスクラスタ及びクラスCサービスクラスタのサービス要求に対するその応答は、調整することができる。例えば、具体的に、高い低下可能サービス次元を有する上記のサービスクラスタによってその対応カテゴリのサービス要求に対して実行される応答処理が停止されるということがあり得る。1つのサービスクラスタだけが、異常動作サービスクラスタの低下可能サービス次元より高い低下可能サービス次元を有する場合、上記のより高い低下可能サービス次元を有するサービスクラスタによってその対応カテゴリのサービス要求に対して実行される応答処理が直接停止される。少なくとも2つのサービスクラスタが、異常動作サービスクラスタの低下可能サービス次元より高い低下可能サービス次元を有する場合、例えば、本明細書におけるクラスBサービスクラスタ及びクラスCサービスクラスタの低下可能サービス次元が双方、クラスAサービスクラスタの低下可能サービス次元より高い状況において、最も高い低下可能サービス次元を有するサービスクラスタ(例えば、本明細書におけるクラスCサービスクラスタ)によってその対応カテゴリのサービス要求に対して実行される応答処理が最初停止され、それから、判断し及び処理するステップが繰り返される。正常動作サービスクラスタ(本明細書において、クラスBサービスクラスタ及びクラスCサービスクラスタ)の負荷状況が、異常動作サービスクラスタに対応するカテゴリのサービス要求の負荷をなお担うことができない場合、1段階低い低下可能サービス次元を有するサービスクラスタによってその対応カテゴリのサービス要求に対して実行される応答処理がさらに停止される。4つ以上のサービスクラスタが、異常なクラスAサービスクラスタの低下可能サービス次元より高い低下可能サービス次元を有する場合、正常動作サービスクラスタの負荷状況がクラスAサービス要求の負荷を担うことができるまで、あるいはクラスAサービスクラスタの低下可能サービス次元より高い低下可能サービス次元を有するすべてのサービスクラスタによってその対応カテゴリのサービス要求に対して実行される応答処理が停止されるまで、判断し及び処理するステップが再び繰り返される。
オフライン応答を許容するサービスがインターネット情報サービスに存在し、そのサービスデータは頻繁には更新されず、それゆえにサーバ上に記憶されてよく、クライアント上に記憶されてもよく、このカテゴリのサービスのサービス要求は、サーバにより実行される応答処理を受けることができ、クライアントに記憶されたデータを使用してクライアントにより実行されるオフライン応答処理を受けることもできる。例えば、関係チェーン(relationship chain)に基づいたいくつかのインターネットサービスは、オフライン応答を許容するこの種のサービスに属する。関係チェーンにおいて故障が発生し、あるいは関係チェーンがあまりに大きな圧力下にあるとき、ローカル関係チェーンモードが開始されることができ、クライアントは、毎日最初にログインするとき、関係チェーンデータをプルし、同じものをローカルクライアントに後続のプルなく記憶する。このようにして、サーバの関係チェーンサービスが利用できないとしても、クライアントは関係チェーンサービス要求に対してオフライン応答をなお行うことができ、これにより、ユーザが関係チェーンサービスを正常に使用できることが保証される。
それゆえに、いくつかの実施形態において、異常動作サービスクラスタの低下可能サービス次元より高い低下可能サービス次元を有するサービスクラスタに対応するカテゴリのサービスが、オフライン応答を許容するサービスである場合、例えば、クラスCサービスがオフライン応答を許容するサービスである場合、クラスCサービスクラスタによってクラスCサービス要求に対して実行される応答処理を停止することには、クラスCサービス要求のためのクラスCサービスクラスタの応答モードを調整することを含み、これは具体的に、例えば、クラスCサービス要求をオフライン応答モードに変更すること、及びサービス要求の起動側(initiator)クライアントにサービス要求をローカルにオフライン応答モードにおいて処理するように指示することである。
いくつかの実施形態において、対応カテゴリのサービス要求の応答サービスクラスタ及び/又は応答モードを動的に調整する動的障害回復ノードの特定の動作には、異常動作サービスクラスタに対応するカテゴリのサービス要求に応答するように正常動作サービスクラスタをスケジュールすること、及び/又はサービスクラスタのうち1つによってその対応カテゴリのサービス要求に対して実行される応答処理を停止すること、及び/又はあるカテゴリのサービスクラスタの応答モードをその対応カテゴリのサービス要求に関して調整することを含み、上記方法の特定の実施態様が下記のとおりである。
a)対応サービスカテゴリのサービス要求の応答サービスクラスタアドレス及び/又は応答モード情報を含むスケジュール情報を生成する。例えば、動的障害回復ノードが実行すべき調整動作が、クラスAサービス要求に応答するようにクラスBサービスクラスタとクラスCサービスクラスタとをスケジュールすること、及びクラスCサービス要求の応答モードをオフライン応答モードに変更すること、並びにその一方でクラスBサービスクラスタによってクラスBサービス要求に対して実行される応答処理を停止することであると仮定されるとき、スケジュール情報において、クラスAサービス要求に対応する応答サービスクラスタのアドレスはクラスBサービスクラスタ及びクラスCサービスクラスタのアドレスであり、クラスBサービス要求に対応する応答サービスクラスタのアドレスは空であり、クラスCサービス要求の応答モードはオフライン応答に変更される。
b)上記スケジュール情報をクライアントに送信する。例えば、具体的に、スケジュール情報は、生成された後にクライアントに能動的に送信され、あるいは、クライアントが動的障害回復ノードにT3秒ごとに1回問い合わせて、動的障害回復ノードが応答パケットの態様で最新のスケジュール情報をクライアントに送信する。
c)クライアントが、受信したスケジュール情報に従って対応サービスクラスタに向けてサービス要求を開始し、かつ/あるいは応答モード情報に従って対応サービス要求を処理する。例えば、ステップa)におけるスケジュール情報に従って、クライアントは、クラスAサービス要求をクラスBサービスクラスタ及びクラスCサービスクラスタに送信し、クラスBサービス要求を送信することを放棄し、クラスCサービス要求は、オフライン応答モードにおいてクライアントによってローカルに処理される。
図4及び図5に示されるとおり、動的障害回復ノードが、クラスBサービスクラスタが異常に動作していると監視を通じて見いだした場合、処理は、上記の判断し及び処理するステップに従って同様に実行されてよく、すなわち、他の正常動作のクラスAサービスクラスタ及びクラスCサービスクラスタの負荷状況が、異常動作クラスBサービスクラスタに対応するクラスBサービス要求の負荷を担うことができるかを判断する。そうである場合、クラスBサービス要求に応答するように正常動作のクラスAサービスクラスタ及びクラスCサービスクラスタをスケジュールし、そうでない場合、クラスBサービスクラスタの低下可能サービス次元より高い低下可能サービス次元を有するサービスクラスタ、すなわちクラスCサービスクラスタについて、クラスCサービスクラスタによってクラスCサービス要求に対して実行される応答処理を停止し、それから、クラスAサービスクラスタ及びクラスCサービスクラスタの負荷状況がクラスBサービス要求の負荷を担うことができるかを再度判断する。そうである場合、クラスBサービス要求に応答するように正常動作のクラスAサービスクラス及びクラスCサービスクラスタをスケジュールし、そうでない場合、これ以上処理を実行しない。
さらに、クラスBサービス要求のための動的障害回復ポリシーは別の態様で実施されてもよく、例えば、時間がサービスピーク期間であるかを判断する。そうである場合、上記の判断し及び処理するステップにおける調整は実行されないことになり、現在の時間が非ピーク期間である場合、上記の判断し及び処理するステップが調整のために再度実行される。
図4及び図5に示されるとおり、動的障害回復ノードが、クラスCサービスクラスタが異常に動作していると監視を通じて見いだした場合、処理は、上記の判断し及び処理するステップに従って同様に実行されてよく、すなわち、他の正常動作のクラスAサービスクラスタ及びクラスBサービスクラスタの負荷状況が、異常動作クラスCサービスクラスタに対応するクラスCサービス要求の負荷を担うことができるかを判断する。そうである場合、クラスCサービス要求に応答するように正常動作のクラスAサービスクラスタ及びクラスBサービスクラスタをスケジュールし、そうでない場合、クラスCサービスクラスタの低下可能サービス次元が最も高いため、唯一の方法は、クラスCサービス要求の応答モードを調整すること、すなわち、クラスCサービス要求をオフライン応答モードに変更すること、及びクラスCサービス要求の起動側にサービス要求をローカルにオフライン応答モードにおいて処理するように指示することである。
当然ながら、クラスCサービス要求のための動的障害回復ポリシーは、別の態様で実施されてもよく、例えば、動的障害回復ノードが、クラスCサービスクラスタが異常に動作していると監視を通じて見いだした場合、動的障害回復ノードはクラスCサービス要求の応答モードを直接調整することができ、すなわち、動的障害回復ノードは、クラスCサービス要求をオフライン応答モードに変更し、クラスCサービス要求の起動側にサービス要求をローカルにオフライン応答モードにおいて処理するように指示する。
サービスクラスタのすべてが正常な状態に戻った場合、動的障害回復ノードは、サービスカテゴリの各々のサービス要求を、応答処理のために該サービスカテゴリに対応するサービスクラスタに対してスケジュールし続ける。例えば、特定の態様において、動的障害回復ノードは、サービスクラスタが正常に動作していると示すスケジュール情報をクライアントに送信する。このスケジュール情報を受信した後、クライアントが、各サービスカテゴリとこれに対応するサービスクラスタアドレスとの間の相互関係に関する記憶された情報に従ってあるカテゴリのサービス要求を開始する場合、クライアントは、そのサービスカテゴリのサービス要求を、これに対応するサービスクラスタアドレスに応答処理のために送信する。例えば、クラスAサービス要求はクラスAサービスクラスタに送信され、クラスBサービス要求はクラスBサービスクラスタに送信され、クラスCサービス要求はクラスCサービスクラスタに送信される。
上記で説明されたとおり、本発明と先行技術とを比較すると、コンピュータ情報システム全体におけるすべてのサービスノードがピアであり、サービスクラスタの各々の動作状態に従って、サービス要求に対する対応サービスクラスタの応答モードは動的に調整することができ、サービスクラスタのうち1つの中の故障サービスノードが特定数に到達し、外部向けサービスが提供できないとしても、サービスクラスタが相応に応答すべきサービス要求は別の正常動作サービスクラスタに転送されることもでき、したがって、コンピュータ情報システム全体によって外部に提供されるサービスは容易には中断されず、これにより、コンピュータ情報システムのロバスト性が改良され、バースト負荷及び故障を扱う能力が改良される。
さらに、本発明において、サービスノードがすべてピアである、すなわちサービスノードが同じ処理ロジックを含むため、本発明は、非常に強いスケーラビリティを有する。
さらに、本発明において、サービスカテゴリとこれに対応するサービスクラスタとは、低下可能サービスの次元に従って分類することができ、サービスクラスタのうち1つが異常であるとき、好ましくは、低い低下可能サービス次元を有するサービス(すなわち、比較的に中核のサービス)は継続的に提供でき、高い低下可能サービス次元を有するサービス(すなわち、ユーザがサービス品質の大幅な下落を我慢できるサービス)は停止され、あるいはオフライン応答モードに変更できることが保証される。このようにして、障害回復の間、中核サービスの安定性を保証することができ、ユーザの満足度を改良することができる。
図6は、いくつかの実施形態に従うサービスクラスタ(例えば、サービスクラスタ401、402又は403)の中のサービスノード600を例示するブロック図である。サービスノード600は、メモリ612に記憶されたモジュール、プログラム及び/又は命令を実行し、これにより処理動作を実行する1又は複数の処理ユニット(CPU)602と、1又は複数のネットワーク又は他の通信インタフェース610と、メモリ612と、上記のコンポーネントを相互接続する1又は複数の通信バス614とを通常含む。通信バス614は、システムコンポーネント間の通信を相互接続し、制御する回路(チップセットと呼ばれることがある)を場合により含む。サービスノード600は、ディスプレイ装置606とキーボード608とを含むユーザインタフェース604を場合により含んでよい。メモリ612は、DRAM、SRAM、DDR RAM又は他のランダムアクセスソリッドステートメモリ装置などの高速ランダムアクセスメモリを含み、1又は複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ装置又は他の不揮発性ソリッドステート記憶装置などの不揮発性メモリを含んでもよい。メモリ612は、(1又は複数の)CPU602から遠隔に位置する1又は複数の記憶装置を場合により含んでよい。メモリ612、又は別法としてメモリ612内の(1又は複数の)不揮発性メモリ装置は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態において、メモリ612、又はメモリ612のコンピュータ可読記憶媒体は、下記のプログラム、モジュール及びデータ構造、又はこれらのサブセットを記憶する。
・様々な基本のシステムサービスを扱い、ハードウェア依存タスクを実行するための手順を含むオペレーティングシステム616。
・1又は複数の通信ネットワークインタフェース610(有線又は無線)と、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1又は複数の通信ネットワークとを介して、サービスノード600を他のコンピュータに接続することに使用されるネットワーク通信モジュール618。
・それぞれのサービスカテゴリに対応するサービス要求を処理するサービス処理ロジック620。
・負荷ステータス又は状況を動的障害回復ノード404に報告する負荷状況報告モジュール622。
サービス処理ロジック620は、システムにおいて様々なサービスカテゴリからの要求を処理するロジックを含む。したがって、図4乃至図5に例示され上記で説明された例を使用すると、サービス処理ロジック620は、クラスA要求、クラスB要求及びクラスC要求に応答する能力がある。
上記で識別された要素の各々は、これまでに言及されたメモリ装置のうち1又は複数に記憶されてよく、上記で説明された機能を実行する命令セットに対応する。上記で識別されたモジュール又はプログラム(すなわち、命令セット)は、別個のソフトウェアプログラム、手順又はモジュールとして実施される必要はなく、したがって、上記のモジュールの様々なサブセットが、様々な実施形態において組み合わせられ、あるいはその他の方法で再配置されてよい。いくつかの実施形態において、メモリ612は、上記で識別されたモジュール及びデータ構造のサブセットを記憶してよい。さらに、メモリ612は、上記で説明されていない追加のモジュール及びデータ構造を記憶してもよい。
図6は「サービスノード」を示すが、図6は、本明細書に説明された実施形態の構造概要図であることよりも、一組のサーバに存在し得る様々な特徴の機能的説明であることが意図される。実際には、当業者により認識されるとおり、別個に示される項目が組み合わせられてよく、いくつかのアイテムが分離されてよい。
図7は、いくつかの実施形態に従う動的障害回復ノード404(又は、541若しくは542)を例示するブロック図である。動的障害回復ノード404は、メモリ712に記憶されたモジュール、プログラム及び/又は命令を実行し、これにより処理動作を実行する1又は複数の処理ユニット(CPU)702と、1又は複数のネットワーク又は他の通信インタフェース710と、メモリ712と、上記のコンポーネントを相互接続する1又は複数の通信バス714とを通常含む。通信バス714は、システムコンポーネント間の通信を相互接続し、制御する回路(チップセットと呼ばれることがある)を場合により含む。動的障害回復ノード404は、ディスプレイ装置706とキーボード708とを含むユーザインタフェース704を場合により含んでよい。メモリ712は、DRAM、SRAM、DDR RAM又は他のランダムアクセスソリッドステートメモリ装置などの高速ランダムアクセスメモリを含み、1又は複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ装置又は他の不揮発性ソリッドステート記憶装置などの不揮発性メモリを含んでもよい。メモリ712は、(1又は複数の)CPU702から遠隔に位置する1又は複数の記憶装置を場合により含んでよい。メモリ712、又は別法としてメモリ712内の(1又は複数の)不揮発性メモリ装置は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態において、メモリ712、又はメモリ712のコンピュータ可読記憶媒体は、下記のプログラム、モジュール及びデータ構造、又はこれらのサブセットを記憶する。
・様々な基本のシステムサービスを扱い、ハードウェア依存タスクを実行するための手順を含むオペレーティングシステム716。
・1又は複数の通信ネットワークインタフェース710(有線又は無線)と、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1又は複数の通信ネットワークとを介して、動的障害回復ノード404(又は、541若しくは542)を他のコンピュータに接続することに使用されるネットワーク通信モジュール718。
・動的障害回復ストラテジを設定し、サービスクラスタが異常に動作しているときにサービスクラスタに対して動的調整を行う動的障害回復モジュール720。
・サービスクラスタ及びサービスノード600の動作状態を監視する監視モジュール722。
・サービスカテゴリとサービスクラスタとの間の対応を含む相互関係情報726含み、動的障害回復の間に調整を行うことに使用される調整情報及び他の情報を含む(1又は複数の)動的障害回復ストラテジ724。
・スケジュール情報730を生成し、送信するスケジュール情報モジュール728。
・各サービスクラスタのための応答モード情報を含むスケジュール情報730。
上記で識別された要素の各々は、これまでに言及されたメモリ装置のうち1又は複数に記憶されてよく、上記で説明された機能を実行する命令セットに対応する。上記で識別されたモジュール又はプログラム(すなわち、命令セット)は、別個のソフトウェアプログラム、手順又はモジュールとして実施される必要はなく、したがって、上記のモジュールの様々なサブセットが、様々な実施形態において組み合わせられ、あるいはその他の方法で再配置されてよい。いくつかの実施形態において、メモリ712は、上記で識別されたモジュール及びデータ構造のサブセットを記憶してよい。さらに、メモリ712は、上記で説明されていない追加のモジュール及びデータ構造を記憶してもよい。
図7は「動的障害回復ノード」を示すが、図7は、本明細書に説明された実施形態の構造概要図であることよりも、一組のサーバに存在し得る様々な特徴の機能的説明であることが意図される。実際には、当業者により認識されるとおり、別個に示される項目が組み合わせられてよく、いくつかのアイテムが分離されてよい。例えば、図7に別個に示されるいくつかの項目が単一のサーバ上で実施されてよく、単一の項目が1又は複数のサーバによって実施されてよい。
図8は、いくつかの実施形態に従うクライアント800を例示するブロック図である。クライアント800は、メモリ812に記憶されたモジュール、プログラム及び/又は命令を実行し、これにより処理動作を実行する1又は複数の処理ユニット(CPU)802と、1又は複数のネットワーク又は他の通信インタフェース810と、メモリ812と、上記のコンポーネントを相互接続する1又は複数の通信バス814とを通常含む。通信バス814は、システムコンポーネント間の通信を相互接続し、制御する回路(チップセットと呼ばれることがある)を場合により含む。クライアント800は、ディスプレイ装置806とキーボード808とを含むユーザインタフェース804を場合により含んでよい。メモリ812は、DRAM、SRAM、DDR RAM又は他のランダムアクセスソリッドステートメモリ装置などの高速ランダムアクセスメモリを含み、1又は複数の磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ装置又は他の不揮発性ソリッドステート記憶装置などの不揮発性メモリを含んでもよい。メモリ812は、(1又は複数の)CPU802から遠隔に位置する1又は複数の記憶装置を場合により含んでよい。メモリ812、又は別法としてメモリ812内の(1又は複数の)不揮発性メモリ装置は、非一時的コンピュータ可読記憶媒体を含む。いくつかの実施形態において、メモリ812、又はメモリ812のコンピュータ可読記憶媒体は、下記のプログラム、モジュール及びデータ構造、又はこれらのサブセットを記憶する。
・様々な基本のシステムサービスを扱い、ハードウェア依存タスクを実行するための手順を含むオペレーティングシステム816。
・1又は複数の通信ネットワークインタフェース810(有線又は無線)と、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1又は複数の通信ネットワークとを介して、クライアント800を他のコンピュータに接続することに使用されるネットワーク通信モジュール818。
・サービス要求をサービスクラスタに送信するサービス要求モジュール820。
・サービス要求にオフラインで応答するオフライン応答モジュール822。
・サービスカテゴリとサービスクラスタとの間の対応を含む相互関係情報824。
・各サービスクラスタのための応答モード情報を含むスケジュール情報826。
上記で識別された要素の各々は、これまでに言及されたメモリ装置のうち1又は複数に記憶されてよく、上記で説明された機能を実行する命令セットに対応する。上記で識別されたモジュール又はプログラム(すなわち、命令セット)は、別個のソフトウェアプログラム、手順又はモジュールとして実施される必要はなく、したがって、上記のモジュールの様々なサブセットが、様々な実施形態において組み合わせられ、あるいはその他の方法で再配置されてよい。いくつかの実施形態において、メモリ812は、上記で識別されたモジュール及びデータ構造のサブセットを記憶してよい。さらに、メモリ812は、上記で説明されていない追加のモジュール及びデータ構造を記憶してもよい。
図8は「クライアント」を示すが、図8は、本明細書に説明された実施形態の構造概要図であることよりも、一組のサーバに存在し得る様々な特徴の機能的説明であることが意図される。実際には、当業者により認識されるとおり、別個に示される項目が組み合わせられてよく、いくつかのアイテムが分離されてよい。例えば、図8に別個に示されるいくつかの項目が単一のサーバ上で実施されてよく、単一の項目が1又は複数のサーバによって実施されてよい。
前述の説明は、解説を目的として、特定の実施形態を参照して説明されている。しかしながら、上記の例示的な議論は、網羅的であること、又は本発明を開示された正確な形態に限定することは意図されない。多くの修正及び変形が、上記の教示を考慮して可能である。本願実施形態は、本発明の原理とその実際の適用とを最も良く解説して、これにより考えられる具体的な用法に合わせたとおりに様々な修正を用いて本発明と様々な実施形態とを当業者が最も良く利用できるように、選択され、説明された。
上記で説明されたことは、単に本発明の好適な実施形態であり、本発明を限定することに使用されず、本発明の主旨及び原理内でなされるいかなる修正、均等的置換、改良等もすべて、本発明の保護範囲に包含されるものとする。
本明細書において様々な要素を説明するために第1、第2などの用語が使用され得るが、これらの要素は上記用語によって限定されるべきではない。上記用語は、1つの要素から別の要素を単に区別するために使用される。例えば、本発明の範囲から逸脱することなく、第1の順位付け基準が第2の順位付け基準と命名されてもよく、同様にして、第2の順位付け基準は第1の順位付け基準と命名されてもよい。第1の順位付け基準と第2の順位付け基準とは双方、順位付け基準であり、しかしこれらは同じ順位付け基準ではない。
本明細書における発明の説明に使用される術語は、単に具体的な実施例を説明する目的のものであり、本発明を限定することは意図されない。本発明の説明と別記の請求項とにおいて、単数形の「一の(“a”、“an”)」及び「その(“the”)」は、文脈が明らかに他を示さない限り、同様に複数形を含むことが意図される。さらに、本明細書において使用される用語「及び/又は」は、関連する列挙された項目のうち1又は複数についての任意の及びすべてのとり得る組み合わせを指し、包含することが理解されるであろう。さらに、用語「含まれる」「含まれている」「含む」及び/又は「含んでいる」は、本明細書において使用されるとき、宣言された特徴、動作、要素及び/又はコンポーネントの存在を指定し、しかし1又は複数の他の特徴、動作、要素、コンポーネント及び/又はこれらのグループの存在又は追加を除外しないことが理解されるであろう。
本明細書において、用語「〜する場合(“if”)」は、文脈に依存して、宣言された先行する条件が真である「とき」若しくは「と」又は「との判定に応じて」若しくは「との判定に従って」若しくは「との検出に応じて」を意味するとみなされてもよい。同様にして、「[宣言された先行する条件が真である]と判定された場合」又は「[宣言された先行する条件が真である]場合」若しくは「[宣言された先行する条件が真である]とき」といった語句は、文脈に依存して、宣言された先行する条件が真である「と判定すると」若しくは「との判定に応じて」若しくは「との判定に従って」又は「と検出すると」若しくは「との検出に応じて」を意味するとみなされてもよい。
様々な図面のうちいくつかが複数の論理的段階を具体的な順序で例示しているが、順序依存でない段階は再順序付けされてもよく、他の段階が組み合わせられ、あるいは出現してもよい。いくつかの再順序付け又は他のグルーピングが明確に言及されているが、他のものが当業者に明らかになるであろうし、ゆえに代替手段の網羅的なリストを提示しない。さらに、上記段階は、ハードウェア、ファームウェア、ソフトウェア、又はこれらの任意の組み合わせで実施されてよいことが認識されるべきである。
前述の説明は、解説を目的として、特定の実施形態を参照して説明されている。しかしながら、上記の例示的な議論は、網羅的であること、又は本発明を開示された正確な形態に限定することは意図されない。多くの修正及び変形が、上記の教示を考慮して可能である。本願実施例は、本発明の原理とその実際の適用とを最も良く解説して、これにより考えられる具体的な用法に合わせたとおりに様々な修正を用いて本発明と様々な実施形態とを当業者が最も良く利用できるように、選択され、説明された。実施例には、別記の請求項の主旨及び範囲内にある代替手段、修正及び均等物が含まれる。多数の特定の詳細が、本明細書に提示される対象事項の完全な理解を提供するために明記されている。しかし、上記対象事項はこれらの特定の詳細なしに実施され得ることが当業者に明らかになるであろう。他の例において、周知の方法、手順、コンポーネント及び回路は、実施例の様態を不必要に分かりにくくしないように詳細には説明されていない。
関連出願
本出願は、“COMPUTER INFORMATION SYSTEM AND DYNAMIC DISASTER RECOVERY METHOD THEREFOR”と題され2012年8月7日に申請された中国特許出願第201210277988.7号に対する優先を主張し、上記中国特許出願は、その全体が参照により援用される。

Claims (19)

  1. 各サービスクラスタが少なくとも2つのサービスノードを含む、少なくとも2つのサービスクラスタであって、各サービスノードは、複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを含み、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するように構成される、少なくとも2つのサービスクラスタと、
    サービスクラスタに関連付けられた特定のサービスカテゴリに基づいて各サービスクラスタのためのそれぞれの動的障害回復ポリシーを設定し、サービスクラスタの動作状態を監視するように構成された動的障害回復ノードと、
    を含み、
    サービスクラスタが正常に動作する場合、前記動的障害回復ノードは、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタにスケジュールするように構成され、サービスクラスタが異常に動作する場合、前記動的障害回復ノードは、サービス要求の処理を前記動的障害回復ポリシーに従って動的に調整するように構成される、
    コンピュータ情報システム。
  2. プライマリ動的障害回復ノードとスタンバイ動的障害回復ノードと、をさらに含み、前記プライマリ動的障害回復ノードと前記スタンバイ動的障害回復ノードとは、互いをバックアップし、互いの間で障害回復切り替えを実行するように構成される、請求項1に記載のコンピュータ情報システム。
  3. 中核的ユーザ体験サービスクラスタとユーザ体験低下可能サービスクラスタとユーザ体験無視可能サービスクラスタと、をさらに含み、前記動的障害回復ノードは、下記の、
    前記中核的ユーザ体験サービスクラスタが異常に動作する場合、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散する動作と、
    前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散する動作と、
    前記ユーザ体験無視可能サービスクラスタが異常に動作する場合、サービス要求の少なくともサブセットを落とすように前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新する動作と、
    を実行するように構成される、請求項1に記載のコンピュータ情報システム。
  4. 前記動的障害回復ノードは、前記の動的調整を実行する前に当該コンピュータ情報システムにおける3つのサービスクラスタにおけるロードバランスを確認するようにさらに構成される、請求項3に記載のコンピュータ情報システム。
  5. 前記中核的ユーザ体験サービスクラスタが異常に動作する場合、前記動的障害回復ノードは、
    前記ユーザ体験低下可能サービスクラスタ及び前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う能力があるかを判定し、
    そうでない場合、前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新し、
    なおもそうでない場合、前記ユーザ体験低下可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験低下可能サービスクラスタの動的障害回復ポリシーを更新する、
    ようにさらに構成される、請求項3に記載のコンピュータ情報システム。
  6. 前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードは、
    前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するかを判定し、
    そうでない場合、当該コンピュータ情報システムがピーク動作期間内であるかを判定し、
    当該コンピュータ情報システムが前記ピーク動作期間内でない場合、サービス要求を前記ユーザ体験無視可能サービスクラスタと前記中核的ユーザ体験サービスクラスタとのサービスノードの間で均等に分散し、
    当該コンピュータ情報システムが前記ピーク動作期間内である場合、当該コンピュータ情報システムが前記ユーザ体験低下可能サービスクラスタに向けられたサービス要求を扱う十分な能力を有するまで、前記ユーザ体験無視可能サービスクラスタに向けられたサービス要求の少なくともサブセットを落とす、
    ようにさらに構成される、請求項3に記載のコンピュータ情報システム。
  7. 前記3つのサービスクラスタの各々は、そのロードバランスを第1の所定時間間隔において前記動的障害回復ノードに報告するように構成され、前記動的障害回復ノードは、前記3つのサービスクラスタの各々の更新された動的障害回復ポリシーを第2の所定時間間隔において対応クライアントに報告するように構成される、請求項3に記載のコンピュータ情報システム。
  8. 複数のサービスノードを含むコンピュータ情報システムによって実施される動的障害回復方法であって、
    前記複数のサービスノードを少なくとも2つのサービスクラスタと動的障害回復ノードとに分けるステップであり、各サービスクラスタは少なくとも2つのサービスノードを含む、ステップと、
    各サービスクラスタについて、
    複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを各サービスノードにインストールし、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するようにサービスノードを構成するステップと、
    前記動的障害回復ノードに、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいてサービスクラスタのための動的障害回復ポリシーを設定させ、サービスクラスタの動作状態を監視させるステップと、
    サービスクラスタが正常に動作する場合、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタ内のサービスノードにスケジュールするステップと、
    サービスクラスタが異常に動作する場合、サービス要求の処理を前記動的障害回復ポリシーに従って動的に調整するステップと、
    を含む方法。
  9. 前記複数のサービスノードは、3つのサービスクラスタ、中核的ユーザ体験サービスクラスタとユーザ体験低下可能サービスクラスタとユーザ体験無視可能サービスクラスタとに分けられ、サービス要求の処理の前記の動的調整は、
    前記中核的ユーザ体験サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させるステップと、
    前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させるステップと、
    前記ユーザ体験無視可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを落とすように前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新させるステップと、
    をさらに含む、請求項8に記載の方法。
  10. 前記動的障害回復ノードは、前記の動的調整を実行する前に前記コンピュータ情報システムにおける3つのサービスクラスタにおけるロードバランスを確認するように構成される、請求項9に記載の方法。
  11. 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させるステップは、
    前記ユーザ体験低下可能サービスクラスタ及び前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う能力があるかを判定するステップと、
    そうでない場合、前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新するステップと、
    なおもそうでない場合、前記ユーザ体験低下可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験低下可能サービスクラスタの動的障害回復ポリシーを更新するステップと、
    をさらに含む、請求項9に記載の方法。
  12. 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させるステップは、
    前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するかを判定するステップと、
    そうでない場合、前記コンピュータ情報システムがピーク動作期間内であるかを判定するステップと、
    前記コンピュータ情報システムが前記ピーク動作期間内でない場合、前記動的障害回復ノードに、サービス要求を前記ユーザ体験無視可能サービスクラスタと前記中核的ユーザ体験サービスクラスタとのサービスノードの間で均等に分散させるステップと、
    前記コンピュータ情報システムが前記ピーク動作期間内である場合、前記動的障害回復ノードに、前記コンピュータ情報システムが前記ユーザ体験低下可能サービスクラスタに向けられたサービス要求を扱う十分な能力を有するまで、前記ユーザ体験無視可能サービスクラスタに向けられたサービス要求の少なくともサブセットを落とさせるステップと、
    をさらに含む、請求項9に記載の方法。
  13. 前記3つのサービスクラスタの各々は、そのロードバランスを第1の所定時間間隔において前記動的障害回復ノードに報告するように構成され、前記動的障害回復ノードは、前記3つのサービスクラスタの各々の更新された動的障害回復ポリシーを第2の所定時間間隔において対応クライアントに報告するように構成される、請求項9に記載の方法。
  14. 複数のサービスノードを含むコンピュータ情報システムに関連して使用される非一時的コンピュータ可読媒体であって、当該非一時的コンピュータ可読媒体は前記コンピュータ情報システムにより実行される1又は複数のプログラムを記憶し、前記1又は複数のプログラムは、
    前記複数のサービスノードを少なくとも2つのサービスクラスタと動的障害回復ノードとに分ける命令であり、各サービスクラスタは少なくとも2つのサービスノードを含む、命令と、
    各サービスクラスタについて、
    複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを各サービスノードにインストールし、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するようにサービスノードを構成する命令と、
    前記動的障害回復ノードに、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいてサービスクラスタのための動的障害回復ポリシーを設定させ、サービスクラスタの動作状態を監視させる命令と、
    サービスクラスタが正常に動作する場合、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタ内のサービスノードにスケジュールする命令と、
    サービスクラスタが異常に動作する場合、サービス要求の処理を前記動的障害回復ポリシーに従って動的に調整する命令と、
    を含む、非一時的コンピュータ可読媒体。
  15. 前記複数のサービスノードは、3つのサービスクラスタ、中核的ユーザ体験サービスクラスタとユーザ体験低下可能サービスクラスタとユーザ体験無視可能サービスクラスタとに分けられ、サービス要求の処理の前記の動的調整は、
    前記中核的ユーザ体験サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させる命令と、
    前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させる命令と、
    前記ユーザ体験無視可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを落とすように前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新させる命令と、
    をさらに含む、請求項14に記載の非一時的コンピュータ可読媒体。
  16. 前記動的障害回復ノードは、前記の動的調整を実行する前に前記コンピュータ情報システムにおける3つのサービスクラスタにおけるロードバランスを確認するように構成される、請求項15に記載の非一時的コンピュータ可読媒体。
  17. 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させる命令は、
    前記ユーザ体験低下可能サービスクラスタ及び前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う能力があるかを判定する命令と、
    そうでない場合、前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新する命令と、
    なおもそうでない場合、前記ユーザ体験低下可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験低下可能サービスクラスタの動的障害回復ポリシーを更新する命令と、
    をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。
  18. 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させる命令は、
    前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するかを判定する命令と、
    そうでない場合、前記コンピュータ情報システムがピーク動作期間内であるかを判定する命令と、
    前記コンピュータ情報システムが前記ピーク動作期間内でない場合、前記動的障害回復ノードに、サービス要求を前記ユーザ体験無視可能サービスクラスタと前記中核的ユーザ体験サービスクラスタとのサービスノードの間で均等に分散させる命令と、
    前記コンピュータ情報システムが前記ピーク動作期間内である場合、前記動的障害回復ノードに、前記コンピュータ情報システムが前記ユーザ体験低下可能サービスクラスタに向けられたサービス要求を扱う十分な能力を有するまで、前記ユーザ体験無視可能サービスクラスタに向けられたサービス要求の少なくともサブセットを落とさせる命令と、
    をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。
  19. 前記3つのサービスクラスタの各々は、そのロードバランスを第1の所定時間間隔において前記動的障害回復ノードに報告するように構成され、前記動的障害回復ノードは、前記3つのサービスクラスタの各々の更新された動的障害回復ポリシーを第2の所定時間間隔において対応クライアントに報告するように構成される、請求項15に記載の非一時的コンピュータ可読媒体。
JP2015525717A 2012-08-07 2013-07-30 コンピュータ情報システム及びその動的障害回復方法 Pending JP2015526815A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201210277988.7 2012-08-07
CN201210277988.7A CN103580902B (zh) 2012-08-07 2012-08-07 一种计算机信息系统及其动态容灾方法
PCT/CN2013/080413 WO2014023174A1 (en) 2012-08-07 2013-07-30 Computer information system and dynamic disaster recovery method therefor

Publications (1)

Publication Number Publication Date
JP2015526815A true JP2015526815A (ja) 2015-09-10

Family

ID=50051888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015525717A Pending JP2015526815A (ja) 2012-08-07 2013-07-30 コンピュータ情報システム及びその動的障害回復方法

Country Status (8)

Country Link
US (1) US9262287B2 (ja)
EP (1) EP2883329B1 (ja)
JP (1) JP2015526815A (ja)
KR (1) KR20150032346A (ja)
CN (1) CN103580902B (ja)
CL (1) CL2015000282A1 (ja)
PH (1) PH12015500177B1 (ja)
WO (1) WO2014023174A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016048468A (ja) * 2014-08-27 2016-04-07 Kddi株式会社 ネットワーク復旧システムおよびプログラム
JP2018504038A (ja) * 2015-12-31 2018-02-08 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ソフトウェア定義型データセンター、並びにそのためのサービスクラスタスケジューリング方法及びトラフィック監視方法

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9825857B2 (en) 2013-11-05 2017-11-21 Cisco Technology, Inc. Method for increasing Layer-3 longest prefix match scale
US9674086B2 (en) 2013-11-05 2017-06-06 Cisco Technology, Inc. Work conserving schedular based on ranking
US9655232B2 (en) 2013-11-05 2017-05-16 Cisco Technology, Inc. Spanning tree protocol (STP) optimization techniques
US10951522B2 (en) 2013-11-05 2021-03-16 Cisco Technology, Inc. IP-based forwarding of bridged and routed IP packets and unicast ARP
US9502111B2 (en) 2013-11-05 2016-11-22 Cisco Technology, Inc. Weighted equal cost multipath routing
US9876711B2 (en) 2013-11-05 2018-01-23 Cisco Technology, Inc. Source address translation in overlay networks
US9374294B1 (en) 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US10778584B2 (en) 2013-11-05 2020-09-15 Cisco Technology, Inc. System and method for multi-path load balancing in network fabrics
US9397946B1 (en) 2013-11-05 2016-07-19 Cisco Technology, Inc. Forwarding to clusters of service nodes
US9769078B2 (en) 2013-11-05 2017-09-19 Cisco Technology, Inc. Dynamic flowlet prioritization
US9509092B2 (en) 2013-11-06 2016-11-29 Cisco Technology, Inc. System and apparatus for network device heat management
CN103763400A (zh) * 2014-02-18 2014-04-30 成都致云科技有限公司 分布式系统中实现不间断服务的调度方法
WO2016039784A1 (en) * 2014-09-10 2016-03-17 Hewlett Packard Enterprise Development Lp Determining optimum resources for an asymmetric disaster recovery site of a computer cluster
US10116493B2 (en) 2014-11-21 2018-10-30 Cisco Technology, Inc. Recovering from virtual port channel peer failure
US9477555B1 (en) 2015-11-16 2016-10-25 International Business Machines Corporation Optimized disaster-recovery-as-a-service system
US10142163B2 (en) 2016-03-07 2018-11-27 Cisco Technology, Inc BFD over VxLAN on vPC uplinks
CN105915583B (zh) * 2016-03-28 2020-05-26 联想(北京)有限公司 一种启动服务集群的方法及服务集群
US10333828B2 (en) 2016-05-31 2019-06-25 Cisco Technology, Inc. Bidirectional multicasting over virtual port channel
US11509501B2 (en) 2016-07-20 2022-11-22 Cisco Technology, Inc. Automatic port verification and policy application for rogue devices
CN106339296A (zh) * 2016-08-31 2017-01-18 虎扑(上海)文化传播股份有限公司 服务状态监测方法和装置
US10193750B2 (en) 2016-09-07 2019-01-29 Cisco Technology, Inc. Managing virtual port channel switch peers from software-defined network controller
CN108206768A (zh) * 2016-12-20 2018-06-26 阿里巴巴集团控股有限公司 集群监测和切换方法及装置
US10547509B2 (en) 2017-06-19 2020-01-28 Cisco Technology, Inc. Validation of a virtual port channel (VPC) endpoint in the network fabric
CN110022220B (zh) * 2018-01-08 2022-02-25 腾讯科技(深圳)有限公司 名片识别中的路由激活方法及系统
CN108737153B (zh) * 2018-03-27 2021-06-15 深圳市网心科技有限公司 区块链灾备系统、方法、服务器和计算机可读存储介质
CN110764963B (zh) * 2018-07-28 2023-05-09 阿里巴巴集团控股有限公司 一种服务异常处理方法、装置及设备
CN109213637B (zh) * 2018-11-09 2022-03-04 浪潮电子信息产业股份有限公司 分布式文件系统集群节点的数据恢复方法、装置及介质
CN109582451A (zh) * 2018-11-21 2019-04-05 金色熊猫有限公司 任务调度方法、系统、设备以及可读介质
CN110351122B (zh) * 2019-06-17 2022-02-25 腾讯科技(深圳)有限公司 容灾方法、装置、系统与电子设备
CN111010448B (zh) * 2019-12-23 2022-06-03 北京奇艺世纪科技有限公司 一种分布式消息系统和数据中心dc
US11334434B2 (en) * 2020-02-19 2022-05-17 Seagate Technology Llc Multi-level erasure system with cooperative optimization
US11372553B1 (en) 2020-12-31 2022-06-28 Seagate Technology Llc System and method to increase data center availability using rack-to-rack storage link cable
US11789800B2 (en) * 2021-10-01 2023-10-17 Vmware, Inc. Degraded availability zone remediation for multi-availability zone clusters of host computers
CN114006907A (zh) * 2021-10-28 2022-02-01 中国工商银行股份有限公司 分布式服务器的服务降级方法、装置、电子设备及介质
CN113949631A (zh) * 2021-11-19 2022-01-18 网宿科技股份有限公司 客户端容灾的处理方法、系统及电子设备
CN115689391B (zh) * 2022-12-02 2024-03-08 国涛(菏泽牡丹区)网络科技有限责任公司 一种基于电子商务的数据容灾方法、系统及云平台

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002163241A (ja) * 2000-11-29 2002-06-07 Ntt Data Corp クライアントサーバシステム
US6728748B1 (en) * 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
JP2005032242A (ja) * 2003-07-10 2005-02-03 Hewlett-Packard Development Co Lp リソースの利用およびアプリケーションの性能の監視システムおよび監視方法
JP2010113495A (ja) * 2008-11-06 2010-05-20 Nomura Research Institute Ltd クラスタシステムおよびクラスタ制御方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7356531B1 (en) * 2003-07-25 2008-04-08 Symantec Operating Corporation Network file system record lock recovery in a highly available environment
US7953703B2 (en) * 2005-02-17 2011-05-31 International Business Machines Corporation Creation of highly available pseudo-clone standby servers for rapid failover provisioning
CN101227315B (zh) * 2007-01-17 2011-04-20 上海市医疗保险信息中心 动态服务器集群及其控制方法
US8671179B2 (en) * 2007-06-19 2014-03-11 International Business Machines Corporation Dynamically adding best suited servers into clusters of application servers
CN101222362B (zh) * 2008-01-08 2011-10-26 腾讯科技(深圳)有限公司 一种服务调度方法、装置和服务调度系统
EP2425341B1 (en) * 2009-05-01 2018-07-11 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
US8266474B2 (en) * 2009-12-30 2012-09-11 Symantec Corporation Fast cluster failure detection
US8539087B2 (en) * 2010-03-12 2013-09-17 Symantec Corporation System and method to define, visualize and manage a composite service group in a high-availability disaster recovery environment
US8972551B1 (en) * 2010-04-27 2015-03-03 Amazon Technologies, Inc. Prioritizing service requests
CN102546807B (zh) * 2012-01-17 2015-06-17 胡建鹤 基于云计算架构的网络服务系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728748B1 (en) * 1998-12-01 2004-04-27 Network Appliance, Inc. Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
JP2002163241A (ja) * 2000-11-29 2002-06-07 Ntt Data Corp クライアントサーバシステム
JP2005032242A (ja) * 2003-07-10 2005-02-03 Hewlett-Packard Development Co Lp リソースの利用およびアプリケーションの性能の監視システムおよび監視方法
JP2010113495A (ja) * 2008-11-06 2010-05-20 Nomura Research Institute Ltd クラスタシステムおよびクラスタ制御方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
福元 健 他: "将来のネットワーク制御ノード実現に向けた取り組み", NTT技術ジャーナル, JPN6015027939, March 2012 (2012-03-01), pages 23 - 27, ISSN: 0003113964 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016048468A (ja) * 2014-08-27 2016-04-07 Kddi株式会社 ネットワーク復旧システムおよびプログラム
JP2018504038A (ja) * 2015-12-31 2018-02-08 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ソフトウェア定義型データセンター、並びにそのためのサービスクラスタスケジューリング方法及びトラフィック監視方法

Also Published As

Publication number Publication date
WO2014023174A1 (en) 2014-02-13
US20140047264A1 (en) 2014-02-13
EP2883329A4 (en) 2015-07-08
CL2015000282A1 (es) 2015-08-28
KR20150032346A (ko) 2015-03-25
EP2883329B1 (en) 2018-01-03
PH12015500177A1 (en) 2015-04-06
US9262287B2 (en) 2016-02-16
PH12015500177B1 (en) 2015-04-06
EP2883329A1 (en) 2015-06-17
CN103580902B (zh) 2015-01-14
CN103580902A (zh) 2014-02-12

Similar Documents

Publication Publication Date Title
EP2883329B1 (en) Computer information system and dynamic disaster recovery method therefor
CN109274707B (zh) 一种负载调度方法及装置
US10609159B2 (en) Providing higher workload resiliency in clustered systems based on health heuristics
US9733983B2 (en) System and method for surge protection and rate acceleration in a traffic director environment
CN102143046B (zh) 负载均衡的方法、设备和系统
US20100274885A1 (en) Proactive load balancing
US20190238642A1 (en) Dynamic service discovery and control of load distribution
JP2015510201A (ja) クラウドネットワークにおける迅速な災害回復準備のための方法および装置
JP2010204876A (ja) 分散システム
JP4695705B2 (ja) クラスタシステムおよびノード切り替え方法
US10331472B2 (en) Virtual machine service availability
CN111641522A (zh) 节点切换的方法、系统和计算机设备
CN103259740A (zh) 一种负载均衡处理方法及装置
Qu et al. Mitigating impact of short‐term overload on multi‐cloud web applications through geographical load balancing
CN106936926B (zh) 访问数据节点的方法及系统
JP2018056633A (ja) クラスタシステム、サーバ、サーバの動作方法、及びプログラム
JP6117345B2 (ja) 処理性能低下を回避するメッセージシステム
CN112073373A (zh) 基于零信任网络的身份认证方法、装置和代理设备
CN111901421A (zh) 一种数据处理方法及相关设备
US9301232B2 (en) Management apparatus of controller for communication network
EP3349421A1 (en) Methods for managing a set of network resource servers and related devices
JP6233141B2 (ja) データベースシステム、データベースサーバ、データベースサーバプログラム、データベースクライアント及びデータベースクライアントプログラム
JP2004062246A (ja) 負荷分散装置
US9019964B2 (en) Methods and systems for routing application traffic
CN113595760B (zh) 一种系统故障的处理方法和装置

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20150706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150714

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160412