JP2015526815A - コンピュータ情報システム及びその動的障害回復方法 - Google Patents
コンピュータ情報システム及びその動的障害回復方法 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/142—Reconfiguring to eliminate the error
- G06F11/143—Reconfiguring to eliminate the error with loss of software functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2023—Failover techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2035—Error 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/90—Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2002—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2038—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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/3433—Recording 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/81—Threshold
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring 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号に対する優先を主張し、上記中国特許出願は、その全体が参照により援用される。
本出願は、“COMPUTER INFORMATION SYSTEM AND DYNAMIC DISASTER RECOVERY METHOD THEREFOR”と題され2012年8月7日に申請された中国特許出願第201210277988.7号に対する優先を主張し、上記中国特許出願は、その全体が参照により援用される。
Claims (19)
- 各サービスクラスタが少なくとも2つのサービスノードを含む、少なくとも2つのサービスクラスタであって、各サービスノードは、複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを含み、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するように構成される、少なくとも2つのサービスクラスタと、
サービスクラスタに関連付けられた特定のサービスカテゴリに基づいて各サービスクラスタのためのそれぞれの動的障害回復ポリシーを設定し、サービスクラスタの動作状態を監視するように構成された動的障害回復ノードと、
を含み、
サービスクラスタが正常に動作する場合、前記動的障害回復ノードは、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタにスケジュールするように構成され、サービスクラスタが異常に動作する場合、前記動的障害回復ノードは、サービス要求の処理を前記動的障害回復ポリシーに従って動的に調整するように構成される、
コンピュータ情報システム。 - プライマリ動的障害回復ノードとスタンバイ動的障害回復ノードと、をさらに含み、前記プライマリ動的障害回復ノードと前記スタンバイ動的障害回復ノードとは、互いをバックアップし、互いの間で障害回復切り替えを実行するように構成される、請求項1に記載のコンピュータ情報システム。
- 中核的ユーザ体験サービスクラスタとユーザ体験低下可能サービスクラスタとユーザ体験無視可能サービスクラスタと、をさらに含み、前記動的障害回復ノードは、下記の、
前記中核的ユーザ体験サービスクラスタが異常に動作する場合、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散する動作と、
前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散する動作と、
前記ユーザ体験無視可能サービスクラスタが異常に動作する場合、サービス要求の少なくともサブセットを落とすように前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新する動作と、
を実行するように構成される、請求項1に記載のコンピュータ情報システム。 - 前記動的障害回復ノードは、前記の動的調整を実行する前に当該コンピュータ情報システムにおける3つのサービスクラスタにおけるロードバランスを確認するようにさらに構成される、請求項3に記載のコンピュータ情報システム。
- 前記中核的ユーザ体験サービスクラスタが異常に動作する場合、前記動的障害回復ノードは、
前記ユーザ体験低下可能サービスクラスタ及び前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う能力があるかを判定し、
そうでない場合、前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新し、
なおもそうでない場合、前記ユーザ体験低下可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験低下可能サービスクラスタの動的障害回復ポリシーを更新する、
ようにさらに構成される、請求項3に記載のコンピュータ情報システム。 - 前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードは、
前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するかを判定し、
そうでない場合、当該コンピュータ情報システムがピーク動作期間内であるかを判定し、
当該コンピュータ情報システムが前記ピーク動作期間内でない場合、サービス要求を前記ユーザ体験無視可能サービスクラスタと前記中核的ユーザ体験サービスクラスタとのサービスノードの間で均等に分散し、
当該コンピュータ情報システムが前記ピーク動作期間内である場合、当該コンピュータ情報システムが前記ユーザ体験低下可能サービスクラスタに向けられたサービス要求を扱う十分な能力を有するまで、前記ユーザ体験無視可能サービスクラスタに向けられたサービス要求の少なくともサブセットを落とす、
ようにさらに構成される、請求項3に記載のコンピュータ情報システム。 - 前記3つのサービスクラスタの各々は、そのロードバランスを第1の所定時間間隔において前記動的障害回復ノードに報告するように構成され、前記動的障害回復ノードは、前記3つのサービスクラスタの各々の更新された動的障害回復ポリシーを第2の所定時間間隔において対応クライアントに報告するように構成される、請求項3に記載のコンピュータ情報システム。
- 複数のサービスノードを含むコンピュータ情報システムによって実施される動的障害回復方法であって、
前記複数のサービスノードを少なくとも2つのサービスクラスタと動的障害回復ノードとに分けるステップであり、各サービスクラスタは少なくとも2つのサービスノードを含む、ステップと、
各サービスクラスタについて、
複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを各サービスノードにインストールし、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するようにサービスノードを構成するステップと、
前記動的障害回復ノードに、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいてサービスクラスタのための動的障害回復ポリシーを設定させ、サービスクラスタの動作状態を監視させるステップと、
サービスクラスタが正常に動作する場合、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタ内のサービスノードにスケジュールするステップと、
サービスクラスタが異常に動作する場合、サービス要求の処理を前記動的障害回復ポリシーに従って動的に調整するステップと、
を含む方法。 - 前記複数のサービスノードは、3つのサービスクラスタ、中核的ユーザ体験サービスクラスタとユーザ体験低下可能サービスクラスタとユーザ体験無視可能サービスクラスタとに分けられ、サービス要求の処理の前記の動的調整は、
前記中核的ユーザ体験サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させるステップと、
前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させるステップと、
前記ユーザ体験無視可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを落とすように前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新させるステップと、
をさらに含む、請求項8に記載の方法。 - 前記動的障害回復ノードは、前記の動的調整を実行する前に前記コンピュータ情報システムにおける3つのサービスクラスタにおけるロードバランスを確認するように構成される、請求項9に記載の方法。
- 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させるステップは、
前記ユーザ体験低下可能サービスクラスタ及び前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う能力があるかを判定するステップと、
そうでない場合、前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新するステップと、
なおもそうでない場合、前記ユーザ体験低下可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験低下可能サービスクラスタの動的障害回復ポリシーを更新するステップと、
をさらに含む、請求項9に記載の方法。 - 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させるステップは、
前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するかを判定するステップと、
そうでない場合、前記コンピュータ情報システムがピーク動作期間内であるかを判定するステップと、
前記コンピュータ情報システムが前記ピーク動作期間内でない場合、前記動的障害回復ノードに、サービス要求を前記ユーザ体験無視可能サービスクラスタと前記中核的ユーザ体験サービスクラスタとのサービスノードの間で均等に分散させるステップと、
前記コンピュータ情報システムが前記ピーク動作期間内である場合、前記動的障害回復ノードに、前記コンピュータ情報システムが前記ユーザ体験低下可能サービスクラスタに向けられたサービス要求を扱う十分な能力を有するまで、前記ユーザ体験無視可能サービスクラスタに向けられたサービス要求の少なくともサブセットを落とさせるステップと、
をさらに含む、請求項9に記載の方法。 - 前記3つのサービスクラスタの各々は、そのロードバランスを第1の所定時間間隔において前記動的障害回復ノードに報告するように構成され、前記動的障害回復ノードは、前記3つのサービスクラスタの各々の更新された動的障害回復ポリシーを第2の所定時間間隔において対応クライアントに報告するように構成される、請求項9に記載の方法。
- 複数のサービスノードを含むコンピュータ情報システムに関連して使用される非一時的コンピュータ可読媒体であって、当該非一時的コンピュータ可読媒体は前記コンピュータ情報システムにより実行される1又は複数のプログラムを記憶し、前記1又は複数のプログラムは、
前記複数のサービスノードを少なくとも2つのサービスクラスタと動的障害回復ノードとに分ける命令であり、各サービスクラスタは少なくとも2つのサービスノードを含む、命令と、
各サービスクラスタについて、
複数のサービスカテゴリに対応するサービス要求を処理するサービス処理ロジックを各サービスノードにインストールし、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求だけを処理するようにサービスノードを構成する命令と、
前記動的障害回復ノードに、サービスクラスタに関連付けられた特定のサービスカテゴリに基づいてサービスクラスタのための動的障害回復ポリシーを設定させ、サービスクラスタの動作状態を監視させる命令と、
サービスクラスタが正常に動作する場合、サービスクラスタに関連付けられた特定のサービスカテゴリのサービス要求を該サービスクラスタ内のサービスノードにスケジュールする命令と、
サービスクラスタが異常に動作する場合、サービス要求の処理を前記動的障害回復ポリシーに従って動的に調整する命令と、
を含む、非一時的コンピュータ可読媒体。 - 前記複数のサービスノードは、3つのサービスクラスタ、中核的ユーザ体験サービスクラスタとユーザ体験低下可能サービスクラスタとユーザ体験無視可能サービスクラスタとに分けられ、サービス要求の処理の前記の動的調整は、
前記中核的ユーザ体験サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させる命令と、
前記ユーザ体験低下可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させる命令と、
前記ユーザ体験無視可能サービスクラスタが異常に動作する場合、前記動的障害回復ノードに、サービス要求の少なくともサブセットを落とすように前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新させる命令と、
をさらに含む、請求項14に記載の非一時的コンピュータ可読媒体。 - 前記動的障害回復ノードは、前記の動的調整を実行する前に前記コンピュータ情報システムにおける3つのサービスクラスタにおけるロードバランスを確認するように構成される、請求項15に記載の非一時的コンピュータ可読媒体。
- 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験低下可能サービスクラスタと前記ユーザ体験無視可能サービスクラスタとのサービスノードの間で均等に分散させる命令は、
前記ユーザ体験低下可能サービスクラスタ及び前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う能力があるかを判定する命令と、
そうでない場合、前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験無視可能サービスクラスタの動的障害回復ポリシーを更新する命令と、
なおもそうでない場合、前記ユーザ体験低下可能サービスクラスタがサービス要求を扱う十分な能力を有するまで前記ユーザ体験低下可能サービスクラスタの動的障害回復ポリシーを更新する命令と、
をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。 - 前記動的障害回復ノードに、サービス要求の少なくともサブセットを前記ユーザ体験無視可能サービスクラスタのサービスノードの間で均等に分散させる命令は、
前記ユーザ体験無視可能サービスクラスタがサービス要求を扱う十分な能力を有するかを判定する命令と、
そうでない場合、前記コンピュータ情報システムがピーク動作期間内であるかを判定する命令と、
前記コンピュータ情報システムが前記ピーク動作期間内でない場合、前記動的障害回復ノードに、サービス要求を前記ユーザ体験無視可能サービスクラスタと前記中核的ユーザ体験サービスクラスタとのサービスノードの間で均等に分散させる命令と、
前記コンピュータ情報システムが前記ピーク動作期間内である場合、前記動的障害回復ノードに、前記コンピュータ情報システムが前記ユーザ体験低下可能サービスクラスタに向けられたサービス要求を扱う十分な能力を有するまで、前記ユーザ体験無視可能サービスクラスタに向けられたサービス要求の少なくともサブセットを落とさせる命令と、
をさらに含む、請求項15に記載の非一時的コンピュータ可読媒体。 - 前記3つのサービスクラスタの各々は、そのロードバランスを第1の所定時間間隔において前記動的障害回復ノードに報告するように構成され、前記動的障害回復ノードは、前記3つのサービスクラスタの各々の更新された動的障害回復ポリシーを第2の所定時間間隔において対応クライアントに報告するように構成される、請求項15に記載の非一時的コンピュータ可読媒体。
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)
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)
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)
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)
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 | 胡建鹤 | 基于云计算架构的网络服务系统 |
-
2012
- 2012-08-07 CN CN201210277988.7A patent/CN103580902B/zh active Active
-
2013
- 2013-07-30 WO PCT/CN2013/080413 patent/WO2014023174A1/en active Application Filing
- 2013-07-30 EP EP13828379.1A patent/EP2883329B1/en active Active
- 2013-07-30 JP JP2015525717A patent/JP2015526815A/ja active Pending
- 2013-07-30 KR KR1020157005435A patent/KR20150032346A/ko not_active Application Discontinuation
- 2013-09-27 US US14/040,295 patent/US9262287B2/en active Active
-
2015
- 2015-01-27 PH PH12015500177A patent/PH12015500177B1/en unknown
- 2015-02-05 CL CL2015000282A patent/CL2015000282A1/es unknown
Patent Citations (4)
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)
Title |
---|
福元 健 他: "将来のネットワーク制御ノード実現に向けた取り組み", NTT技術ジャーナル, JPN6015027939, March 2012 (2012-03-01), pages 23 - 27, ISSN: 0003113964 * |
Cited By (2)
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 |