JP4857374B2 - タスクを割り当てる方法、データ処理システム、クライアントデータ処理ノードおよび機械可読記憶媒体 - Google Patents

タスクを割り当てる方法、データ処理システム、クライアントデータ処理ノードおよび機械可読記憶媒体 Download PDF

Info

Publication number
JP4857374B2
JP4857374B2 JP2009220032A JP2009220032A JP4857374B2 JP 4857374 B2 JP4857374 B2 JP 4857374B2 JP 2009220032 A JP2009220032 A JP 2009220032A JP 2009220032 A JP2009220032 A JP 2009220032A JP 4857374 B2 JP4857374 B2 JP 4857374B2
Authority
JP
Japan
Prior art keywords
data processing
processing node
server data
task
node
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.)
Expired - Fee Related
Application number
JP2009220032A
Other languages
English (en)
Other versions
JP2009301581A (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 JP2009301581A publication Critical patent/JP2009301581A/ja
Application granted granted Critical
Publication of JP4857374B2 publication Critical patent/JP4857374B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Multi Processors (AREA)

Description

本発明の主題は、請求項1のプレアンブルに記載の少なくとも2つのサーバデータ処理ノードからなるグループ内でタスクを割り当てる方法、請求項7のプレアンブルに記載のデータ処理システム、請求項8のプレアンブルに記載のクライアントデータ処理ノード、および請求項9のプレアンブルに記載の機械可読記憶媒体である。
本発明はクライアントサーバアプリケーションにおける、負荷分散の慣習的手法に基づく。
クライアントコンピュータは通信ネットワークを介していくつかのサーバコンピュータに接続されている。サーバコンピュータはその使用率に関する情報を提供するクライアントコンピュータへ周期的にメッセージを送信する。クライアントコンピュータはこの情報を記憶する。クライアントコンピュータがデータ処理タスクを抱えている場合、クライアントコンピュータはサーバコンピュータの記憶された使用率の情報を用いて最も使用率が低いサーバコンピュータを選択する。次にクライアントコンピュータはデータ処理タスクの処理要求を送信して処理のためのデータ処理タスクをこの特定のサーバに割り当てることにより上記のように選択したサーバコンピュータにこのタスクを割り当てる。この処理によってすべてのサーバコンピュータが均等に使用されることが確保される。
この処理は通信ネットワーク上の高トラフィック容量を必然的に伴うという点で不利である。すべてのサーバコンピュータは周期的にメッセージを送信する必要がある。使用率に関する現在データを入手するため、メッセージ間の期間はあまり長くはできない。
本発明の目的はサーバデータ処理ノードの均等な使用を維持し、クライアントおよびサーバデータ処理ノード間のトラフィックを最小限に維持しながらクライアントデータ処理ノードからサーバデータ処理ノードにタスクを割り当てることである。
本発明の上記目的は、請求項1の教示に従う、少なくとも2つのサーバデータ処理ノードからなるグループ内でタスクを割り当てる処理と、請求項7の教示に従うデータ処理システムと、請求項8の教示に従うクライアントデータ処理ノードと、請求項9の教示に従う機械可読記憶媒体を用いて達成される。
クライアントおよびサーバデータ処理ノードはマルチコンピュータシステムの異なるコンピュータ、マルチプロセッサシステムの異なるプロセッサ、またはあるシステムプラットフォームで実行される異なるプロセッサまたはオブジェクトから構成することができる。
本発明は最初に周期的に選択したサーバデータ処理ノードにタスクを割り当てることを試み、サーバデータ処理ノードがこのタスクを受け付けない場合(すでにフル稼働している場合)には必要に応じてランダムに選択したサーバデータ処理ノードにこのタスクを割り当てることを試みるという概念に基づく。したがって、第1の周期的な割り当ての試行に続けて1つまたは複数のランダムな割り当て試行が実行される。
この特定の割り当て方式の結果、すべての負荷領域でのサーバデータ処理ノードが均等に使用され、この処理で必要な割り当て試行数が最小化されていることがテストによって示されている。この割り当て方式は、データ処理システムのクライアントおよびサーバデータ処理ノードの数とはほとんど無関係にごく少数のコンピュータを用いて実行することもできる。したがって、本発明による方法は極めて優れたパフォーマンスと少数の技術的要件とを結びつける。
本発明の別の利点は、タスクが割り当てられる時にだけ1つまたは複数のメッセージが交換されることである。これとは別に、クライアントとサーバデータ処理ノード間でこれ以外の情報の交換は不要である。これによって、特に多数のクライアントおよびサーバデータ処理ノードがかかわる場合に通信負荷が大幅に低減される。
本発明の有利な実施形態を従属請求項に記載する。
本発明はクライアントデータ処理ノードが相互に独立した周期的な選択をする場合に特に有利である。これは、クライアントデータ処理ノード間に同期が存在してはならないということを意味する。
実施形態の例と添付の図面を用いて以下に本発明について詳述する。
本発明によるデータ処理システムおよび本発明によるクライアントデータ処理ノードのブロック図である。 本発明および図1と、本発明によるクライアントデータ処理ノードによるデータ処理システムの機能断面図である。 図2によるクライアントデータ処理ノードが実行する処理を示すフローチャートである。
図1にいくつかのクライアントデータ処理ノードC1〜C5および相互に通信するいくつかのサーバデータ処理ノードS1〜S4を備えたデータ処理システムDPSを示す。
データ処理システムDPSはマルチコンピュータシステムであり、交換機の分散制御の一部を実現する。データ処理システムDPSが異なる分散制御機能を実行することはもちろん可能である。
図に示すクライアントおよびサーバデータ処理ノードの数は一例にすぎない。しかしながら、少なくとも2つのサーバデータ処理ノードが必要である。クライアントデータ処理ノードC1〜C5およびサーバデータ処理ノードS1〜S4のそれぞれは、少なくとも1つのプロセッサと、1つのメモリおよび周辺通信コンポーネントとこのコンピュータ上で実行されるプログラムを備えたコンピュータから構成される。クライアントおよびサーバデータ処理ノードC1〜C5およびS1〜S4は通信ネットワークを介して接続される。この結果、通信ネットワークは交換機の結合ネットワークおよびサーバデータ処理ノードS1〜S4への通信回線から構成される。しかしながら、通信ネットワークはLAN(ローカルエリアネットワーク)またはコンピュータ通信用のあらゆるタイプの通信ネットワークでもよい。
クライアントデータ処理ノードC1〜C5はその機能を果たすと、サーバデータ処理ノードS1〜S4の1つに定期的または不定期にタスク処理を要求する。例えば図1の例では、サーバデータ処理ノードS1〜S3はクライアントデータ処理ノードC3、C2、C5またはC4のタスクをそれぞれ処理している。
サーバデータ処理ノードS1〜S4はそれぞれ所定のタイプのタスクを実行することができる。この結果、これらのノードは所定のタイプのタスクを処理することができるサーバデータ処理ノードのグループを構成する。このようなタスクの例は、データ操作を実行する、または物理要素をトリガする所与の開始値の計算である。全てのサーバデータ処理ノードはこのようなタスクを実行することができる。サーバデータ処理ノードS1〜S4は利用可能なリソースに応じて、1度に1つのタスクを処理するかまたは同時に所定数のタスクを処理できる。また、サーバデータ処理ノードは、処理すべきタスクが中間記憶に配置されるタスクの待ち行列を備えることができる。
クライアントデータ処理ノードC1〜C5は、異なるまたは同じコンピュータシステムの他の処理またはオブジェクトにタスク処理を要求するコンピュータシステムの異なる処理またはオブジェクトであり得る。これらのその他の処理またはオブジェクトはサーバデータ処理ノードである。サーバデータ処理ノードは異なるコンピュータ上で実行され、システムリソースに関して相互に競合しない処理またはオブジェクトから構成されることが有利である。このようなデータ処理ノード間の通信は例えばCORBAインフラストラクチャ(CORBA=Common Object Request Broker Architecture)を介して実行できる。
データ処理システムDPSをサーバデータ処理ノードがクライアントデータ処理ノードC1〜C5がタスクの実行要求を向ける異なるプロセッサを表すマルチプロセッサシステムで構成することもできる。クライアントデータ処理ノードC1〜C5はまた、1つまたはいくつかのプロセッサの異なるプロセッサまたは処理を表す。
クライアントデータ処理ノードの機能構造の一例について図2を用いて説明し、クライアントデータ処理ノードC2の動作方法について説明する。
図2に、クライアントデータ処理ノードC2とサーバデータ処理ノードS1〜S4を示す。クライアントデータ処理ノードC2は2つのプログラムモジュールTFとALLを有する。
プログラムモジュールTFはクライアントデータ処理ノードを介して所定のタスクの実行を要求し、このために、要求SRを介してプログラムモジュールALLを起動する。機能的な観点から、プログラムモジュールALLは、割り当てユニットにより、処理のためにタスクを割り当てるサーバデータ処理ノードS1〜S4のグループ内のサーバデータ処理ノードを決定する。ALLプログラムモジュールの機能は当然ハードウェアでも実現でき、これはデータ処理システムDPSがマルチプロセッサシステムの場合に特に有利である。このサーバデータ処理ノードのアドレスSはプログラムモジュールTFに転送され、次にプログラムモジュールTFはTASKメッセージを用いてこのサーバデータ処理ノード、この場合はサーバデータ処理ノードS2に処理のためのタスクを割り当てる。
また、REQメッセージを用いてタスクをサーバデータ処理ノードに直ちに割り当てることもできる。例えばプログラムモジュールALLはサーバデータ処理ノードS2へメッセージREQおよびTASKを共に送信する。このような実施形態の例では、タスクはプログラムモジュールTFからプログラムモジュールALLへ割り当てのために転送され、プログラムモジュールはタスクの処理を独立してサーバデータ処理ノードへ転送するか、プログラムモジュールTFにこのような転送は現在不可能であることを通知する。タスクの即時転送によってサーバデータ処理ノードはタスクの実行に必要なものを明確に決定することができる。サーバデータ処理ノードがタスクの実行を拒否した場合、サーバデータ処理ノードはプログラムモジュールALLへメッセージDENを送信する。ACKメッセージを送信する必要はない。
機能的に見ると、プログラムモジュールALLはCONTRおよびCOMという2つの機能グループを備える。機能グループCOMはプログラムモジュールALLがサーバデータ処理ノードS1〜S4とシステムプラットフォーム上で交信するための機能を備える。機能グループCONTRは機能グループCOMの機能を用いて要求SRに続くアドレスSを決定する。このために、機能グループCONTRは機能グループCOMを用いてサーバデータ処理ノードS1〜S4のサーバデータ処理ノードへREQメッセージを送信し、サーバデータ処理ノードからメッセージACKおよびDENを受信する。
機能グループCONTRの機能について図3のフローチャートを用いて以下に説明する。
図3は2つの状態Z1およびZ2と、7つのステップST1〜ST7と、3つの判断ステップD1〜D3を示す。
要求SRによって待ち状態Z2は開始状態Z1に切り替わる。これによって第1のステップで、サーバデータ処理ノードの予め定義された周期的シーケンスに基づいて選択される次のサーバデータ処理ノードであるサーバデータ処理ノードがサーバデータ処理ノードS1〜S4から選択される。これを行うため、サーバデータ処理ノードS1〜S4のそれぞれには昇順が割り当てられる。つまり、サーバデータ処理ノードS1〜S4には番号1、2、3、または4が割り当てられる。クライアントデータ処理ノードC2が実行するそれぞれの周期的割り当てにおいて、すなわち、ステップST1が実行されるたびに、カウンタ値が1だけ増分し、これによってカウンタは5に達するたびに1にリセットされる(モジュロ加算)。周期的に選択される次のサーバデータ処理ノードは新しいカウンタ値が割り当てられるサーバデータ処理ノードである。
別法として、リスト上のサーバデータ処理ノードのアドレスを調整することもできる。クライアントデータ処理ノードC2を介したそれぞれの周期的割り当ての間、ポインタはリストの次のエントリにセットされ、これによってリストの終わりまでくるとポインタはリストの最初のエントリにセットされる。したがって、周期的に選択される次のサーバデータ処理ノードはポインタがそのアドレスを指しているサーバデータ処理ノードである。
また、クライアントデータ処理ノードC1〜C5の1つが周期的な選択を実行するたびに進行する、全てのクライアントデータ処理ノードC1〜C5について1つのカウンタまたはポインタだけが利用可能であるということもできる。これによってクライアントデータ処理ノードC1〜C5の応答が同期化される。
また、タスク(ステップST3およびST6で実行される)が割り当てられた最後のサーバデータ処理ノードと比較して、(割振り番号、リスト位置による)所定の順序に従って周期的に選択されるべき次のサーバデータ処理ノードであるサーバデータ処理ノードを選択することも可能である。ここで、このクライアントデータ処理ノードが割り当てたサーバデータ処理ノード、またはクライアントデータ処理ノードC1〜C5のいずれかがタスクを割り当てた最後のサーバデータ処理ノードに処理を基礎付ける代替方法もある。
ステップST2で、サーバデータ処理ノードにタスクを実行できるかどうか質問するステップST1で周期的に選択されたサーバデータ処理ノードへ要求REQが送信される。このサーバデータ処理ノードは例えば他のタスクをすでに処理しているため、または待ち行列が満杯のためにこのタスクを処理できない場合、このノードはREQメッセージに対してDENメッセージでクライアントデータ処理ノードC2に応答する。そうでない場合、このノードはタスクの処理に同意するACKメッセージで応答する。選択されたサーバデータ処理ノードはその使用率が一定のしきい値を超えた場合にDENメッセージを送信することができる。
クライアントデータ処理ノードC2はACKメッセージを受信すると、判断ステップD1のステップST3へ移行する。DENメッセージを受信すると、ステップST4が開始される。
ステップST3で、周期的に選択したサーバデータ処理ノードのアドレスがアドレスSとしてプログラムモジュールTFへ転送される。すなわち、このサーバデータ処理ノードにタスクが割り当てられる。次に処理は待ち状態Z2へ移行する。
ステップST4で、このタスクのために選択されていないサーバデータ処理ノードS1〜S4の残りのサーバデータ処理ノードの1つがランダムに選択される。ランダムな選択は疑似乱数の数字を提供するアルゴリズムに基づいて行われる。もちろん、ランダムシーケンスジェネレータを用いてサーバデータ処理ノードS1〜S4のいずれかを選択することも可能である。この場合、最後に選択されたサーバデータ処理ノードを選択しないのが有利である。ステップST5で、要求REQはランダムに選択したサーバデータ処理ノードへ送信される。このサーバデータ処理ノードの要求がACKメッセージを受信すると、判断ステップD2がステップST6に分岐する。DENメッセージを受信すると、判断ステップD3に分岐する。
ステップST6で、ランダムに選択したサーバデータ処理ノードのアドレスがアドレスSとしてプログラムモジュールTFへ送信される、すなわち、このサーバデータ処理ノードに割り当てられる。次に処理は待ち状態Z2へ移行する。
判断ステップD3はサーバデータ処理ノードのランダム選択試行数が前もって決定されている上限値に達したかどうかチェックする。例えば、クライアントデータ処理ノードが1000、サーバデータ処理ノードが255でこれらの割り当て試行数を4に制限することが有利である。そうでない場合、ステップST4が開始され、そうでない場合、ステップST7が開始される。また判断ステップD3を不要にする1回限りのランダム割り当てを実行することも可能である。
ステップST7で、プログラムモジュールALLはサーバデータ処理ノードのいずれにもタスクを割り当てることは現在できないというメッセージをプログラムモジュールTFへ送信する。次に処理は待ち状態Z2へ移行する。所定の待ち期間に続けて、プログラムモジュールTFが再び割り当て試行を開始する。
C1 クライアントデータ処理ノード
C2 クライアントデータ処理ノード
C3 クライアントデータ処理ノード
C4 クライアントデータ処理ノード
C5 クライアントデータ処理ノード
S1 サーバデータ処理ノード
S2 サーバデータ処理ノード
S3 サーバデータ処理ノード
S4 サーバデータ処理ノード
DPS データ処理システム
TF プログラムモジュール
ALL プログラムモジュール

Claims (9)

  1. つまたはいくつかのクライアントデータ処理ノード(C1〜C5)から発信されるタスクを、少なくとも2つのサーバデータ処理ノード(S1〜S4)からなるグループ内のサーバデータ処理ノードの1つに処理のために割り当てる方法であって、
    タスクを割り当てる第1のクライアントデータ処理ノードが、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき、次のサーバデータ処理ノードである第1のサーバデータ処理ノードをグループから最初に選択し、予め定義された周期的順序によって最初に選択された第1のサーバデータ処理ノードがタスクの割り当てを拒否する場合には、第1のクライアントデータ処理ノードは、複数のサーバデータ処理ノードから異なるサーバデータ処理ノードをランダムに選択し、また第1のクライアントデータ処理ノードは、タスクが許可されるか、または拒否されたタスクの割り当てが所定の回数に到達するかのいずれかまで、複数のサーバデータ処理ノードからランダムに選択されたサーバデータ処理ノードにタスクを割り当てる試行を続行し、サーバデータ処理ノードがタスクの処理を許可する場合には、第1のクライアントデータ処理ノードは、選択したサーバデータ処理ノードにタスクを処理のために割り当て、最初の周期的割り当ての試行の後に1つまたはいくつかのランダム割り当ての試行が続くことを特徴とする方法。
  2. ランダムに選択されたサーバデータ処理ノードがタスクの処理を拒否した場合には、タスクを処理する異なるサーバデータ処理ノードを求めて第1のクライアントデータ処理ノードによりさらにランダムな選択が実行され、拒否されたタスクが処理のために割り当てられるまで拒否されたタスクの割り当てが再び開始されることを特徴とする請求項1に記載の方法。
  3. 第1のクライアントデータ処理ノードは、当該クライアントデータ処理ノードからタスクを割り当てられた最後のサーバデータ処理ノードに対して、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき、次のサーバデータ処理ノードである第1のサーバデータ処理ノードをグループから最初に選択することを特徴とする請求項1または2に記載の方法。
  4. 第1のクライアントデータ処理ノードは、クライアントデータ処理ノードの1つからタスクを割り当てられた最後のサーバデータ処理ノードに対して、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき、次のサーバデータ処理ノードである第1のサーバデータ処理ノードをグループから最初に選択することを特徴とする請求項1または2に記載の方法。
  5. 第1のクライアントデータ処理ノードは、当該クライアントデータ処理ノードによって周期的に選択された最後のサーバデータ処理ノードに対して、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき、次のサーバデータ処理ノードである第1のサーバデータ処理ノードをグループから最初に選択することを特徴とする請求項1または2に記載の方法。
  6. 第1のクライアントデータ処理ノードは、クライアントデータ処理ノードのいずれかによって周期的に選択された最後のサーバデータ処理ノードに対して、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき、次のサーバデータ処理ノードである第1のサーバデータ処理ノードをグループから最初に選択することを特徴とする請求項1または2に記載の方法。
  7. サーバデータ処理ノード(S1〜S4)を介してタスクの処理を要求する1つまたはいくつかのクライアントデータ処理ノード(C1〜C5)と、クライアントデータ処理ノード(C1〜C5)が処理のために割り当てるタスクを処理する少なくとも2つのサーバデータ処理ノード(S1〜S4)からなるグループとを備えたデータ処理システム(DPS)であって、クライアントデータ処理ノード(C1〜C5)のそれぞれが、それぞれのクライアントデータ処理ノードによってタスクが割り当てられサーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき次のサーバデータ処理ノードであるサーバデータ処理ノードをグループから最初に択し、予め定義された周期的順序によって選択されたサーバデータ処理ノードがタスクの割り当てを拒否する場合には、クライアントデータ処理ノードは、複数のサーバデータ処理ノードから異なるサーバデータ処理ノードをランダムに選択し、またクライアントデータ処理ノードは、タスクが許可されるか、または拒否されたタスク割り当てが所定の回数に到達するかのいずれかまで、複数のサーバデータ処理ノードからランダムに選択されたサーバデータ処理ノードにタスクを割り当てる試行を続行し、サーバデータ処理ノードがタスクの処理を許可する場合には、選択したサーバデータ処理ノードに該タスクを割り当てる割り当てユニット(ALL)を備え、最初の周期的割り当ての試行の後に1つまたはいくつかのランダム割り当ての試行が続くることを特徴とするデータ処理システム(DPS)。
  8. 少なくとも2つのサーバデータ処理ノード(S1〜S4)からなるグループのサーバデータ処理ノード(S1〜S4)を介してタスクの処理を要求するクライアントデータ処理ノード(C2)であって、
    クライアントデータ処理ノード(C2)が、クライアントデータ処理ノード(C2)によって割り当てられるべきタスクについて、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき次のサーバデータ処理ノードであるサーバデータ処理ノードをグループから最初に択し、予め定義された周期的順序によって最初に選択されたサーバデータ処理ノードがタスクの割り当てを拒否する場合には、クライアントデータ処理ノードは、複数のサーバデータ処理ノードから異なるサーバデータ処理ノードをランダムに選択し、またクライアントデータ処理ノードは、タスクが許可されるか、または拒否されたタスクの割り当てが所定の回数に到達するかのいずれかまで、複数のサーバデータ処理ノードからランダムに選択されたサーバデータ処理ノードにタスクを割り当てる試行を続行し、サーバデータ処理ノードがタスクの処理を許可する場合には、選択したサーバデータ処理ノードに処理のために該タスクを割り当てる割り当てユニット(ALL)を備え、最初の周期的割り当ての試行の後に1つまたはいくつかのランダム割り当ての試行が続くることを特徴とするクライアントデータ処理ノード(C2)。
  9. 少なくとも2つのサーバデータ処理ノードからなるグループのサーバデータ処理ノードへの処理タスクの割り当てをクライアントデータ処理ノードに制御させるプログラムを保持する機械可読記憶媒体であって、プログラムは、
    クライアントデータ処理ノードがタスクを割り当てるときに、クライアントデータ処理ノードに、サーバデータ処理ノードの予め定義された周期的順序に基づいて選択されるべき次のサーバデータ処理ノードであるサーバデータ処理ノードをグループから最初に選択させ、予め定義された周期的順序によって最初に選択されたサーバデータ処理ノードがタスクの割り当てを拒否する場合には、クライアントデータ処理ノード、複数のサーバデータ処理ノードから異なるサーバデータ処理ノードをランダムに選択させ、またクライアントデータ処理ノード、タスクが許可されるか、または拒否されたタスクの割り当てが所定の回数に到達するかのいずれかまで、複数のサーバデータ処理ノードからランダムに選択されたサーバデータ処理ノードにタスクを割り当てる試行を続行させ、サーバデータ処理ノードがタスクの処理を許可する場合には、クライアントデータ処理ノードに、選択したサーバデータ処理ノードに処理のために該タスクを割り当てさせ、最初の周期的割り当ての試行の後に1つまたはいくつかのランダム割り当ての試行が続くことを特徴とする機械可読記憶媒体。
JP2009220032A 1998-05-20 2009-09-25 タスクを割り当てる方法、データ処理システム、クライアントデータ処理ノードおよび機械可読記憶媒体 Expired - Fee Related JP4857374B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19822543A DE19822543A1 (de) 1998-05-20 1998-05-20 Verfahren zum Zuteilen von Aufträgen, Datenverarbeitssystem, Client-Datenbearbeitungsknoten und computerlesbares Speichermedium
DE19822543.1 1998-05-20

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP11125516A Division JP2000029856A (ja) 1998-05-20 1999-05-06 タスクを割り当てる方法、デ―タ処理システム、クライアントデ―タ処理ノ―ドおよび機械可読記憶媒体

Publications (2)

Publication Number Publication Date
JP2009301581A JP2009301581A (ja) 2009-12-24
JP4857374B2 true JP4857374B2 (ja) 2012-01-18

Family

ID=7868342

Family Applications (2)

Application Number Title Priority Date Filing Date
JP11125516A Pending JP2000029856A (ja) 1998-05-20 1999-05-06 タスクを割り当てる方法、デ―タ処理システム、クライアントデ―タ処理ノ―ドおよび機械可読記憶媒体
JP2009220032A Expired - Fee Related JP4857374B2 (ja) 1998-05-20 2009-09-25 タスクを割り当てる方法、データ処理システム、クライアントデータ処理ノードおよび機械可読記憶媒体

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP11125516A Pending JP2000029856A (ja) 1998-05-20 1999-05-06 タスクを割り当てる方法、デ―タ処理システム、クライアントデ―タ処理ノ―ドおよび機械可読記憶媒体

Country Status (8)

Country Link
US (1) US6725455B2 (ja)
EP (1) EP0959407B1 (ja)
JP (2) JP2000029856A (ja)
AT (1) ATE386977T1 (ja)
AU (1) AU748321B2 (ja)
CA (1) CA2270863C (ja)
DE (2) DE19822543A1 (ja)
ES (1) ES2302372T3 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6854034B1 (en) * 1999-08-27 2005-02-08 Hitachi, Ltd. Computer system and a method of assigning a storage device to a computer
US7886023B1 (en) * 2000-01-21 2011-02-08 Cisco Technology, Inc. Method and apparatus for a minimalist approach to implementing server selection
US7062557B1 (en) * 2000-07-10 2006-06-13 Hewlett-Packard Development Company, L.P. Web server request classification system that classifies requests based on user's behaviors and expectations
US8527639B1 (en) 2000-08-18 2013-09-03 Cisco Technology, Inc. Content server selection for accessing content in a content distribution network
US20020124268A1 (en) * 2001-01-03 2002-09-05 Aditya Krishnan Television programming with variable ancillary information
US20020112043A1 (en) * 2001-02-13 2002-08-15 Akira Kagami Method and apparatus for storage on demand service
US6839815B2 (en) 2001-05-07 2005-01-04 Hitachi, Ltd. System and method for storage on demand service in a global SAN environment
US7281044B2 (en) * 2002-01-10 2007-10-09 Hitachi, Ltd. SAN infrastructure on demand service system
US7996507B2 (en) * 2002-01-16 2011-08-09 International Business Machines Corporation Intelligent system control agent for managing jobs on a network by managing a plurality of queues on a client
US7085831B2 (en) * 2002-01-16 2006-08-01 International Business Machines Corporation Intelligent system control agent for managing jobs on a network by managing a plurality of queues on a client
US7668899B2 (en) * 2002-05-07 2010-02-23 Alcatel-Lucent Usa Inc. Decoupled routing network method and system
US7085853B2 (en) * 2002-09-10 2006-08-01 Sun Microsystems, Inc. System and method for a distributed shell in a java environment
US7496917B2 (en) * 2003-09-25 2009-02-24 International Business Machines Corporation Virtual devices using a pluarlity of processors
US7478390B2 (en) * 2003-09-25 2009-01-13 International Business Machines Corporation Task queue management of virtual devices using a plurality of processors
US7549145B2 (en) * 2003-09-25 2009-06-16 International Business Machines Corporation Processor dedicated code handling in a multi-processor environment
US7620687B2 (en) * 2004-06-25 2009-11-17 Telcordia Technologies, Inc. Distributed request routing
US20060271935A1 (en) * 2005-05-31 2006-11-30 Microsoft Corporation Assignment of clients to tasks in a distributed system
GB0519981D0 (en) 2005-09-30 2005-11-09 Ignios Ltd Scheduling in a multicore architecture
CN1870636A (zh) 2005-11-10 2006-11-29 华为技术有限公司 一种客户端重定向的方法和系统
US8813091B2 (en) * 2008-08-04 2014-08-19 Oracle America, Inc. Distribution data structures for locality-guided work stealing
US20120151479A1 (en) 2010-12-10 2012-06-14 Salesforce.Com, Inc. Horizontal splitting of tasks within a homogenous pool of virtual machines
GB2521155B (en) 2013-12-10 2021-06-02 Advanced Risc Mach Ltd Configuring thread scheduling on a multi-threaded data processing apparatus
GB2521151B (en) * 2013-12-10 2021-06-02 Advanced Risc Mach Ltd Configurable thread ordering for a data processing apparatus
US10540207B1 (en) * 2018-07-18 2020-01-21 International Business Machines Corporation Fast, low memory, consistent hash using an initial distribution
CN111435938B (zh) * 2019-01-14 2022-11-29 阿里巴巴集团控股有限公司 一种数据请求的处理方法、装置及其设备
CN113922953B (zh) * 2021-09-30 2023-07-21 联想(北京)有限公司 一种数据处理方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5335308A (en) * 1976-09-13 1978-04-01 Fujitsu Ltd Call distribution system
JP2585535B2 (ja) * 1986-06-02 1997-02-26 株式会社日立製作所 複合計算機システムにおけるプロセス結合方法
US5341477A (en) * 1989-02-24 1994-08-23 Digital Equipment Corporation Broker for computer network server selection
JPH0329050A (ja) * 1989-06-27 1991-02-07 Nec Corp 負荷配分方式
JPH0660043A (ja) * 1992-08-11 1994-03-04 Nec Corp 負荷分散制御方式
GB2281793A (en) * 1993-09-11 1995-03-15 Ibm A data processing system for providing user load levelling in a network
ES2149794T3 (es) * 1993-09-24 2000-11-16 Siemens Ag Procedimiento para compensar la carga en un sistema multiprocesador.
JPH07152685A (ja) * 1993-11-26 1995-06-16 Hitachi Ltd 分散編集制御方式
DE4343588A1 (de) * 1993-12-21 1995-06-22 Sel Alcatel Ag Verfahren und Einrichtung zur zufälligen Auswahl einer von N gleichen Einheiten, sowie Koppelelement, Koppelnetz und Vermittlungsstelle damit
JPH07302242A (ja) * 1994-04-30 1995-11-14 Mitsubishi Electric Corp 負荷分散方式
FR2722591B1 (fr) * 1994-07-13 1996-08-30 Bull Sa Systeme informatique ouvert a serveurs multiples
US5761507A (en) * 1996-03-05 1998-06-02 International Business Machines Corporation Client/server architecture supporting concurrent servers within a server with a transaction manager providing server/connection decoupling
JPH09325945A (ja) * 1996-06-04 1997-12-16 Toshiba Corp クライアントサーバシステム
US5956714A (en) * 1997-08-13 1999-09-21 Southwestern Bell Telephone Company Queuing system using a relational database

Also Published As

Publication number Publication date
CA2270863C (en) 2006-10-17
DE19822543A1 (de) 1999-11-25
EP0959407B1 (de) 2008-02-20
JP2000029856A (ja) 2000-01-28
AU748321B2 (en) 2002-05-30
DE59914655D1 (de) 2008-04-03
EP0959407A2 (de) 1999-11-24
AU3014999A (en) 1999-12-02
CA2270863A1 (en) 1999-11-20
JP2009301581A (ja) 2009-12-24
ATE386977T1 (de) 2008-03-15
US6725455B2 (en) 2004-04-20
US20030177162A1 (en) 2003-09-18
ES2302372T3 (es) 2008-07-01
EP0959407A3 (de) 2004-11-24

Similar Documents

Publication Publication Date Title
JP4857374B2 (ja) タスクを割り当てる方法、データ処理システム、クライアントデータ処理ノードおよび機械可読記憶媒体
US7853953B2 (en) Methods and apparatus for selective workload off-loading across multiple data centers
JP5243405B2 (ja) 計算資源を管理するための方法およびシステム
US6766348B1 (en) Method and system for load-balanced data exchange in distributed network-based resource allocation
US6195682B1 (en) Concurrent server and method of operation having client-server affinity using exchanged client and server keys
CN110647394B (zh) 一种资源分配方法、装置及设备
US6947987B2 (en) Method and apparatus for allocating network resources and changing the allocation based on dynamic workload changes
US6141720A (en) Method and apparatus for coordination of a shared object in a distributed system
JPH114261A (ja) 動的ルーティング方法及びプログラム記憶装置
WO2003100648A1 (en) Parallel processing system
WO1998003912A1 (en) Method and apparatus for coordination of a shared object in a distributed system
CN110166524B (zh) 数据中心的切换方法、装置、设备及存储介质
EP3864824B1 (en) Methods and apparatuses for balancing utilization of computer resources
CN112506647A (zh) 有状态服务器负载均衡的方法、系统、装置和存储介质
JPH01270161A (ja) 共通バス制御方法
CN111163140A (zh) 资源获取和分配的方法、装置和计算机可读存储介质
US20170344266A1 (en) Methods for dynamic resource reservation based on classified i/o requests and devices thereof
CN117118951A (zh) 一种一主多从总线通用从机地址动态分配的方法
CN112822062A (zh) 一种用于桌面云服务平台的管理方法
KR20130028554A (ko) 메시지 버스를 이용한 대용량 분산 처리 장치 및 그 방법
CN111309467A (zh) 任务分发方法及装置、电子设备及存储介质
RU96102540A (ru) Способ управления обслуживанием запросов пользователей в вычислительной системе
Nandy et al. A-fast: Autonomous flow approach to scheduling tasks
JPH1063524A (ja) ネットワーク資源共用方式
Tan Cost-efficient load distribution using multicasting

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090925

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100223

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100601

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110329

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110830

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111025

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111031

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141104

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

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

LAPS Cancellation because of no payment of annual fees