JP2010526377A - クラスタデータ処理のための方法及び装置 - Google Patents

クラスタデータ処理のための方法及び装置 Download PDF

Info

Publication number
JP2010526377A
JP2010526377A JP2010506526A JP2010506526A JP2010526377A JP 2010526377 A JP2010526377 A JP 2010526377A JP 2010506526 A JP2010506526 A JP 2010506526A JP 2010506526 A JP2010506526 A JP 2010506526A JP 2010526377 A JP2010526377 A JP 2010526377A
Authority
JP
Japan
Prior art keywords
data
server
cluster
servers
load balancing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010506526A
Other languages
English (en)
Other versions
JP5645216B2 (ja
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 JP2010526377A publication Critical patent/JP2010526377A/ja
Application granted granted Critical
Publication of JP5645216B2 publication Critical patent/JP5645216B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Abstract

クラスタ内のサーバと外部コンピュータとの間の連続的ネットワーク接続を必要としない、一意の識別子制御に基づく、クラスタデータ処理方法及びシステム。クラスタは、制御識別子記録を含む第1のデータを外部コンピュータへ送信する。制御識別子記録は、一意の識別子及び制御情報を含む。クラスタの負荷バランシングデバイスは、外部コンピュータから、第1のデータの制御識別子記録に対応する制御識別子記録を含む、第2のデータを受信する。クラスタは、第2のデータの制御識別子記録内の制御情報に従って、第2のデータをルーティングする。開示される方法及びシステムは、サーバリソースの過負荷の課題を回避し、既存の技術において、クラスタと外部サーバ(190)との間で維持されなければならない連続的ネットワーク接続によって生じる低性能を防止するのに役立つことができる。

Description

本発明は、データ処理技術の分野に関し、特に、クラスタに基づくデータ処理方法システムに関する。本願は、2007年4月25日出願の中国特許出願第200710102649.4号「METHOD AND APPARATUS FOR CLUSTER DATA PROCESSING(クラスタデータ処理のための方法及び装置)」の優先権を主張するものである。
コンピュータ及びネットワーク技術の継続的な発展に伴って、サーバの信頼性に対してますます高まりつつある処理需要及び要件は、単に、サーバのハードウェア性能を向上させるだけでは、もはや充足させることは不可能である。このような状況下、クラスタコンピューティング技術は、次第に、広く注目を集め、使用されるようになってきている。クラスタとは、多くの集積コンピューティングデバイス(パーソナルコンピュータ及びサーバ等)によって構成され、統合コンピューティングリソースとして使用される、ある種の並列又は分散システムを指す。クラスタ内のサーバのうちの1つが機能しない場合、同一クラスタ内の他のサーバが、そのサービス及びジョブを引き継ぎ、高信頼性ネットワークサービスを提供することができる。さらに、クラスタコンピューティング技術を使用することによって、もともと単一サーバによって担われていた負荷を、同一クラスタ内の他のサーバによって共有することができる。これによって、システムの処理能力が、大幅に向上する。
図1は、クラスタを使用して、データ処理を実行する共通システムの構造図を示す。図1のシステムは、クラスタ100と、外部サーバ190とを有する。クラスタ100は、サーバa0、a1、…ai、…及びanと、負荷バランシングデバイス110とによって形成される。外部処理要求を受信後、負荷バランシングデバイス110は、システムの物理的見地に基づくあるストラテジーを使用して、クラスタ100からサーバを選択し、外部にサービスを提供する。選択は、例えば、クラスタ100内のサーバの現在のネットワーク接続に基づくことができる。通常の状況下では、クラスタ内の各サーバは、類似サービスを提供する。しかしながら、時として、異なるサーバが異なる役割を担い、異なるサービスを提供する場合がある。例えば、サーバa0は、主要顧客のデータを取り扱うことができる一方で、サーバa1及びa2は、一般顧客のデータに対応することができる。この場合、サーバa0は、一意の識別子を含む1つ又は複数セットのデータを外部サーバ190へ送信すると、外部サーバ190は、同一の一意の識別子を含む処理結果のデータを返送し、返送されたデータが同一サーバa0によってさらに処理されることを要求する。
上述のプロセスにおいて、処理されたデータを関連サーバa0へ正確に返送するために、既存の技術における常套手段は、外部サーバ190がクラスタサーバa0からデータを受信後、外部サーバ190とクラスタサーバa0との間のネットワーク接続を維持することである。処理が完了すると、次いで、サーバ190は、維持されるネットワークリンクを通して、直接、サーバa0に処理結果を返送することができる。しかしながら、これによって、ネットワーク接続の負荷が外部サーバ190にかかる。この問題は、外部サーバ190によって送達される多くの標的が存在する場合、より顕著となる。過剰な数のネットワーク接続は、外部サーバ190のリソースを大幅に消費し、その処理能力を低減させる。
したがって、処理されたデータを外部サーバ190からクラスタ内の関連サーバへ正確に伝送するのに役立ち得る新しい設計が望ましく、これは、クラスタコンピューティング技術の分野において一般的に直面する継続的課題である。
本開示は、サーバリソースにかかる重い負荷の課題を解決し、かつ既存の技術においてデータ伝送のための外部サーバとクラスタとの間のネットワーク接続を継続的に維持することによって生じる低サーバ処理性能を防止するための、クラスタに基づくデータ処理方法について説明する。開示されるクラスタデータ処理方法及びシステムは、クラスタ内のサーバと外部コンピュータとの間の連続的ネットワーク接続を必要としない、一意の識別子制御に基づく。
本開示の一態様は、少なくとも2つのサーバを含むクラスタを使用するクラスタデータ処理方法である。本方法によると、クラスタは、第1の制御識別子記録を含む第1のデータを外部コンピューティングデバイス(外部サーバ等)へ送信し、続いて、外部コンピューティングデバイスから第2のデータをクラスタにおいて受信する。第2のデータは、第1のデータの処理結果であって、第1のデータの第1の制御識別子記録に対応する第2の制御識別子記録を含む。第1の制御識別子記録及び第2の制御識別子記録は各々、互いに対応する一意の識別子と、互いに対応する制御情報とを有する。クラスタは、次いで、第2のデータの第2の制御識別子記録に従って、第2のデータをルーティングする。
第2の制御識別子記録と第1の制御識別子記録との間の対応によって、クラスタは、第2のデータと第1のデータとの間の関係を識別し、第2のデータの適切なルーティングのために、第2のデータに含まれる制御情報を使用することが可能となる。一実施形態では、第2の制御識別子記録の一意の識別子は、第1の制御識別子記録の一意の識別子と等しい。さらに、第2の制御識別子記録の制御情報もまた、第1の制御識別子記録の制御情報と等しい場合がある。
本方法の一実施形態では、クラスタは、負荷バランシングデバイスを有し、第2のデータは、ルーティングされる前に、負荷バランシングデバイスによって受信される。負荷バランシングデバイスは、別個のデバイスであってもよく、又はクラスタ内のサーバのうちの1つに配置されてもよい。
最適には、外部サーバからの第2のデータの受信に応じて、負荷バランシングデバイスは、既定の負荷バランシングルールに従って、クラスタ内の受信サーバへ第2のデータを送信することもできる。受信サーバは、次いで、第2のデータに含まれる制御情報に従って、第2のデータをルーティングする。別の実施形態では、受信サーバは、ルーティングミドルウェアへ受信した第2のデータを送信し、このミドルウェアは、続いて、第2のデータに含まれる制御情報に従って、第2のデータをルーティングすることができる。
ルーティングを制御するため、制御情報は、サーバ位置情報を含み、第1のデータによって指定されるように、クラスタ内の所望のサーバを識別することができる。この場合、制御情報に従って、クラスタ内で第2のデータをルーティングするステップは、サーバ位置情報に従って選択される受信サーバへ第2のデータを送信するステップを含むことができる。一実施形態では、サーバ位置情報に従って選択される受信サーバが機能していない場合、既定のルーティングルールに従って、代替受信サーバがクラスタから選択され、次いで、第2のデータは代替受信サーバへ伝送される。
本開示の別の態様は、少なくとも2つのサーバと、負荷バランシングデバイスと、ルーティングユニットとを含む、クラスタデータ処理システムである。各サーバは、第1の制御識別子記録を含む第1のデータを外部コンピューティングデバイスへ送信するように適合される送信ユニットを有する。負荷バランシングデバイスは、外部サーバから、第2のデータを受信するように適合され、第2のデータは、第1のデータの第1の制御識別子記録に対応する第2の制御識別子記録を含む。ルーティングユニットは、第2のデータに含まれる第2の制御識別子記録に従って、第2のデータをルーティングするように適合される。
ルーティングユニットは、クラスタのサーバのうちの1つ以上に配置されてもよい。第2のデータの受信に応じて、負荷バランシングデバイスは、既定の負荷バランシングルールに従って、ルーティングユニットをホスティングするサーバのうちの1つへ第2のデータを伝送する。ホスティングサーバは、負荷バランシングデバイスから、第2のデータを受信するために使用される受信ユニットを有する。ホスティングサーバ内のルーティングユニットは、第2のデータに含まれる制御情報に従って、第2のデータをルーティングする。
代替として、ルーティングユニットは、独立型デバイスであってもよい。負荷バランシングデバイスは、既定の負荷バランシングルールに従って、クラスタのサーバへ第2のデータを伝送し、次いで、サーバはルーティングユニットへ第2のデータを送信し、このルーティングユニットは、続いて、第2のデータに含まれる制御情報に従って、第2のデータをルーティングする。
最適には、ルーティングユニットは、故障検出ユニットをさらに含むことができる。故障検出ユニットは、サーバ位置情報に従って選択されるサーバが、適切に機能しているかどうか検出するために使用される。適切に機能していない場合、代替サーバが、既定のルーティングルールに基づいて選択され、第2のデータが、代替サーバへ伝送される。
既存の技術と比較して、本明細書で開示されるいくつかの例示的な実施形態は、潜在的に以下の効果を有することができる。一意の識別子は、データ伝送中に変更又は修正されないという利点を利用して、開示される方法及びシステムは、制御情報を追加することによって、一意の識別子を制御識別子記録に拡張する。外部からの第2のデータの受信に応じて、本方法及びシステムは、第2のデータ内の制御識別子記録の制御情報に従って、クラスタ内の第2のデータのルーティングを実現する。これによって、クラスタ内のサーバと外部サーバとの間のネットワーク接続が維持されていなくても、正しいサーバによって、第2のデータを処理させることができる。これは、サーバのリソースにかかる重い負荷の課題を解決し、既存の技術において、データ伝送のために、外部サーバとクラスタサーバとの間のネットワーク接続を連続的に維持することによるサーバの処理性能の低減を防止するのに役立つ。本明細書で開示される概念は、既存の技術におけるデータ伝送の際の一意の識別子の使用に関する一般的理解から脱却するものである。開示される方法及びシステムは、既存のデータ構造の何らかの変更、ならびに外部サーバのプログラム及びシステムの何らかの修正を必要とせずに、クラスタと外部サーバとの間の処理のアップグレードを達成する。
本発明の概要は、発明を実施するための形態においてさらに後述される、選択された概念を簡略化した形態で紹介するために提供される。本発明の概要は、請求される主題の重要な特徴又は不可欠な特徴を識別すること、又は請求される主題の範囲を判断する補助として使用されることを意図していない。
発明を実施するための形態は、付随の図面を参照して記述される。図面中、参照番号の一番左の桁の数字は、参照番号が初出である図を識別する。異なる図における同一参照番号の使用は、類似又は同一項目を示す。
データ処理を実行するために、クラスタを使用する共通システムの構造図である。 本開示による、方法の例示的な実施形態を示すフローチャートである。 本開示による、アプリケーション環境を伴う方法の例示的な実施形態を示すフローチャートである。 本開示による、例示的なクラスタデータ処理システムを示す図である。 本開示による、別の例示的なクラスタデータ処理システムを示す図である。
既存のクラスタコンピューティング技術では、クラスタ100内のあるサーバaiによってもともと処理されたデータが、外部サーバ190によってデータが処理された後、同一サーバaiによって取り扱われることを可能にするために、aiと外部サーバ190との間の連続的ネットワーク接続は、データ伝送のために維持される必要がある。この実施は、サーバのリソースを占有し、実質的にクラスタサーバa0、a1、…ai、…及びanと外部サーバ190との両方の処理性能を低減させる。
以下、初めに、クラスタデータ処理方法及びシステムが、共通クラスタシステムの構造図である図1をここでも参照して例示される。開示されるクラスタデータ処理方法及びシステムと既存のクラスタコンピューティング技術との間の差異は、後述される実装にある。
本開示は、クラスタ100から外部サーバ190へ送信される一意の識別子を設定する新しい方法を記述する。本方法は、一意の識別子に制御情報を追加し、一意の識別子を制御識別子記録に拡張する。制御情報は、各データ又は一式の複数データの特定の要件に従って、クラスタサーバ(a0、a1、…ai、…又はan)によって生成されるそのデータ又は一式の複数データ内に指定される。制御識別子記録は、クラスタサーバによって送信されるオリジナルデータを解析し、その識別子及び制御特性を維持する。原則として、識別子及び制御特性は、外部サーバ190によって処理されたデータに見られる制御識別子記録と、クラスタサーバa0、a1、…ai、…又はanによって送信されたオリジナルデータ内の制御識別子記録との間に認識可能な対応がある限り、維持することができる。しかしながら、これを実装するための直接的方法の1つは、制御識別子記録を変更しないまま保持することである。すなわち、処理されたデータ内の制御識別子記録は、クラスタサーバによって送信されたオリジナルデータに見られる制御識別子記録と同一である。本開示による制御識別子記録は、一意の識別子及び制御情報の両方を有するため、制御識別子記録が変更されないことは、一意の識別子及び制御情報の両方が変更されないまま保持されることを意味する。本開示では、例示的な実施形態を、制御識別子記録が変更されずに使用されるという前提で例示する。
外部サーバ190によってデータが処理されるとき、制御識別子記録が変更されないままであるため、クラスタ100は、制御識別子記録内の制御情報に従って、外部サーバ190から受信したデータをルーティングすることができる。これによって、データは、クラスタ内の関連(又は指定)サーバによって処理され、従ってクラスタ100と外部サーバ190との間のデータ処理を改善することが可能となる。
クラスタデータ処理方法及びシステムを、以下の図面及び例示的な実施形態を使用して、さらに詳細に説明する。
図2は、本開示による、方法の例示的実施形態を示すフローチャートである。例示的な実施形態は、以下のように、図2を参照して詳述される。本記述では、プロセスが記述される順番は、制限として解釈されることを意図しておらず、任意の数の記述されるプロセスブロックを任意の順番で組み合わせて、本方法又は代替方法を実装することができる。
ブロック210では、クラスタ100内のサーバは、既定のルールに従って、制御識別子記録を生成する。既存の技術におけるように、クラスタから外部サーバ190へ送信されるデータの各セットは、他のデータから自身を区別するための一意の識別子を含む。一実施形態では、この一意の識別子は、データが外部サーバ190によって処理され、クラスタ100に返送される間を通して、変更されないままである。一意の識別子の本特徴を利用することによって、本開示は、制御情報を追加し、一意の識別子を制御識別子記録に拡張する。具体的には、例示的な一実施形態では、制御識別子記録は、一意の識別子及び制御情報を含む。開示される方法を実施する際に、一意の識別子を生成するルールは、データ識別子が使用される限り、必要性に基づいて、任意の好適な方法で、ユーザによって定義することができる。制御情報は、続いて、クラスタ190及び/又はクラスタ100において、データがどのように処理されるかを制御するために使用される。例えば、制御情報は、データを処理するために使用するのが望ましいクラスタ内のサーバの位置情報を含むことができる。
しかしながら、制御情報内にサーバ位置情報を含めるステップは、制御識別子記録に制御情報を実装するための例示的な方法の1つでしかないことに留意されたい。当業者は、各自のサービスの必要性に応じて、制御情報内に他のコンテンツを設定することができる。例えば、制御情報は、データ処理のために使用されるプログラムのバージョンに関連する情報を有することができる。いくつかのクラスタ内の異なるサーバによって実行されるプログラムのバージョンは、異なってもよい。この場合、データ処理は、一定の互換性のあるプログラム又は関連バージョンのプログラムを有するサーバによって実行されることが必要とされる場合がある。したがって、データのために必要とされるプログラムバージョンを含む制御情報を設定することができる。別の実施例では、データが、指定の時間内にサーバによって処理されなければならない場合、制御情報は、データを処理するために選択されるサーバによって充足される必要がある処理時間を含むように設定することができる。
ブロック220では、第1のデータを処理したサーバは、外部サーバ190へ第1のデータを送信する。コンピューティングデータ自体に加え、第1のデータは、ブロック210で生成された制御識別子記録を含む。外部サーバ190によって処理されるコンピューティングデータ及び制御識別子記録は結合され、第1のデータを形成し、外部サーバ190へ送信される。
好ましい一実施形態では、一意の識別子を制御識別子記録に拡張する際、開示される方法は、一意の識別子のオリジナルデータ構造を変更しない。外部サーバ190に送信される第1のデータに関し、そのデータ構造及びインターフェースルールは、その意味論の適合性、一貫性、及び完全性が維持されるように、既存の技術において見られるものから変更されない。さらに、外部サーバ190のもともとの処理ルールを修正する必要がない。クラスタ100内のデータの制御要件が変化する場合、制御識別子記録内の制御情報のみ、変化に適合させるために変更する必要がある。これは、本開示によるクラスタデータ処理システムを変更することによって生じるコストを大幅に削減する。
ブロック230では、クラスタ100は、外部サーバ190から第2のデータを受信する。第2のデータは、外部サーバ190によって第1のデータを処理することによって得られ、外部サーバ190からクラスタ100へ返送される。第2のデータは、第1のデータの制御識別子記録に基づき、それに対応する制御識別子記録を含む。一実施形態では、第2のデータ内の制御識別子記録は、第1のデータの制御識別子記録と等しい。例示目的のため、外部サーバ190は、クラスタ100とデータ相互作用を実行するように選択されるデバイス又はシステムである。しかしながら、別個のコンピューティングデバイスを使用して、外部サーバ190によって生成される第2のデータをクラスタ100に伝えてもよいことが考えられる。また、外部サーバ190は、クラスタ自体であってもよいことを理解されたい。開示される方法は、外部サーバ190の形態について、もしくは外部サーバ190、あるいは任意の他の外部デバイス又はシステムによって、第1のデータを処理する方法について、何ら制限を有しない。
クラスタ100は、クラスタ100及びそのサーバの物理的見地に基づくある選択ストラテジーに従って、次のサービスを提供する、クラスタ100内のサーバを選択するために使用される負荷バランシングデバイス110をさらに有する。選択ストラテジーは、例えば、ランダム選択、又はサーバの現在のネットワーク接続に基づく選択等とすることができる。負荷バランシングデバイス110は、サーバから離れた特殊ハードウェア、又はクラスタ100内のサーバのうちの1つに配置されるデバイスであってもよい。本明細書で開示される方法を実装する際に、特殊ハードウェアを使用して、負荷バランシングを実行するかどうかは、実装者の自由裁量によって行われる。
ブロック240では、クラスタ100は、第2のデータから、その中に含まれる制御情報を含む制御識別子記録を解析する。一実施形態では、例えば、第2のデータを受信後、負荷バランシングデバイス110は、クラスタ100内のサーバを選択し、選択されたサーバへ第2のデータを送信する。第2のデータを受信したサーバは、既定のルールに従って、制御識別子記録から、一意の識別子及び制御情報を解析する。
ブロック250では、クラスタ100は、第2のデータから、含まれる制御識別子記録内の制御情報に設定されるルールに従って、第2のデータをルーティングする。再ルーティングは、第2のデータの制御識別子記録を解析したクラスタ内の同一サーバによって実行され得る。最適には、制御情報は、クラスタ100内のサーバの位置を記述するサーバ位置情報を有することができる。制御情報内のサーバ位置情報に従って、好適なサーバが選択され、次いで、第2のデータが、選択されたサーバへ送信される。本明細書に記述される方法を実装する際、ルールに従って第2のデータを適切にルーティングするために、自分自身の実際的な必要性に従って、制御情報のコンテンツ及びルールを設定することができることを理解されたい。例えば、サーバによって提供されるサービスのバージョン及び/又は必要処理時間に従って、サーバを選択するためのルールを設定することができる。本開示は、制御情報のコンテンツ及びルールの設定方法について、何ら制限を課さない。
クラスタ100は、選択に応じて、ルーティングユニットを使用して、第2のデータをクラスタ内の適切なサーバにルーティングすることができる。ルーティングユニットは、サーバから離れた独立型ハードウェア、又はクラスタ内のサーバのうちの1つ以上に配置されるデバイスのいずれかとすることができる。例示的な本実施形態では、クラスタ内の任意のサーバを、第2のデータをルーティングするために使用することができる。外部サーバ190からの第2のデータの受信に応じて、負荷バランシングデバイス110は、クラスタ内のサーバをランダムに選択し、ルーティングされるサーバへ第2のデータを送信することができる。
ブロック260では、故障保護のための任意選択のステップが実行される。制御情報内のサーバ位置情報に従って、クラスタ100は、(例えば、負荷バランシングデバイス110を使用して)選択されたサーバが機能しているかどうかを判断する。選択されたサーバが機能していない場合、既定のルール及びストラテジーに基づいて、代替サーバが選択され、次いで、処理のための代替サーバへ第2のデータが送信される。
さらに、一意の識別子及び制御情報に加えて、特定のサービスの必要性に従って、制御識別子記録に設定される他のコンテンツが存在し得る。本開示は、制御識別子記録内でそのようなコンテンツを設定するために、何ら制限を有していない。例えば、制御識別子記録内のデータを暗号化し、かつそれに署名し、データの安全性を向上することができる。
制御識別子記録クラスタの例示的な使用は、後述される。実施例は、制御識別子記録が発注情報を含む商取引において見られる。
クラスタ100は、データグラムをサーバ190へ送信し、アカウントID「customerAccountId」を有するユーザアカウントから$100を引き落とすようにサーバ190に要求する。データグラムは、以下の形態とすることができる。
<orderId>12345876298708765635553223</orderId>
<customerAccountId>87634293882173710987</customerAccountId>
<requesterId>0987658932</requesterId >
<product>supermarket shopping</product>
<price> 100.00</price>
<createDate>2007−04−19 12:01 </createDate>
上述の実施例では、「orderId」に関する第1行目は、本開示に記述される方法で使用可能な制御識別子記録である。サーバ190によるデータグラムのコンテンツの修正又は否認を回避するために、データグラムのコンテンツは、暗号化されたコンテンツの要約(例えば、ハッシュ和又はハッシュ値)を得るために、既定のアルゴリズムに基づいて暗号化されてもよく、次いで、この要約は、制御識別子記録に入れられる。本実施例では、orderId(8708765635553223)の最後の16桁は、現在のデータグラムのコンテンツの要約である。トランザクションにエラーが生じていないかどうかを確かめるために、サーバ190によって受信されるデータグラムのコンテンツは、テスト要約を得るためのものと同一のアルゴリズムを使用して暗号化される。テスト要約は、制御識別子記録内のもともとの要約と比較される。それらが同一ではない場合、データグラムは、サーバ190へ送信された後に修正されていると判断される。したがって、暗号化によって、データの安全性が改善される。
本開示の第2の例示的な実施形態では、第2のデータの受信に応じて、負荷バランシングデバイスによって選択されるサーバは、第2のデータをルーティングミドルウェアへ伝送する。次いで、ルーティングミドルウェアは、第2のデータに含まれる制御情報に従って、本データをルーティングする。ルーティングミドルウェアは、独立サーバ、クラスタ内の専用サーバ、又はクラスタ内のサーバのうちの1つとすることができる。第1の例示的な実施形態と比較して、第2の例示的な実施形態におけるクラスタ内のサーバは、データルーティングに関与しない。代わりに、データルーティングは、ルーティングミドルウェアによって実行される。したがって、各サーバのルーティングサービスの保守が回避されるため、本実施形態は、保守の複雑性を低減することができる。第2の例示的な実施形態のもう1つの態様は、第1の例示的な実施形態のものに類似しているため、ここでは繰り返さない。
さらに別の例示的な実施形態では、負荷バランシングデバイス及びルーティングミドルウェアの機能性は、単一集積デバイス上で実現することができる。この場合、外部サーバ190から返送されるデータの受信に応じて、集積デバイスは、負荷バランシングを考慮し、全体として、データの関連制御情報のルールを制御し、データの処理を完了するためのクラスタ内のサーバを選択することができる。上述の例示的な実施形態のさらなる詳細は、図4−5を参照して後述される。
クラスタデータ処理方法は、上述されている。以下では、アプリケーション環境を伴う実践的実施例を使用して、本方法の実装についてさらに説明する。
図3は、本開示によるアプリケーション環境を伴う本方法の例示的な実施形態を示すフローチャートである。ここに例示される実践的実施例では、クラスタ100は、支払要求をサーバ190へ送信する。本要求の受信に応じて、サーバ190は、支払要求に指定される発注番号に従って、支払を完了し、支払結果を返送する。詳細は、以下に記述される。
ブロック301aでは、クラスタ100内のサーバ(例えば、サーバa1)は、外部サーバ190への接続要求を送信する。外部サーバ190が応答する場合、ネットワーク接続が、サーバa1とサーバ190との間で確立される。続いて、サーバa1は、要求データグラムをサーバ190へ送信する。
サーバa1からサーバ190へ送信される要求データグラムのコンテンツを以下に示す。
<orderId>A111123</orderId>
<customerAccountId>87634293882173710987</customerAccountId>
<requesterId>0987658932</requesterId>
<product>supermarket shopping</product>
<price> 100.00</price>
<createDate>2007−04−19 12:01 </createDate>
上述の要求データグラムでは、<orderId>A111123</orderId>は、現在のデータグラムの制御識別子記録である。A1は、発注を処理したサーバ(a1)名を識別する制御情報であって、11123は、発注番号を指定する発注の一意の識別子である。
ブロック301bでは、サーバa1は、データ伝送完了後、サーバ190とのネットワーク接続を中断する。
ブロック302では、外部サーバ190は、受信したデータグラムを処理し、処理結果を生成する。本実施例では、外部サーバ190は、顧客アカウント87634293882173710987から$100.00の支払を行うことを要求され、次いで、処理結果を生成する。処理結果のフォーマットは、以下のようになる。
<orderId>A111123</orderId>
<result>payment successful</result>
上述のように、処理結果は、クラスタサーバa1から受信したもともとの要求データグラムに含まれる制御識別子記録と等しい制御識別子記録<orderId>A111123</orderId>を含む。外部サーバ190は、クラスタ100へ返送される処理結果を準備する。制御識別子記録<orderId>A111123</orderId>は、サーバ190の返送されたメッセージ内に含まれる。
ブロック303では、外部サーバ190は、負荷バランシングデバイス110に新しいネットワーク接続を要求し、ネットワーク接続の確立に応じて、負荷バランシングデバイス110へ処理結果を返送する。データ伝送が完了後、サーバ190は、負荷バランシングデバイス110とのネットワーク接続を中断する。
ブロック304では、サーバ190からの処理結果データの受信に応じて、負荷バランシングデバイス110は、クラスタ100内のルーティングサーバaiをランダムに選択し、外部サーバ190から、選択されたルーティングサーバaiへ受信したデータを伝送する。
ブロック305では、外部サーバ190からデータを受信後、選択されたルーティングサーバaiは、ルーティングプログラムを起動し、制御識別子記録(本実施例では、<orderId>A111123</orderId>の値を有する)を解析し、標的サーバの位置情報を得る。本実施例では、サーバ位置情報の値は、サーバa1を表すA1であって、サーバa1がデータのさらなる処理のための所望の標的サーバであることを意味する。次いで、ルーティングサーバaiは、外部サーバ190から受信したデータをサーバa1へ送信し、さらに処理する。
クラスタデータ処理方法を、上記の例示的な実施形態を使用して記述した。本開示の別の態様は、クラスタデータ処理システムであって、そのさらなる詳細を後述する。
図4は、本開示による、例示的なクラスタデータ処理システムを示す。クラスタデータ処理システム400は、負荷バランシングデバイス410と、そのうちの1つのみが、クラスタ内の全サーバ420を表すものとして具体的に例示されるサーバ420とを含む。
各サーバ420は、制御識別子記録を含む第1のデータを外部コンピューティングデバイス(例えば、外部サーバ190)へ送信するために使用される送信ユニット421を有する。制御識別子記録は、第1のデータに対応する一意の識別子及び制御情報を含む。
負荷バランシングデバイス410は、外部コンピューティングデバイスから第2のデータを受信する。第2のデータは、第1のデータと同一の制御識別子記録及び対応する制御情報を含む。
また、各サーバ420は、負荷バランシングデバイス410から送信される第2のデータを受信するために使用される受信ユニット422を有する。各サーバ420は、第2のデータに含まれる制御情報に従って、サーバ420の中から適切な標的サーバへ第2のデータをルーティングするために使用されるルーティングユニット423をさらに有する。
送信ユニット421によって送信される第1のデータに関して、制御識別子記録内の制御情報は、第1のデータを生成した特定のサーバ420の位置情報を含むことができる。また、負荷バランシングデバイス410によって外部から受信される第2のデータは、同一制御識別子記録を含む。また、対応して、本制御識別子記録の制御情報もまた、第1のデータを生成した特定のサーバ420の位置情報を含む。
負荷バランシングデバイス410が、第2のデータを送信する方法に応じて、負荷バランシングデバイス410から第2のデータを受信するサーバは、第1のデータを最初に生成したサーバと同一でなくてもよい。図4に示される例示的な実施形態では、受信サーバは、一実施例では第1のデータを最初に生成したサーバである、所望の標的サーバへ第2のデータをさらにルーティングするように適合される。具体的には、サーバ420が、負荷バランシングデバイス410から第2のデータを受信後、ルーティングユニット423は、制御識別子記録に含まれる制御情報に指定されるサーバ位置情報に対応するサーバへ、第2のデータを伝送する。
さらに、ルーティングユニット423はまた、故障検出ユニット4231を含むことができる。故障検出ユニット4231は、それぞれのサーバ420が機能しているかどうかを確認するために使用される。機能していない場合、サーバ420の中から代替サーバが、既定のルーティングルールに従って選択され、第2のデータは、処理のために該代替サーバへ伝送される。
図5は、本開示による、別の例示的なクラスタデータ処理システムを示す。クラスタデータ処理システム500は、負荷バランシングデバイス510、サーバ520、及びルーティングミドルウェア530を含む。サーバ520の1つのみが、クラスタ内の全サーバ520を表すものとして具体的に例示される。
クラスタデータ処理システム500は、図4に示されるクラスタデータ処理システム400の代替設計である。クラスタデータ処理システム500は、ルーティングユニットの構成である一態様において、クラスタデータ処理システム400と異なる。クラスタデータ処理システム500内のサーバに各々配置される複数のルーティングユニットを有する代わりに、別個のルーティングデバイス530がクラスタ500内に設定され、同一クラスタ500内の各サーバ520と接続する。負荷バランシングデバイス510は、ルーティングユニット530へ第2のデータを送信し、次いで、制御情報に従って、所望の標的サーバ520へ第2のデータを伝送する。ルーティングデバイス530は、独立型ルーティングミドルウェアとすることができる。
代替として、ルーティングデバイス530は、サーバ520、あるいはホスティングサーバ内に含まれるものの中から1つ又は少数のホスティングサーバにのみ接続されるルーティングユニットであってもよい。これは、1つ又はいくつかのサーバ520のみが、接続されている、あるいはルーティングユニットをホスティングするという点で、依然としてクラスタデータ処理システム400とは異なる。ホスティングサーバが、負荷バランシングデバイス510から第2のデータを受信後、ルーティングユニットへ第2のデータを送信する。次いで、ルーティングユニットは、第2のデータに含まれる制御情報に従って、処理のための所望の標的サーバへ本第2のデータを伝送する。クラスタデータ処理システム500の他の態様は、クラスタデータ処理システム400のものと類似しているため、ここでは繰り返さない。
クラスタデータ処理方法及びその対応するシステムが、上記において詳述されてきた。本明細書で論じられる潜在的効果及び利点は、添付の請求項の範囲の制限又は制約として解釈されるべきではないことを理解されたい。実施例は、本開示の原理及び例示的な実装方法を実証するための例示にすぎない。
本主題を、構造特徴及び/又は方法論的作用に特定して記述してきたが、添付の請求項に定義される主題は、必ずしも、記述される特定の特徴又は作用に制限されないことを理解されたい。むしろ、特定の特徴及び作用は、請求項を実装する例示的な形態として開示される。

Claims (21)

  1. 少なくとも2つのサーバを含むクラスタを使用するクラスタデータ処理方法であって、
    前記クラスタから外部コンピューティングデバイスへ、第1の制御識別子記録を含む第1のデータを送信するステップであって、前記第1の制御識別子記録は、第1の一意の識別子及び第1の制御情報を含む、ステップと、
    前記外部コンピューティングデバイスから、前記クラスタで第2のデータを受信するステップであって、前記第2のデータは、前記第1の一意の識別子に対応する第2の一意の識別子と、前記第1の制御情報に対応する第2の制御情報とを含む第2の制御識別子記録を含む、ステップと、
    前記第2のデータの前記第2の制御情報に従って、前記第2のデータをルーティングするステップと
    を含むことを特徴とする方法。
  2. 前記第2のデータに含まれる前記第2の一意の識別子は、前記第1のデータに含まれる前記第1の一意の識別子と等しいことを特徴とする請求項1に記載の方法。
  3. 前記第2の制御識別子記録は、前記第1の制御識別子記録と等しいことを特徴とする請求項1に記載の方法。
  4. 前記クラスタは、負荷バランシングデバイスを有し、前記第2のデータは、ルーティングされる前に、前記負荷バランシングデバイスによって受信されることを特徴とする請求項1に記載の方法。
  5. 前記負荷バランシングデバイスは、前記クラスタ内の少なくとも2つのサーバのうちの一方に配置されることを特徴とする請求項4に記載の方法。
  6. 前記クラスタで前記第2のデータを受信するステップは、既定の負荷バランシングルールに従って、前記クラスタ内の前記少なくとも2つのサーバの受信サーバへ前記第2のデータを受信するステップであって、前記受信サーバは前記第2のデータの前記制御情報に従って前記第2のデータをルーティングする、ステップをさらに含むことを特徴とする請求項1に記載の方法。
  7. 前記クラスタで前記第2のデータを受信するステップは、
    既定の負荷バランシングルールに従って、前記クラスタ内の前記少なくとも2つのサーバの受信サーバへ前記第2のデータを受信するステップと、
    前記第2のデータの前記制御情報に従って、前記第2のデータをルーティングするように適合される、ルーティングミドルウェアへ前記第2のデータを送信するステップと
    をさらに含むことを特徴とする請求項1に記載の方法。
  8. 前記制御情報は、前記第1のデータに対応するサーバ位置情報を含むことを特徴とする請求項1に記載の方法。
  9. 前記制御情報に従って、前記第2のデータをルーティングするステップは、前記サーバ位置情報に従って、前記クラスタ内の前記少なくとも2つのサーバの受信サーバへ前記第2のデータを送信するステップを含むことを特徴とする請求項8に記載の方法。
  10. 前記制御情報に従って、前記第2のデータをルーティングするステップは、前記受信サーバが、適切に機能していない場合、既定のルーティングルールに従って、前記クラスタ内の前記少なくとも2つのサーバの代替受信サーバへ前記第2のデータを送信するステップをさらに含むことを特徴とする請求項9に記載の方法。
  11. 前記第2のデータは、前記第1のデータを処理する前記外部コンピューティングデバイスによって生成されることを特徴とする請求項1に記載の方法。
  12. 前記方法は、商取引において使用され、かつ前記第1の制御識別子記録は、発注情報を含むことを特徴とする請求項1に記載の方法。
  13. 前記第1のデータは、前記少なくとも2つのサーバの送信サーバによって送信され、前記外部コンピューティングデバイスへ前記第1のデータを送信後、前記送信サーバと前記外部コンピューティングデバイスとの間のネットワーク接続を中断するステップをさらに含むことを特徴とする請求項1に記載の方法。
  14. クラスタデータ処理システムであって、
    少なくとも2つのサーバと、
    負荷バランシングデバイスと、
    ルーティングユニットとを含み、
    各サーバは、第1の制御識別子記録を含む第1のデータを外部コンピューティングデバイスへ送信するように適合される送信ユニットを有し、前記負荷バランシングデバイスは、前記外部コンピューティングデバイスから第2のデータを受信するように適合され、前記第2のデータは、前記第1のデータの前記第1の制御識別子記録に対応する第2の制御識別子記録を含み、かつ前記ルーティングユニットは、前記第2のデータに含まれる前記第2の制御識別子記録に従って、前記第2のデータをルーティングするように適合されることを特徴とするシステム。
  15. 前記ルーティングユニットは、前記少なくとも2つのサーバのうちの1つに配置され、かつ前記負荷バランシングデバイスは、前記第2のデータを受信後、既定の負荷バランシングルールに従って、前記少なくとも2つのサーバの受信サーバへ前記第2のデータを伝送し、前記受信サーバは、前記負荷バランシングデバイスから前記第2のデータを受信するように適合される受信ユニットを含むことを特徴とする請求項14に記載のシステム。
  16. 前記負荷バランシングデバイスは、負荷バランシングルールに従って、前記少なくとも2つのサーバの受信サーバへ前記第2のデータを送信するように適合され、かつ前記受信サーバは、ルーティングされる前記ルーティングユニットへ前記第2のデータを伝送するように適合されることを特徴とする請求項14に記載のシステム。
  17. 前記第2の制御識別子記録は、サーバ位置情報を含むことを特徴とする請求項14に記載のシステム。
  18. 前記第2のデータをルーティングするために、前記ルーティングユニットは、前記サーバ位置情報に従って、前記少なくとも2つのサーバの受信サーバへ前記第2のデータを伝送するように適合されることを特徴とする請求項17に記載のシステム。
  19. 前記ルーティングユニットは、前記サーバ位置情報に従って、前記受信サーバが機能しているかどうか確認するために使用され、かつ前記受信サーバが機能していない場合、前記ルーティングユニットは、既定のルーティングルールに従って、前記少なくとも2つのサーバの代替受信サーバをさらに選択し、前記代替受信サーバへ前記第2のデータを送信するように適合される、故障検出ユニットをさらに含むことを特徴とする請求項18に記載のシステム。
  20. 各々が前記少なくとも2つのサーバのうちのそれぞれ一方に配置される少なくとも2つのルーティングユニットを含むことを特徴とする請求項14に記載のシステム。
  21. クラスタデータ処理システムであって、
    複数のサーバと、
    負荷バランシングデバイスと、
    各々が前記複数のサーバのうちのそれぞれ1つに配置されるルーティングユニットとを含み、
    各サーバは、制御識別子記録を含む第1のデータを外部コンピューティングデバイスへ送信するように適合される送信ユニットを有し、前記制御識別子記録は、一意の識別子と、前記第1のデータに対応する制御情報とを含み、前記負荷バランシングデバイスは、前記外部コンピューティングデバイスから第2のデータを受信するように適合され、前記第2のデータは、前記一意の識別子及び前記制御情報を含む前記第1のデータの前記制御識別子記録を含み、前記負荷バランシングデバイスは、前記第2のデータを受信後、既定の負荷バランシングルールに従って、前記複数のサーバの受信サーバへ前記第2のデータを伝送するようにさらに適合され、かつ前記受信サーバの前記ルーティングユニットは、前記第2のデータに含まれる前記制御情報に従って、前記第2のデータをルーティングするように適合されることを特徴とするシステム。
JP2010506526A 2007-04-25 2008-04-25 クラスタデータ処理のための方法及び装置 Active JP5645216B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2007101026494A CN101296176B (zh) 2007-04-25 2007-04-25 一种基于群集的数据处理方法和装置
CN200710102649.4 2007-04-25
PCT/US2008/061600 WO2008134527A1 (en) 2007-04-25 2008-04-25 Method and apparatus for cluster data processing

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013192238A Division JP6013300B2 (ja) 2007-04-25 2013-09-17 クラスタデータ処理のための方法及び装置

Publications (2)

Publication Number Publication Date
JP2010526377A true JP2010526377A (ja) 2010-07-29
JP5645216B2 JP5645216B2 (ja) 2014-12-24

Family

ID=39926089

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2010506526A Active JP5645216B2 (ja) 2007-04-25 2008-04-25 クラスタデータ処理のための方法及び装置
JP2013192238A Active JP6013300B2 (ja) 2007-04-25 2013-09-17 クラスタデータ処理のための方法及び装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2013192238A Active JP6013300B2 (ja) 2007-04-25 2013-09-17 クラスタデータ処理のための方法及び装置

Country Status (9)

Country Link
US (1) US8769100B2 (ja)
EP (2) EP3702918A1 (ja)
JP (2) JP5645216B2 (ja)
CN (1) CN101296176B (ja)
ES (1) ES2845904T3 (ja)
HK (1) HK1120962A1 (ja)
PL (1) PL2140351T3 (ja)
TW (1) TWI603206B (ja)
WO (1) WO2008134527A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8359522B2 (en) 2007-05-01 2013-01-22 Texas A&M University System Low density parity check decoder for regular LDPC codes
CN102404160B (zh) * 2010-09-13 2014-04-09 中国移动通信集团福建有限公司 智能监控实现方法和系统
CN105450713B (zh) * 2014-09-02 2019-02-12 阿里巴巴集团控股有限公司 集群部署前置机的方法、装置和系统
US10742731B2 (en) 2015-06-10 2020-08-11 International Business Machines Corporation Maintaining service configuration consistency across nodes of a clustered file system
US9940213B2 (en) 2015-06-10 2018-04-10 International Business Machines Corporation Integrating external services with a clustered file system
CN105872118A (zh) * 2015-11-25 2016-08-17 乐视云计算有限公司 Dns网络中节点服务器的检测方法及设备
CN107105049B (zh) * 2017-05-10 2018-10-02 腾讯科技(深圳)有限公司 数据迁移方法和装置
JP2019097037A (ja) * 2017-11-22 2019-06-20 富士通株式会社 情報処理システム及びデータ処理方法
CN109919771B (zh) * 2019-03-18 2020-04-10 徐雪松 一种应用分层区块链技术的工业互联网交易装置
CN113326100B (zh) * 2021-06-29 2024-04-09 深信服科技股份有限公司 一种集群管理方法、装置、设备及计算机存储介质
CN114153380B (zh) * 2021-11-02 2024-04-09 阿里巴巴达摩院(杭州)科技有限公司 用于数据访问和获取的集成电路、系统和方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11120108A (ja) * 1997-08-28 1999-04-30 Internatl Business Mach Corp <Ibm> サーバ側非同期フォーム管理方法および装置
JP2004178286A (ja) * 2002-11-27 2004-06-24 Fujitsu Ltd 中継装置
JP2004206172A (ja) * 2002-12-20 2004-07-22 Sanyo Electric Co Ltd 通信制御方法および装置
JP2005025756A (ja) * 2003-06-30 2005-01-27 Microsoft Corp ホスト状態情報を用いるネットワーク負荷分散
WO2005020085A1 (en) * 2003-08-13 2005-03-03 Microsoft Corporation Routing hints
JP2006085700A (ja) * 2004-09-14 2006-03-30 Internatl Business Mach Corp <Ibm> 分散コンピュータ・システムをトラブルシューティングするため、またはアプリケーション・データフローを見出すためのシステム、方法、およびプログラム
JP2007500889A (ja) * 2003-07-31 2007-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 非同期的に要求を処理するための方法、サーバシステム、及びプログラム

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424992B2 (en) 1996-12-23 2002-07-23 International Business Machines Corporation Affinity-based router and routing method
US6351775B1 (en) * 1997-05-30 2002-02-26 International Business Machines Corporation Loading balancing across servers in a computer network
US6128279A (en) * 1997-10-06 2000-10-03 Web Balance, Inc. System for balancing loads among network servers
US6192451B1 (en) 1998-02-17 2001-02-20 International Business Machines Corporation Cache coherency protocol for a data processing system including a multi-level memory hierarchy
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6195680B1 (en) * 1998-07-23 2001-02-27 International Business Machines Corporation Client-based dynamic switching of streaming servers for fault-tolerance and load balancing
US6446218B1 (en) 1999-06-30 2002-09-03 B-Hub, Inc. Techniques for maintaining fault tolerance for software programs in a clustered computer system
US6970933B1 (en) * 1999-07-15 2005-11-29 F5 Networks, Inc. Enabling application level persistence between a server and another resource over a network
US6792463B1 (en) * 1999-10-21 2004-09-14 International Business Machines Corporation System, method and program product for providing invisibility to a proxy-server
US6622163B1 (en) 2000-03-09 2003-09-16 Dell Products L.P. System and method for managing storage resources in a clustered computing environment
US7281032B2 (en) * 2000-06-30 2007-10-09 Hitachi, Ltd. File sharing system with data mirroring by storage systems
US6523036B1 (en) * 2000-08-01 2003-02-18 Dantz Development Corporation Internet database system
US7228350B2 (en) * 2000-08-04 2007-06-05 Avaya Technology Corp. Intelligent demand driven recognition of URL objects in connection oriented transactions
US7197480B1 (en) * 2000-09-07 2007-03-27 International Business Machines Corporation System and method for front end business logic and validation
US7299255B2 (en) * 2000-09-26 2007-11-20 I2 Technologies Us, Inc. System and method for migrating data in an electronic commerce system
US7272626B2 (en) * 2001-06-19 2007-09-18 Hewlett-Packard Development Company, L.P. E-service management through distributed correlation
US8195187B2 (en) * 2001-06-25 2012-06-05 Airvana Network Solutions, Inc. Radio network control
US7480705B2 (en) * 2001-07-24 2009-01-20 International Business Machines Corporation Dynamic HTTP load balancing method and apparatus
US7003575B2 (en) * 2001-10-15 2006-02-21 First Hop Oy Method for assisting load balancing in a server cluster by rerouting IP traffic, and a server cluster and a client, operating according to same
CN1495634A (zh) * 2002-06-27 2004-05-12 上海汉唐科技有限公司 服务器集群负载均衡方法及系统
US6945458B1 (en) * 2002-07-29 2005-09-20 Bowe Bell + Howell Postage Systems Company Data collection and maintenance database method and apparatus
CN1294509C (zh) * 2002-09-06 2007-01-10 劲智数位科技股份有限公司 具有分布式负载平衡系统的集群计算机
DE10244459A1 (de) * 2002-09-24 2004-04-01 Siemens Ag Rechner- und/oder Software-Architektur unter Verwendung von Micro-Kernel- und Multi-Tier-Konzept mit Komponententechnik
US7480737B2 (en) * 2002-10-25 2009-01-20 International Business Machines Corporation Technique for addressing a cluster of network servers
US20050038890A1 (en) * 2003-08-11 2005-02-17 Hitachi., Ltd. Load distribution method and client-server system
US8266294B2 (en) * 2003-08-13 2012-09-11 Microsoft Corporation Routing hints
US20050188055A1 (en) * 2003-12-31 2005-08-25 Saletore Vikram A. Distributed and dynamic content replication for server cluster acceleration
US7246256B2 (en) * 2004-01-20 2007-07-17 International Business Machines Corporation Managing failover of J2EE compliant middleware in a high availability system
US7840674B1 (en) * 2004-05-10 2010-11-23 Intuit Inc. Routing messages across a network in a manner that ensures that non-idempotent requests are processed
JP4477437B2 (ja) * 2004-07-02 2010-06-09 株式会社日立製作所 ストレージ装置、そのクラスタ間データ通信方法、及びそのクラスタ通信制御プログラム
US20060047776A1 (en) * 2004-08-31 2006-03-02 Chieng Stephen S Automated failover in a cluster of geographically dispersed server nodes using data replication over a long distance communication link
US20060069761A1 (en) * 2004-09-14 2006-03-30 Dell Products L.P. System and method for load balancing virtual machines in a computer network
US7552215B2 (en) * 2004-09-29 2009-06-23 International Business Machines Corporation Method, system, and computer program product for supporting a large number of intermittently used application clusters
US20060089965A1 (en) * 2004-10-26 2006-04-27 International Business Machines Corporation Dynamic linkage of an application server and a Web server
JP4410661B2 (ja) * 2004-11-09 2010-02-03 株式会社日立製作所 分散制御システム
US7729350B2 (en) * 2004-12-30 2010-06-01 Nokia, Inc. Virtual multicast routing for a cluster having state synchronization
WO2007014296A2 (en) * 2005-07-25 2007-02-01 Parascale, Inc. Scalable distributed file storage access and management
US7356643B2 (en) * 2005-10-26 2008-04-08 International Business Machines Corporation System, method and program for managing storage
US7839523B2 (en) * 2005-12-13 2010-11-23 Xerox Corporation System and method for resolving a hardware identifier to a network address of networked device
US8209700B2 (en) * 2005-12-22 2012-06-26 International Business Machines Corporation System, method, and program product for providing local load balancing for high-availability servers
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US20070179981A1 (en) * 2006-01-31 2007-08-02 International Business Machines Corporation Efficient data management in a cluster file system
US7779116B2 (en) * 2006-02-09 2010-08-17 International Business Machines Corporation Selecting servers based on load-balancing metric instances
JP4806572B2 (ja) * 2006-02-15 2011-11-02 株式会社日立製作所 データミラーリングによって参照負荷を分散するストレージシステムにおけるアクセスの制御
US7526668B2 (en) * 2006-06-08 2009-04-28 Hitachi, Ltd. Failover method of remotely-mirrored clustered file servers
US8799918B2 (en) * 2006-09-11 2014-08-05 Microsoft Corporation Dynamic network load balancing using roundtrip heuristic
US20080098113A1 (en) * 2006-10-19 2008-04-24 Gert Hansen Stateful firewall clustering for processing-intensive network applications
US9026655B2 (en) * 2007-01-31 2015-05-05 Oracle America, Inc. Method and system for load balancing
US20100250646A1 (en) * 2009-03-25 2010-09-30 Microsoft Corporation Mechanism for geo distributing application data

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11120108A (ja) * 1997-08-28 1999-04-30 Internatl Business Mach Corp <Ibm> サーバ側非同期フォーム管理方法および装置
JP2004178286A (ja) * 2002-11-27 2004-06-24 Fujitsu Ltd 中継装置
JP2004206172A (ja) * 2002-12-20 2004-07-22 Sanyo Electric Co Ltd 通信制御方法および装置
JP2005025756A (ja) * 2003-06-30 2005-01-27 Microsoft Corp ホスト状態情報を用いるネットワーク負荷分散
JP2007500889A (ja) * 2003-07-31 2007-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーション 非同期的に要求を処理するための方法、サーバシステム、及びプログラム
WO2005020085A1 (en) * 2003-08-13 2005-03-03 Microsoft Corporation Routing hints
JP2006085700A (ja) * 2004-09-14 2006-03-30 Internatl Business Mach Corp <Ibm> 分散コンピュータ・システムをトラブルシューティングするため、またはアプリケーション・データフローを見出すためのシステム、方法、およびプログラム

Also Published As

Publication number Publication date
US8769100B2 (en) 2014-07-01
PL2140351T3 (pl) 2021-06-28
US20100229026A1 (en) 2010-09-09
CN101296176A (zh) 2008-10-29
EP2140351A1 (en) 2010-01-06
EP2140351B1 (en) 2020-12-16
ES2845904T3 (es) 2021-07-28
EP3702918A1 (en) 2020-09-02
WO2008134527A1 (en) 2008-11-06
JP6013300B2 (ja) 2016-10-25
EP2140351A4 (en) 2011-08-10
JP5645216B2 (ja) 2014-12-24
JP2014038637A (ja) 2014-02-27
TW200928777A (en) 2009-07-01
CN101296176B (zh) 2010-12-22
HK1120962A1 (en) 2009-04-09
TWI603206B (zh) 2017-10-21

Similar Documents

Publication Publication Date Title
JP6013300B2 (ja) クラスタデータ処理のための方法及び装置
CN108540536B (zh) 基于区块链的网络海量业务处理方法、设备及存储介质
US9961143B2 (en) Providing enhanced data retrieval from remote locations
US10257027B2 (en) Content switch management
CN110289999B (zh) 一种数据处理方法、系统及装置
CN108063813B (zh) 一种集群环境下密码服务网络并行化的方法与系统
US10187458B2 (en) Providing enhanced access to remote services
US10567492B1 (en) Methods for load balancing in a federated identity environment and devices thereof
EP1955181B1 (en) Method and system for registering a distributed service site
US10481963B1 (en) Load-balancing for achieving transaction fault tolerance
US8312154B1 (en) Providing enhanced access to remote services
US9246754B2 (en) Automatic failover of nodes of a middle-tier layer
US11546405B2 (en) Methods for exposing mainframe data as a web service and devices thereof
CN115516842A (zh) 编排代理服务
CN111490997B (zh) 任务处理方法、代理系统、服务系统和电子设备
US11872497B1 (en) Customer-generated video game player matchmaking in a multi-tenant environment
CN114422575B (zh) 处理网络请求的方法和装置
WO2024078025A1 (zh) 流量隔离方法、装置、系统及计算机可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120810

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121108

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130917

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20130918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130918

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131009

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20131213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141029

R150 Certificate of patent or registration of utility model

Ref document number: 5645216

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250