JPH0764892A - 分散コンピューティングシステム - Google Patents

分散コンピューティングシステム

Info

Publication number
JPH0764892A
JPH0764892A JP5210749A JP21074993A JPH0764892A JP H0764892 A JPH0764892 A JP H0764892A JP 5210749 A JP5210749 A JP 5210749A JP 21074993 A JP21074993 A JP 21074993A JP H0764892 A JPH0764892 A JP H0764892A
Authority
JP
Japan
Prior art keywords
request
server
cpu
information
cpu server
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.)
Withdrawn
Application number
JP5210749A
Other languages
English (en)
Inventor
Shogo Hayashi
省吾 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP5210749A priority Critical patent/JPH0764892A/ja
Publication of JPH0764892A publication Critical patent/JPH0764892A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 個々のCPUサーバーの設定をすることなく
CPUサーバー増減を可能とし、リクエスト起動時に常
に最適なCPUサーバーの選択を行う。 【構成】 リクエストサーバーを別に設けてCPUサー
バー情報をリクエストサーバーで一元管理するので、C
PUサーバー増設時にCPUサーバーの能力情報などを
リクエストサーバーだけに入力すればよく、従来のよう
に個々のCPUサーバーに登録する必要はない。また、
リクエストサーバーと各CPUサーバーとが互いに交信
して、CPUサーバー起動および停止時に更新された最
新のCPUサーバーの処理情報を評価して実行すべき適
切なCPUサーバーにリクエスト依頼するので、リクエ
スト起動時に常に最適なCPUサーバーが選択される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理分野における
分散コンピューティングシステムに関する。
【0002】
【従来の技術】従来の分散コンピューティングシステム
では、CPUサーバーがお互いに情報を交換しあいリク
エストを実行するCPUサーバーを決定するものがあっ
た。
【0003】この分散コンピューティングシステムにつ
いて説明すると、図15に示すように、計算機10は、
一定期間毎に各計算機10,20,30,40のシステ
ム情報部11,21,31,41からシステム情報を受
取り、その内容を相手先評価部14で評価し、相手先キ
ュー更新部15は相手先評価部14の評価結果を基に相
手先キュー13の内容の更新を行う。そして、計算機1
0において遠隔実行を行うとき、遠隔実行相手先選択部
12によって、相手先キューの13の先頭の、たとえば
計算機20をその遠隔実行相手先として選択すると、遠
隔実行要求部16は計算機20に対して遠隔実行要求を
出力し、計算機20は受け取った遠隔実行要求を遠隔実
行処理部27で処理してその結果を計算機10の遠隔実
行要求部16に返す。このようにして、最適な遠隔実行
相手先が各計算機の性能と稼働状況を考慮した上で、高
速に決定される。なお、同様に、17,37,47は遠
隔実行処理部、22,32,42は遠隔実行相手先選択
部、23,33,43は相手先キュー、24,34,4
4は相手先評価部、25,35,45は相手先キュー更
新部、26,36,46は遠隔実行要求部である。
【0004】
【発明が解決しようとする課題】しかし、上記従来の構
成では、計算機などのCPUサーバーの増減に際し、そ
の新しい構成情報を個々のCPUサーバーに登録しなお
さなければならず、また、各CPUサーバーが自らも含
めたお互いのCPUサーバー情報を持たなければならな
かった。また、個々のCPUサーバーがリクエストを受
けたタイミングで、一定期間毎に更新された相手先キュ
ーの先頭にあるリクエスト実行先のCPUサーバーを選
択しているため、かならずしもリクエスト起動時に最適
なCPUサーバーを選択しているとは限らない場合が発
生するという問題を有していた。
【0005】本発明は上記従来の問題を解決するもの
で、CPUサーバー情報を一元管理して個々のCPUサ
ーバーの設定をすることなくCPUサーバー増減を可能
とし、リクエスト起動時に常に最適なCPUサーバーの
選択を行うことができる分散コンピューティングシステ
ムを提供することを目的とする。
【0006】
【課題を解決するための手段】本発明の分散コンピュー
ティングシステムは、特定のプログラムを専用に処理す
る複数のCPUサーバーと、該プログラム実行のリクエ
ストをキューイング依頼する複数のクライアントと、該
クライアントから受けたリクエストの順に、該複数のC
PUサーバーとの交信によりCPUサーバー起動および
停止時に更新された最新のCPUサーバーの処理情報を
評価して実行すべき適切なCPUサーバーにリクエスト
依頼し、かつ、該クライアントから受けたリクエストの
キューイングを行うリクエストサーバーとを有するもの
であり、そのことにより上記目的が達成される。
【0007】また、本発明の分散コンピューティングシ
ステムにおけるリクエストサーバーは、CPUサーバー
稼働情報からアイドル中のCPUサーバーを確認し、か
つキューイングされているリクエストがない場合に、す
でに実行中のリクエストの中から資源利用量の少ないリ
クエストを選択して、アイドル中のCPUサーバーにリ
クエスト実行要求を依頼する構成としたものであり、そ
のことにより上記目的が達成される。
【0008】さらに、本発明の分散コンピューティング
システムのリクエストサーバーにおけるCPUサーバー
選択方法として、実行中のリクエストの処理能力量を示
す資源利用量を評価して実行すべき最適なCPUサーバ
ーを選択する構成としたものであり、そのことにより上
記目的が達成される。
【0009】
【作用】上記構成により、リクエストサーバーを別に設
けてCPUサーバー情報をリクエストサーバーで一元管
理するので、CPUサーバー増設時にCPUサーバーの
能力情報などをリクエストサーバーだけに入力すればよ
く、従来のように個々のCPUサーバーに登録する必要
はない。また、リクエストサーバーと各CPUサーバー
とが互いに交信して、CPUサーバー起動および停止時
に更新された最新のCPUサーバーの処理情報を評価し
て実行すべき適切なCPUサーバーにリクエスト依頼す
るので、リクエスト起動時に常に最適なCPUサーバー
が選択される。
【0010】また、CPUサーバー稼働情報からアイド
ル中のCPUサーバーがあり、かつキューイングされて
いるリクエストがない場合に、すでに実行中のリクエス
トの中から資源利用量の少ないリクエストを選択して、
アイドル中のCPUサーバーにリクエスト実行要求を依
頼すれば、空き状態にあるCPUサーバーがより有効に
活用されて処理時間が短縮され得る。
【0011】さらに、実行中のリクエストの処理能力量
を示す資源利用量を評価して実行すべき最適なCPUサ
ーバーを選択するので、CPUサーバーにリクエストを
最適に割り振ることが可能となる。
【0012】
【実施例】本発明の実施例について以下に説明する。図
1において、プログラム実行のリクエストをキューイン
グ依頼する複数のクライアント100、110、21
0、130と、クライアント100、110、210、
130から受けたリクエストの順に、後述するCPUサ
ーバーとの交信により後述するCPUサーバーの起動お
よび停止時に更新された最新のCPUサーバー処理情報
を評価して実行すべき適切な後述するCPUサーバーに
リクエスト依頼し、かつ、クライアント100、11
0、210、130から受けたリクエストのキューイン
グを行うリクエストサーバー200と、特定のプログラ
ムを専用に処理する複数のCPUサーバー300、31
0、320、330とがネットワークにそれぞれ接続さ
れている。クライアント100には、キューイングリク
エスト送信部101が設けられ、リクエストサーバー2
00にプログラム実行のリクエストを送出する。
【0013】また、リクエストサーバー200には、ク
ライアントからのリクエストを受信するキューイングリ
クエスト受信部201と、各CPUサーバーに最新の情
報要求とその情報の受信を行い、CPUサーバー情報と
実行リクエスト情報の更新をし、リクエスト終了連絡を
受信するCPUサーバー情報要求依頼/CPUサーバー
情報受信部202と、選択すべき適切なCPUサーバー
にリクエストの実行を依頼する実行リクエスト送信部と
しての実行リクエスト送信/実行リクエスト停止要求送
信部203と、最新のキューイング情報およびCPUサ
ーバー情報を基にリクエストを実行させるのに最適なC
PUサーバーの選択とキューイング情報の更新を行うC
PUサーバー評価部204とが設けられている。
【0014】ここで、キューイング情報205の内容は
図2に示すように、リクエスト番号とクライアントのI
Dとリクエストスクリプトへのポインタの各フィールド
を持つ。このリクエストスクリプトはCPUサーバーで
実行されるコマンドスクリプトが記述されている。ま
た、CPUサーバー情報206の内容は図3に示すよう
に、各CPUサーバー毎にCPUサーバーIDと相対的
なCPU能力、最大リクエスト数、実行リクエスト数の
各フィールドを持つ。さらに、実行リクエスト情報20
7の内容は図4に示すように、各実行リクエスト毎にC
PUサーバーIDとリクエスト番号と資源利用量とリク
エストスクリプトへのポインタの各フィールドを持つ。
資源利用量は、各CPUサーバーで消費したCPU時間
に各CPUが持つCPU能力を乗じた値とする。
【0015】さらに、CPUサーバー300には、リク
エストサーバー200の実行リクエスト送信/実行リク
エスト停止要求送信部203からリクエストの実行依頼
または停止依頼を受け取る実行リクエスト受信/実行リ
クエスト停止要求受信部301と、実行リクエストの情
報提供を要求し、得られた実行リクエストの情報をCP
Uサーバー情報要求依頼/CPUサーバー情報受信部2
02に送出するCPUサーバー情報要求依頼受信/CP
Uサーバー情報送信部302と、受理したリクエストの
起動とリクエストの終了監視、リクエスト数の変動また
は、CPUサーバー情報要求依頼受信/CPUサーバー
情報送信部302から情報の提供を求められた時に現状
の実行リクエスト数をそのCPUサーバー情報要求依頼
受信/CPUサーバー情報送信部302に伝える実行リ
クエスト情報制御監視部303とが設けられている。
【0016】上記構成により、以下、各部の動作を説明
する。
【0017】まず、たとえばクライアント100のキュ
ーイングリクエスト送信部101での処理を図5の処理
フローに従って説明する。図5に示すように、ステップ
S1でキューイングリクエスト送信部101ではクライ
アント内で遠隔実行するリクエストの送信要求イベント
を常に待つ。送信要求が確認されたら、ステップS2で
リクエストサーバー200のキューイングリクエスト受
信部201へリクエストスクリプトを送出し、ステップ
S3でリクエストサーバー200のキューイングリクエ
スト受信部201からの受理返答を待つ。受理返答があ
ればステップS1に戻る。
【0018】次に、リクエストサーバー200のキュー
イングリクエスト受信部201での処理を図6の処理フ
ローに従って説明する。図6に示すように、キューイン
グリクエスト受信部201では、まず、ステップS11
でクライアント100、110、120、130それぞ
れのキューイングリクエスト送信部101、111、1
21、131からリクエスト要求イベントを常に待つ。
イベントが確認されたら、リクエストを要求した、たと
えばクライアント100のキューイングリクエスト送信
部101に受理返答する。そして、ステップS12でC
PUサーバー評価部204へリクエストの新規追加連絡
を通知する。さらに、ステップS13でCPUサーバー
評価部204からの受理通知を待つ。この受理通知が来
たらステップS11に戻る。
【0019】さらに、リクエストサーバー200のCP
Uサーバー情報要求依頼/CPUサーバー情報受信部2
02での処理を図7の処理フローに従って説明する。図
7に示すように、CPUサーバー情報要求依頼/CPU
サーバー情報受信部202では、まず、ステップS21
でCPUサーバー評価部204からのCPUサーバー情
報206と実行リクエスト情報207の最新値収集依
頼、ステップS22でCPUサーバー300、310、
320、330それぞれのCPUサーバー情報要求依頼
受信/CPUサーバー情報送信部302、312、32
2、332からのリクエスト終了連絡、のいずれかのイ
ベントを常に待つ。CPUサーバー評価部204からの
CPUサーバー情報206と実行リクエスト情報207
の最新値収集依頼が確認されたら、ステップS23で稼
働中の全てのCPUサーバー300、310、320、
330のCPUサーバー情報要求依頼受信/CPUサー
バー情報送信部302、312、322、332へ情報
提供を要求する。そして、ステップS24で全てのCP
Uサーバー300、310、320、330から実行リ
クエストの資源利用量情報の到着を待つ。実行リクエス
トの資源利用量情報が到着すれば、各CPUサーバー3
00、310、320、330に受理返答をし、ステッ
プS25でCPUサーバー情報206と実行リクエスト
情報207を更新し、さらに、CPUサーバー評価部2
04に変更終了を通知する。そして、ステップS26で
CPUサーバー評価部204からの変更終了の通知受理
返答を待つ。変更終了の通知受理返答があればステップ
S21に戻る。また、ステップS22においてCPUサ
ーバー300、310、320、330それぞれのCP
Uサーバー情報要求依頼受信/CPUサーバー情報送信
部302、312、322、332からのリクエスト終
了連絡が確認されたら、CPUサーバー情報要求依頼受
信/CPUサーバー情報送信部302、312、32
2、332へ受理返答し、ステップS27でCPUサー
バー評価部204へ終了リクエストを通知する。そし
て、ステップS28でCPUサーバー評価部204から
の受理返答を待つ。この受理返答があればステップS2
1に戻る。
【0020】さらに、リクエストサーバー200の実行
リクエスト送信/実行リクエスト停止要求送信部203
での処理を図8の処理フローに従って説明する。図8に
示すように、実行リクエスト送信/実行リクエスト停止
要求送信部203では、まず、ステップS31でCPU
サーバー評価部204からの実行リクエストの送信依
頼、ステップS32でCPUサーバー評価部204から
の実行リクエストの停止要求、のいずれかのイベントを
常に待つ。ステップS31においてCPUサーバー評価
部204からの実行リクエストの送信依頼が確認された
ら、ステップS33で、指定されたCPUサーバーの実
行リクエスト受信/実行リクエスト停止要求受信部へリ
クエストの実行を要求する。そして、ステップS34で
この指定されたCPUサーバーの実行リクエスト受信/
実行リクエスト停止要求受信部からのリクエスト受信確
認を待つ。リクエストの受信確認があれば、CPUサー
バー評価部204へ送信完了を通知し、ステップS31
に戻る。また、ステップS32においてCPUサーバー
評価部204からの実行リクエストの停止要求が確認さ
れたら、ステップS35で、指定されたCPUサーバー
の実行リクエスト受信/実行リクエスト停止要求受信部
へ実行リクエストの停止を要求する。そして、ステップ
S36で、指定されたCPUサーバーの実行リクエスト
受信/実行リクエスト停止要求受信部からの受信確認を
待つ。受信確認があれば、CPUサーバー評価部204
へ停止完了を通知し、ステップS31に戻る。
【0021】さらに、リクエストサーバー200のCP
Uサーバー評価部204での処理を図9および図10の
処理フローに従って説明する。CPUサーバー評価部2
04では、図9のステップS41でキューイングリクエ
スト受信部201からのリクエストの新規追加連絡、図
10のステップS42でCPUサーバー情報要求依頼/
CPUサーバー情報受信部202からのリクエスト終
了、のいずれかのイベントを常に待つ。
【0022】図9に示すように、ステップS41におい
てキューイングリクエスト受信部201からリクエスト
の新規追加連絡が確認されたら、キューイングリクエス
ト受信部201へイベントの受理を返答し、ステップS
43でキューイング情報205の最も優先順位の低い箇
所へ受信したリクエストを追加する。そして、ステップ
S44で実行リクエスト情報207を参照し、2つのC
PUサーバーで実行しているリクエストがあるかどうか
調べる。ステップS44において2つのCPUサーバー
で実行しているリクエストがあれば、リクエストの停止
処理を行う。このリクエストの停止処理は、ステップS
45でCPUサーバー情報要求依頼/CPUサーバー情
報受信部202にCPUサーバーの最新情報収集を依頼
し、ステップS46でCPUサーバー情報要求依頼/C
PUサーバー情報受信部202からCPUサーバー情報
206の更新完了連絡を待つ。更新完了連絡があれば、
CPUサーバー情報要求依頼/CPUサーバー情報受信
部202へ受理返答をする。そして、ステップS47で
実行リクエスト情報207を参照して、2つのCPUサ
ーバーで実行しているリクエストのうちで資源利用量が
最も少ないリクエストを選択し、実行リクエスト送信/
実行リクエスト停止要求送信部203にリクエストの停
止を依頼する。ステップS48で実行リクエスト送信/
実行リクエスト停止要求送信部203から停止処理完了
通知を受けたら受理を返答し、ステップS49でCPU
サーバー情報206と実行リクエスト207を更新して
停止処理を終了する。
【0023】また、ステップS44において2つのCP
Uサーバーで実行しているリクエストがなければリクエ
ストの停止処理を行わずに、ステップS50でCPUサ
ーバー情報206の実行リクエスト数が最大リクエスト
数に達していないCPUサーバーの有無を調べる。実行
リクエスト数が最大リクエスト数に達していないCPU
サーバーがあれば、または、ステップS49の後、ステ
ップS51でCPUサーバーとリクエストの選択を行
う。このCPUサーバーとリクエストの選択では、CP
Uサーバー情報206で実行リクエスト数が最大リクエ
スト数に達していないもののうち残存能力が最も高いC
PUサーバーを選択し、キューイング情報205からは
優先度の最も高いリクエストをそれぞれ選び出す。各C
PUサーバーの残存能力とは、新たにリクエストを1つ
追加した場合にそのリクエストが得られるCPU能力の
ことで各CPUサーバーのCPU能力を、現在の実行リ
クエスト数+1で割った値である。選択されたリクエス
トを選択されたCPUサーバーで実行するよう、実行リ
クエスト送信/実行リクエスト停止要求送信部203へ
依頼する。ステップS52で実行リクエスト送信/実行
リクエスト停止要求送信部203から完了連絡があれ
ば、実行リクエスト送信/実行リクエスト停止要求送信
部203へ受理を返答し、ステップS53でCPUサー
バー情報206と実行リクエスト情報207を更新して
ステップS41の最初のイベント待へ戻る。
【0024】図10に示すように、ステップS42にお
いてCPUサーバー情報要求依頼/CPUサーバー情報
受信部202によりリクエスト終了連絡が確認された
ら、CPUサーバー情報要求依頼/CPUサーバー情報
受信部202へイベントの受理を返答し、ステップS5
4でCPUサーバー情報206と実行リクエスト情報2
07から終了リクエストを削除し、CPUサーバー情報
を更新する。ステップS55で他のCPUサーバーで削
除したリクエストと同じリクエスト番号のものがあるか
どうか確認し、もしあれば、ステップS56でそのリク
エストの停止処理を実行リクエスト送信/実行リクエス
ト停止要求送信部203へ依頼する。ステップS57で
実行リクエスト送信/実行リクエスト停止要求送信部2
03からリクエスト停止処理終了の通知を待つ。そし
て、ステップS58で実行リクエスト情報から終了リク
エストを削除し、CPUサーバー情報を更新する。さら
に、ステップS59aでCPUサーバー情報206で最
大処理に達していないCPUサーバーがあるかどうか調
べ、ある限り、キューイングされているリクエストの実
行依頼処理を行う。リクエストとCPUサーバーの選択
手順は上記で説明した方法に従う。即ち、ステップS5
9bでキューイング情報の中に待ち状態のリクエストが
あるかどうかを調べ、待ち状態のリクエストがあれば、
ステップS60でCPUサーバー情報206で実行リク
エスト数が最大リクエスト数に達していないもののうち
残存能力が最も高いCPUサーバーを選択し、キューイ
ング情報から優先度の最も高いリクエストを、実行リク
エスト送信/実行リクエスト停止要求送信部203へリ
クエスト転送を依頼する。そして、ステップS61で実
行リクエスト送信/実行リクエスト停止要求送信部20
3から送信完了連絡があるかどうかを調べ、送信完了連
絡があれば、実行リクエスト送信/実行リクエスト停止
要求送信部203へ受理を返答する。そして、ステップ
S62で実行リクエスト情報とCPUサーバー情報を更
新する。
【0025】また、ステップS59a,S59bでCP
Uサーバーに空きがあってキューイングリクエストに待
ちがない場合は、ただ1つのリクエストに限り既に実行
中の同じリクエストを別のCPUサーバーにて並列に実
行させるべく、以下の処理を行う。まず、ステップS6
3でCPUサーバー情報206からアイドル状態のもの
があるかどうか調べ、アイドル状態のものがなければ最
初のイベント待ちへ、アイドル状態のものがあれば、ス
テップS64でCPUサーバー情報要求依頼/CPUサ
ーバー情報受信部202へ最新情報収集を依頼し、ステ
ップS65でCPUサーバー情報要求依頼/CPUサー
バー情報受信部202からCPUサーバー情報の更新連
絡を待つ。そして、更新連絡があれば、CPUサーバー
情報要求依頼/CPUサーバー情報受信部202へ受理
を返答する。さらに、ステップS66で、ただ1つのC
PUサーバーで実行かつ資源利用量が最も小さいリクエ
ストのCPU分配量(CPU能力を実行リクエスト数で
割った値)が、アイドル状態で処理能力が最も高いCP
Uサーバーの処理能力より小さい場合は、ステップS6
7で、ただ1つのCPUサーバーで実行し、かつ資源利
用量が最も小さいリクエストをアイドル状態で処理能力
が最も高いCPUサーバーで実行するよう依頼する。
【0026】実行依頼すべきリクエストがあり、かつC
PUサーバーに受け入れる余裕がある場合のCPUサー
バー選択手法として、上記処理フローのステップS5
1,S60で一部を拡張したものとして図11に示す。
ここでは、CPUサーバー選択の前にステップS51a
でCPUサーバー情報要求依頼/CPUサーバー情報受
信部202へ最新情報収集を依頼し、ステップS51b
でCPUサーバー情報要求依頼/CPUサーバー情報受
信部202からCPUサーバー情報の更新連絡を待つ。
更新連絡があれば、CPUサーバー情報要求依頼/CP
Uサーバー情報受信部202へ受理を返答する。そし
て、ステップS51cでCPUサーバー情報で実行リク
エスト数が最大リクエスト数に達していないもののうち
残存能力が最も高いCPUサーバーを選択する。アイド
ル状態でなく残存能力値が等しいCPUサーバーが複数
あった場合に、実行リクエスト情報207を参照して各
CPUサーバーで実行している実行リクエストの資源利
用量の総和が最も多いCPUサーバーを選択するもので
ある。キューイング情報から優先度の最も高いリクエス
トを実行リクエスト送信/実行リクエスト停止要求送信
部203へリクエスト転送を依頼する。
【0027】次に、CPUサーバー300の実行リクエ
スト受信/実行リクエスト停止要求受信部301での処
理を図12の処理フローに従って説明する。実行リクエ
スト受信/実行リクエスト停止要求受信部301では、
図12に示すように、リクエストサーバー200の実行
リクエスト送信/実行リクエスト停止要求送信部203
からステップS71のリクエストの実行要求と、ステッ
プS72のリクエストの停止要求のいずれかのイベント
を待つ。そして、ステップS73でリクエストの実行要
求が確認されれば、実行リクエスト情報制御監視部30
3へリクエストの実行を依頼する。さらに、ステップS
74で実行リクエスト情報制御監視部303からリクエ
スト起動終了の返答を待つ。リクエスト起動終了の返答
があれば、リクエストサーバー200の実行リクエスト
送信/実行リクエスト停止要求送信部203へ受理を返
答してステップS71に戻る。また、ステップS72に
おけるリクエストの停止要求が確認されたら、ステップ
S75で実行リクエスト情報制御監視部303へリクエ
ストの停止を依頼する。そして、ステップS76で実行
リクエスト情報制御監視部303からリクエスト停止終
了の返答を待つ。リクエスト停止終了の返答があれば、
リクエストサーバー200の実行リクエスト送信/実行
リクエスト停止要求送信部203へ受理を返答してステ
ップS71に戻る。
【0028】また、CPUサーバー300のCPUサー
バー情報要求依頼受信/CPUサーバー情報送信部30
2での処理を図13の処理フローに従って説明する。C
PUサーバー情報要求依頼受信/CPUサーバー情報送
信部302では、図13に示すように、リクエストサー
バー200のCPUサーバー情報要求依頼/CPUサー
バー情報受信部202からのステップS81のサーバー
情報提供依頼、実行リクエスト情報制御監視部303か
らのステップS82の終了リクエストの通知、のいずれ
かのイベントを常に待つ。ステップS81においてサー
バー情報提供依頼が確認されたら、ステップS83で実
行リクエスト情報制御監視部303へ情報提供の依頼を
する。そして、ステップS84で実行リクエスト情報制
御監視部303から実行リクエスト情報の返答を待つ。
そして、ステップS85でリクエストサーバー200の
CPUサーバー情報要求依頼/CPUサーバー情報受信
部202へ結果である、実行リクエストの資源利用量情
報を送信してステップS81に戻る。また、ステップS
82における終了リクエストの通知が確認されたら、ス
テップS86でリクエストサーバー200のCPUサー
バー情報要求依頼/CPUサーバー情報受信部202へ
終了リクエスト情報を送信する。そして、ステップS8
7でリクエストサーバー200のCPUサーバー情報要
求依頼/CPUサーバー情報受信部202からの受理返
答を待って、ステップS88で実行リクエスト情報制御
監視部303へ終了リクエスト情報の送信完了を通知し
てステップS81に戻る。
【0029】さらに、CPUサーバー300の実行リク
エスト情報制御監視部303での処理を図14の処理フ
ローに従って説明する。実行リクエスト情報制御監視部
303では、図14に示すように、実行リクエスト受信
/実行リクエスト停止要求受信部301からステップS
91のリクエストの実行要求と、ステップS92のリク
エストの停止要求、CPUサーバー情報要求依頼受信/
CPUサーバー情報送信部302からステップS93の
情報提供依頼と、ステップS94でCPUサーバー内で
正常終了したリクエストの有無、のいずれかのイベント
を待つ。そして、リクエストの実行と停止要求、CPU
サーバーの情報提供依頼のいずれかが確認されたら、個
々の処理を実行しイベント待に戻す。即ち、ステップS
91でリクエストの実行依頼が確認されれば、ステップ
S95で受理したリクエストを起動し、起動終了を実行
リクエスト受信/実行リクエスト停止要求受信部301
へ返答する。また、ステップS92でリクエストの停止
依頼があれば、ステップS96で指定されたリクエスト
を停止し、停止終了を実行リクエスト受信/実行リクエ
スト停止要求受信部301へ返答する。さらに、ステッ
プS93で情報提供依頼があれば、ステップS97で実
行中のリクエストに関する情報を収集し、CPUサーバ
ー情報要求依頼受信/CPUサーバー情報送信部302
へ連絡する。さらに、ステップS94でCPUサーバー
内で正常終了したリクエストが新たに検出された場合
は、ステップS98でCPUサーバー情報要求依頼受信
/CPUサーバー情報送信部302へ終了リクエストを
通知し、一定時間待った後、ステップS99で送信完了
通知があるかどうかを確認する。そして、送信完了通知
があれば初期のイベント待へ帰るが、送信完了通知がな
い場合は、終了リクエストの検出と同時にリクエストの
実行と停止要求、CPUサーバーの情報提供依頼のいず
れかが起こったと考えられるため、ステップS91aで
リクエストの実行要求と、ステップS92aで停止要
求、ステップS93aでCPUサーバーの情報提供依頼
のいずれかがあるかを確認した後、あれば、ステップS
95a,S96a,S97aでその依頼を再度実行しC
PUサーバー情報要求依頼受信/CPUサーバー情報送
信部302へ終了リクエストを通知する。実行リクエス
ト情報制御監視部303のこの処理で、リクエストサー
バー200の各送信部とCPUサーバーの各送信部の間
で発生する通信のデッドロック解除処理を行う。
【0030】各構成部が以上で説明した処理手順に従い
お互いに情報をやり取りすることにより、クライアント
が要求したリクエストを将来負荷状況が下がる可能性を
持つCPUサーバーに最適に割り振るとともに、空き状
態にあるCPUサーバーをより有効に活用することがで
きる。
【0031】なお、本実施例ではクライアントとリクエ
ストサーバーとCPUサーバーが別々の計算機のごとく
説明を行ったが、物理的に計算機が異なっている必要は
ない。
【0032】
【発明の効果】以上のように本発明によれば、CPUサ
ーバー情報を一元管理することで個々のCPUサーバー
の設定を変更することなく分散コンピューティングシス
テムの構成変更に柔軟な対応を取ることができ、リクエ
スト起動時点での最新情報に基づいて常に最適にCPU
サーバーを選択でき、また、空き状態にあるCPUサー
バーをより有効に活用することができ、さらに、CPU
サーバーにリクエストを最適に割り振ることができ、そ
の実用的効果は大きい。
【図面の簡単な説明】
【図1】本発明の一実施例を示す分散コンピューティン
グシステムのブロック図である。
【図2】図1のリクエストサーバーにおけるキューイン
グ情報205の構成図である。
【図3】図1のリクエストサーバーにおけるCPUサー
バー情報206の構成図である。
【図4】図1のリクエストサーバーにおける実行リクエ
スト情報207の構成図である。
【図5】図1のクライアントにおけるキューイングリク
エスト送信部101の処理フローである。
【図6】図1のリクエストサーバーにおけるキューイン
グリクエスト受信部201の処理フローである。
【図7】図1のリクエストサーバーにおけるCPUサー
バー情報要求依頼/CPUサーバー情報受信部202の
処理フローである。
【図8】図1のリクエストサーバーにおける実行リクエ
スト送信/実行リクエスト停止要求送信部203の処理
フローである。
【図9】図1のリクエストサーバーにおけるCPUサー
バー評価部204の処理フロー(その1)である。
【図10】図1のリクエストサーバーにおけるCPUサ
ーバー評価部204の処理フロー(その2)である。
【図11】図9および図10の処理フロー(その2)に
おけるステップS51,S60を一部拡張した処理フロ
ーである。
【図12】図1のCPUサーバーにおける実行リクエス
ト受信/実行リクエスト停止要求受信部301の処理フ
ローである。
【図13】図1のCPUサーバーにおけるCPUサーバ
ー情報要求依頼受信/CPUサーバー情報送信部302
の処理フローである。
【図14】図1のCPUサーバーにおける実行リクエス
ト情報制御監視部303の処理フローである。
【図15】従来の分散コンピューチングシステムを示す
ブロック図である。
【符号の説明】
100、110、120、130 クライアント 101 キューイングリクエスト送信部 200 リクエストサーバー 201 キューイングリクエスト受信部 202 CPUサーバー情報要求依頼/CPUサーバ
ー情報受信部 203 実行リクエスト送信/実行リクエスト停止要
求送信部 204 CPUサーバー評価部 205 キューイング情報 206 CPUサーバー情報 207 実行リクエスト情報 300、310、320、330 CPUサーバー 301 実行リクエスト受信/実行リクエスト停止要
求受信部 302 CPUサーバー情報要求依頼受信/CPUサ
ーバー情報送信部 303 実行リクエスト情報制御監視部

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 特定のプログラムを専用に処理する複数
    のCPUサーバーと、該プログラム実行のリクエストを
    キューイング依頼する複数のクライアントと、該クライ
    アントから受けたリクエストの順に、該複数のCPUサ
    ーバーとの交信によりCPUサーバー起動および停止時
    に更新された最新のCPUサーバーの処理情報を評価し
    て実行すべき適切なCPUサーバーにリクエスト依頼
    し、かつ、該クライアントから受けたリクエストのキュ
    ーイングを行うリクエストサーバーとを有する分散コン
    ピューティングシステム。
  2. 【請求項2】 前記リクエストサーバーは、CPUサー
    バー稼働情報からアイドル中のCPUサーバーを確認
    し、かつキューイングされているリクエストがない場合
    に、すでに実行中のリクエストの中から資源利用量の少
    ないリクエストを選択して、アイドル中のCPUサーバ
    ーにリクエスト実行要求を依頼する構成とした請求項1
    記載の分散コンピューティングシステム。
  3. 【請求項3】 リクエストサーバーにおけるCPUサー
    バー選択方法として、実行中のリクエストの処理能力量
    を示す資源利用量を評価して実行すべき最適なCPUサ
    ーバーを選択する構成とした請求項1記載の分散コンピ
    ューティングシステム。
JP5210749A 1993-08-25 1993-08-25 分散コンピューティングシステム Withdrawn JPH0764892A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5210749A JPH0764892A (ja) 1993-08-25 1993-08-25 分散コンピューティングシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5210749A JPH0764892A (ja) 1993-08-25 1993-08-25 分散コンピューティングシステム

Publications (1)

Publication Number Publication Date
JPH0764892A true JPH0764892A (ja) 1995-03-10

Family

ID=16594493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5210749A Withdrawn JPH0764892A (ja) 1993-08-25 1993-08-25 分散コンピューティングシステム

Country Status (1)

Country Link
JP (1) JPH0764892A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052542A (ja) * 2005-08-16 2007-03-01 Nomura Research Institute Ltd 負荷分散処理システム及び装置
US7720949B2 (en) 2004-03-01 2010-05-18 Fujitsu Limited Method and apparatus for relay control and computer product
JP2014508970A (ja) * 2011-03-09 2014-04-10 エスケーテレコム株式会社 クラウドストレージシステムのデータ暗号化処理装置及び方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720949B2 (en) 2004-03-01 2010-05-18 Fujitsu Limited Method and apparatus for relay control and computer product
JP2007052542A (ja) * 2005-08-16 2007-03-01 Nomura Research Institute Ltd 負荷分散処理システム及び装置
JP4515354B2 (ja) * 2005-08-16 2010-07-28 株式会社野村総合研究所 負荷分散処理システム及び装置
JP2014508970A (ja) * 2011-03-09 2014-04-10 エスケーテレコム株式会社 クラウドストレージシステムのデータ暗号化処理装置及び方法
US9231922B2 (en) 2011-03-09 2016-01-05 Sk Telecom Co., Ltd. Cloud storage system, data encryption processing device and data encryption method in cloud storage system

Similar Documents

Publication Publication Date Title
KR100383381B1 (ko) 제한된메모리컴퓨터시스템에서의클라이언트관리흐름제어를위한방법과장치
US5526492A (en) System having arbitrary master computer for selecting server and switching server to another server when selected processor malfunctions based upon priority order in connection request
US5799173A (en) Dynamic workload balancing
JP5088234B2 (ja) メッセージ紐付け処理装置、方法及びプログラム
US5987502A (en) Workload management in an asynchronous client/server computer system
Krueger et al. Adaptive location policies for global scheduling
US8930521B2 (en) Method, apparatus, and computer program product for enabling monitoring of a resource
WO2001065357A1 (en) Processing load distribution techniques for call centers and other processing systems
JP4992408B2 (ja) ジョブ割当プログラム、方法及び装置
JPH11282695A (ja) 多重システム・クラスタ内のサ―バの数を制御する方法及び装置
JPWO2007072544A1 (ja) 情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプログラム
CN106462593B (zh) 大规模并行处理数据库的系统和方法
CN115102839A (zh) 一种主从节点选举方法、装置、设备及介质
WO2003083683A2 (en) Most eligible server in a common work queue environment
US7111063B1 (en) Distributed computer network having a rotating message delivery system suitable for use in load balancing and/or messaging failover
WO2008058898A1 (en) Throttling an asynchronous remote copying system
US6704766B1 (en) Method and apparatus for dynamically controlling the execution of a request handler on a processor resource
EP2472416B1 (en) Data query system and constructing method thereof and corresponding data query method
JPH0764892A (ja) 分散コンピューティングシステム
US20050265362A1 (en) Message relay program and message relay device
CN115550284A (zh) 消息处理方法、装置和设备
JP5045576B2 (ja) マルチプロセッサシステム及びプログラム実行方法
JP2011070435A (ja) 計算機システム、リクエスト処理方法及びサーバ装置
JP3487515B2 (ja) 分散処理システムおよび分散処理方法
JP2000047890A (ja) 分散オブジェクト管理システムとそのオブジェクト選択方法およびその処理プログラムを記録した記録媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20001031