JP3422400B2 - 分散処理システム - Google Patents
分散処理システムInfo
- Publication number
- JP3422400B2 JP3422400B2 JP07500296A JP7500296A JP3422400B2 JP 3422400 B2 JP3422400 B2 JP 3422400B2 JP 07500296 A JP07500296 A JP 07500296A JP 7500296 A JP7500296 A JP 7500296A JP 3422400 B2 JP3422400 B2 JP 3422400B2
- Authority
- JP
- Japan
- Prior art keywords
- server
- processing
- request
- alternative
- client
- 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
Links
Landscapes
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Description
【0001】
【発明の属する技術分野】この発明は、処理要求を発行
するクライアントと該処理要求を実行する複数のサーバ
とを有する分散処理システムに係り、特に、その複数の
サーバのそれぞれへ最適な負荷分散を行う分散処理シス
テムに関する。
するクライアントと該処理要求を実行する複数のサーバ
とを有する分散処理システムに係り、特に、その複数の
サーバのそれぞれへ最適な負荷分散を行う分散処理シス
テムに関する。
【0002】
【従来の技術】図10は、例えば特開平2−27556
3号公報に開示された従来の分散処理システムの概略の
構成を示すブロック図であり、同一機能を有する複数の
サーバの運転状況及び負荷状況を管理するサーバ管理装
置を設け、該サーバ管理装置が各サーバの負荷状況に応
じてクライアントからの処理要求を各サーバに配布する
ものである。図において、121は上記サーバ管理装
置、122は同一機能を持つ複数のサーバから成るサー
バ群、123は処理要求を発行するクライアントであ
る。
3号公報に開示された従来の分散処理システムの概略の
構成を示すブロック図であり、同一機能を有する複数の
サーバの運転状況及び負荷状況を管理するサーバ管理装
置を設け、該サーバ管理装置が各サーバの負荷状況に応
じてクライアントからの処理要求を各サーバに配布する
ものである。図において、121は上記サーバ管理装
置、122は同一機能を持つ複数のサーバから成るサー
バ群、123は処理要求を発行するクライアントであ
る。
【0003】次に動作について説明する。サーバ管理装
置121は、サーバ群122の各サーバの運転状況及び
負荷状況を管理しており、クライアント123がサーバ
管理装置121に処理要求を発行すると、各サーバの運
転状況及び負荷状況に応じて該処理要求を適宜各サーバ
に分配して、各サーバの負荷を均一にする。
置121は、サーバ群122の各サーバの運転状況及び
負荷状況を管理しており、クライアント123がサーバ
管理装置121に処理要求を発行すると、各サーバの運
転状況及び負荷状況に応じて該処理要求を適宜各サーバ
に分配して、各サーバの負荷を均一にする。
【0004】図11は、例えば特開平4−271455
号公報に開示された他の従来の分散処理システムの概略
の構成を示すブロック図であり、処理要求を発行するク
ライアントが同一機能を持つ全てのサーバの負荷状況を
直接調査し、最も負荷の軽いサーバに該処理要求を発行
するものである。図において、131は処理要求を発す
るクライアント、132及び133は処理を実行するサ
ーバ、134はクライアント131とサーバ132,1
33とを接続する通信路である。
号公報に開示された他の従来の分散処理システムの概略
の構成を示すブロック図であり、処理要求を発行するク
ライアントが同一機能を持つ全てのサーバの負荷状況を
直接調査し、最も負荷の軽いサーバに該処理要求を発行
するものである。図において、131は処理要求を発す
るクライアント、132及び133は処理を実行するサ
ーバ、134はクライアント131とサーバ132,1
33とを接続する通信路である。
【0005】次に動作について説明する。図12は、ク
ライアント131と各サーバ132,133間の応答を
模式的に示す図である。この図12を参照しながら図1
1に示した分散処理システムの動作を説明する。
ライアント131と各サーバ132,133間の応答を
模式的に示す図である。この図12を参照しながら図1
1に示した分散処理システムの動作を説明する。
【0006】クライアント131は、処理要求を発行す
る際、まずサーバ132に該サーバ132の有する負荷
の状態を通知することを要求する(負荷通知要求S
1)。サーバ132はこの負荷通知要求S1に応じて現
在有する負荷の状況をクライアント131に報告する
(負荷応答S2)。クライアント131は、次に、サー
バ133に対して同様に負荷通知要求S3を発し、サー
バ133はこれに応じて負荷応答S4をクライアント1
31に送付する。クライアント131は、このようにし
て全てのサーバ132及びサーバ133の負荷状況を直
接調査し、最も負荷の少ないサーバに処理要求を実行さ
せるように選択する。この選択されたサーバがサーバ1
33であるとすると、クライアント131は該サーバ1
33に対して処理要求S5を発行し、サーバ133はこ
の処理要求S5に応じた処理を行いその処理結果をクラ
イアント131に送付する(処理結果応答S6)。これ
により、クライアント131は常に最も負荷の少ないサ
ーバを選択して処理要求を発行することとなり、漸次各
サーバの負荷が均一化されるようになる。
る際、まずサーバ132に該サーバ132の有する負荷
の状態を通知することを要求する(負荷通知要求S
1)。サーバ132はこの負荷通知要求S1に応じて現
在有する負荷の状況をクライアント131に報告する
(負荷応答S2)。クライアント131は、次に、サー
バ133に対して同様に負荷通知要求S3を発し、サー
バ133はこれに応じて負荷応答S4をクライアント1
31に送付する。クライアント131は、このようにし
て全てのサーバ132及びサーバ133の負荷状況を直
接調査し、最も負荷の少ないサーバに処理要求を実行さ
せるように選択する。この選択されたサーバがサーバ1
33であるとすると、クライアント131は該サーバ1
33に対して処理要求S5を発行し、サーバ133はこ
の処理要求S5に応じた処理を行いその処理結果をクラ
イアント131に送付する(処理結果応答S6)。これ
により、クライアント131は常に最も負荷の少ないサ
ーバを選択して処理要求を発行することとなり、漸次各
サーバの負荷が均一化されるようになる。
【0007】
【発明が解決しようとする課題】従来の分散処理システ
ムは以上のように構成されているので、サーバ管理装置
121が各サーバの負荷状況に応じて処理要求を按配す
る図10に示した分散処理システムでは、サーバ管理装
置121という固有の設備が必要となり、またサーバ管
理装置121の障害が当該分散処理システム全体の障害
となってしまうなどの課題があった。
ムは以上のように構成されているので、サーバ管理装置
121が各サーバの負荷状況に応じて処理要求を按配す
る図10に示した分散処理システムでは、サーバ管理装
置121という固有の設備が必要となり、またサーバ管
理装置121の障害が当該分散処理システム全体の障害
となってしまうなどの課題があった。
【0008】また、クライアント131が全てのサーバ
132,133の負荷状況を直接調査する図11,図1
2に示した分散処理システムでは、クライアント131
と各サーバ132,133とを結ぶ通信路134の負荷
が増大してしまうという課題があり、いずれの分散処理
システムも、システム全体の可用性を保った負荷分散が
できないという課題があった。
132,133の負荷状況を直接調査する図11,図1
2に示した分散処理システムでは、クライアント131
と各サーバ132,133とを結ぶ通信路134の負荷
が増大してしまうという課題があり、いずれの分散処理
システムも、システム全体の可用性を保った負荷分散が
できないという課題があった。
【0009】この発明は上記のような課題を解決するた
めになされたもので、専用のサーバ管理装置を必要とせ
ず、また各サーバとクライアント間の通信路に大きな負
荷を与えることなくシステムの負荷を分散して各サーバ
の負荷を均一化することができ、さらにサーバの異常動
作を回避できる分散処理システムを得ることを目的とす
る。
めになされたもので、専用のサーバ管理装置を必要とせ
ず、また各サーバとクライアント間の通信路に大きな負
荷を与えることなくシステムの負荷を分散して各サーバ
の負荷を均一化することができ、さらにサーバの異常動
作を回避できる分散処理システムを得ることを目的とす
る。
【0010】
【課題を解決するための手段】請求項1記載の発明に係
る分散処理システムは、クライアントに処理要求を実行
すべきサーバを特定するサーバ情報テーブルを設け、か
つ、少なくとも1個のサーバに、複数の代替サーバに対
応して代替サーバから単位時間当たりに転送された処理
委託要求の数を格納する代替サーバテーブルと、他のサ
ーバから転送された処理委託要求の所定時間当たりの数
を計測し、該計測結果を代替サーバテーブルに格納する
代替サーバ管理手段と、クライアントからの処理要求に
対して自身のサーバが過大負荷状態でない場合には、該
処理要求を自身のサーバにて実行させ、過大負荷状態で
ある場合には、該処理要求を処理委託要求として送り、
他のサーバからの処理貰い受け要求に対して自身のサー
バが過小負荷状態である場 合には、該処理貰い受け要求
を送る処理要求貰い受け手段と、処理要求貰い受け手段
から処理委託要求が送られた場合には、代替サーバテー
ブルを検索して単位時間当たりに転送された処理委託要
求の数が最も少ない代替サーバを決定し、該代替サーバ
に該送られた処理委託要求を回送させ、該処理要求貰い
受け手段から処理貰い受け要求が送られた場合には、該
代替サーバテーブルを検索して単位時間当たりに転送さ
れた処理委託要求の数が最も多い代替サーバを決定し、
該代替サーバに該送られた処理貰い受け要求を回送させ
る代替サーバ決定手段とを設けたものである。
る分散処理システムは、クライアントに処理要求を実行
すべきサーバを特定するサーバ情報テーブルを設け、か
つ、少なくとも1個のサーバに、複数の代替サーバに対
応して代替サーバから単位時間当たりに転送された処理
委託要求の数を格納する代替サーバテーブルと、他のサ
ーバから転送された処理委託要求の所定時間当たりの数
を計測し、該計測結果を代替サーバテーブルに格納する
代替サーバ管理手段と、クライアントからの処理要求に
対して自身のサーバが過大負荷状態でない場合には、該
処理要求を自身のサーバにて実行させ、過大負荷状態で
ある場合には、該処理要求を処理委託要求として送り、
他のサーバからの処理貰い受け要求に対して自身のサー
バが過小負荷状態である場 合には、該処理貰い受け要求
を送る処理要求貰い受け手段と、処理要求貰い受け手段
から処理委託要求が送られた場合には、代替サーバテー
ブルを検索して単位時間当たりに転送された処理委託要
求の数が最も少ない代替サーバを決定し、該代替サーバ
に該送られた処理委託要求を回送させ、該処理要求貰い
受け手段から処理貰い受け要求が送られた場合には、該
代替サーバテーブルを検索して単位時間当たりに転送さ
れた処理委託要求の数が最も多い代替サーバを決定し、
該代替サーバに該送られた処理貰い受け要求を回送させ
る代替サーバ決定手段とを設けたものである。
【0011】請求項2記載の発明に係る分散処理システ
ムは、サーバ情報テーブルに、処理要求に対して処理結
果を返送したサーバを記録したものであり、クライアン
トには、該処理結果の返送された処理要求と同種の処理
要求は以降、サーバ情報テーブルに記録されたサーバに
発行する処理要求発行手段を設けたものである。
ムは、サーバ情報テーブルに、処理要求に対して処理結
果を返送したサーバを記録したものであり、クライアン
トには、該処理結果の返送された処理要求と同種の処理
要求は以降、サーバ情報テーブルに記録されたサーバに
発行する処理要求発行手段を設けたものである。
【0012】請求項3記載の発明に係る分散処理システ
ムは、サーバ情報テーブルに、サーバ毎に単位時間当た
りの処理要求発行数、処理結果受信数及び平均応答時間
を記録したものであり、処理要求発行手段は、該サーバ
情報テーブルの内容に基づいて処理要求を発行するサー
バを決定するものである。
ムは、サーバ情報テーブルに、サーバ毎に単位時間当た
りの処理要求発行数、処理結果受信数及び平均応答時間
を記録したものであり、処理要求発行手段は、該サーバ
情報テーブルの内容に基づいて処理要求を発行するサー
バを決定するものである。
【0013】請求項4記載の発明に係る分散処理システ
ムは、代替サーバ管理手段が、処理委託要求と処理貰い
受け要求とを監視し、これまでに登録されていないサー
バからの処理委託要求ないし処理貰い受け要求であると
きに該サーバを代替テーブルに登録し、かつ一定時間停
止中であると判明したサーバを代替テーブルから抹消す
る機能を有するものである。
ムは、代替サーバ管理手段が、処理委託要求と処理貰い
受け要求とを監視し、これまでに登録されていないサー
バからの処理委託要求ないし処理貰い受け要求であると
きに該サーバを代替テーブルに登録し、かつ一定時間停
止中であると判明したサーバを代替テーブルから抹消す
る機能を有するものである。
【0014】
【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1. 図1はこの発明の実施の形態1による分散処理システム
の構成を示すブロック図であり、図において、11は処
理要求を発行するクライアント、12は処理がどのサー
バで実行できるかを管理するために処理要求の処理結果
を返送したサーバあるいは各サーバ毎の単位時間当たり
の処理要求発行数、処理結果受信数及び平均応答時間を
記録するサーバ情報テーブル、13は処理要求を発行す
る対象となるサーバをサーバ情報テーブル12から検索
決定し、該検索決定したサーバに処理要求を発行し、該
サーバからの応答を受付け、サーバ情報テーブル12を
更新し、処理要求プログラムに応答結果を伝えるサーバ
情報制御部(処理要求発行手段)、14はサーバとの通
信を行う通信部、15は処理要求をサーバ情報制御部1
3に発行する処理要求プログラムである。クライアント
11は、サーバ情報テーブル12、サーバ情報制御部1
3、通信部14及び処理要求プログラム15からなる。
説明する。 実施の形態1. 図1はこの発明の実施の形態1による分散処理システム
の構成を示すブロック図であり、図において、11は処
理要求を発行するクライアント、12は処理がどのサー
バで実行できるかを管理するために処理要求の処理結果
を返送したサーバあるいは各サーバ毎の単位時間当たり
の処理要求発行数、処理結果受信数及び平均応答時間を
記録するサーバ情報テーブル、13は処理要求を発行す
る対象となるサーバをサーバ情報テーブル12から検索
決定し、該検索決定したサーバに処理要求を発行し、該
サーバからの応答を受付け、サーバ情報テーブル12を
更新し、処理要求プログラムに応答結果を伝えるサーバ
情報制御部(処理要求発行手段)、14はサーバとの通
信を行う通信部、15は処理要求をサーバ情報制御部1
3に発行する処理要求プログラムである。クライアント
11は、サーバ情報テーブル12、サーバ情報制御部1
3、通信部14及び処理要求プログラム15からなる。
【0015】20はクライアント11と該クライアント
11の発行した処理要求を実行するための複数のサーバ
のそれぞれとを結ぶ通信路であって、該通信路20を伝
播する処理要求には該処理要求を実行すべきサーバを特
定する情報が含まれている。
11の発行した処理要求を実行するための複数のサーバ
のそれぞれとを結ぶ通信路であって、該通信路20を伝
播する処理要求には該処理要求を実行すべきサーバを特
定する情報が含まれている。
【0016】21は通信路20を介してクライアント1
1と連結された複数のサーバのうちの一つを代表的に表
している。22はクライアント11からの処理要求を自
身に代替して行う代替サーバのアドレスや該代替サーバ
の稼働情報等の代替サーバに関する情報を格納する代替
サーバテーブル、23は代替サーバテーブル22を検索
して、クライアント11からの処理要求を自身に代替し
て処理する代替サーバを決定し、該代替サーバに処理委
託要求として転送する処理を行う転送処理部(代替サー
バ決定手段)、24は定期的に他のサーバから転送され
た処理委託要求の数及び自身の処理した処理要求の数等
のサーバ21の負荷の状況を監視してそれにより代替サ
ーバテーブル22を更新し、さらに過小負荷の時は処理
貰い受け要求を作成し、また、一定期間停止中のサーバ
を代替サーバテーブル22から抹消する負荷監視部(代
替サーバ管理手段)である。25はクライアント11が
発行した処理要求や他のサーバから転送されてきた処理
委託要求や処理貰い受け要求を受け付け、要求内容およ
び負荷状況により代替サーバテーブル22を更新し、該
処理要求や処理委託要求を当該サーバ21で実行するも
のと他のサーバに転送するために転送処理部23に送付
するものとに振り分ける受信処理部(処理要求貰い受け
手段)、26は受信処理部25により実行するように振
り分けられた処理要求や処理委託要求により要求された
処理を実行する処理要求実行部、27は処理要求実行部
26により実行された処理の実行結果や代替サーバに転
送する処理委託要求や処理貰い受け要求を送信する送信
処理部(処理要求委託手段)、28は通信路20を介し
てクライアント11の通信部14と連結され、クライア
ント11や他のサーバとの通信を行う通信部、29は受
信処理部25で振り分けられた処理要求実行部26で実
行すべき処理要求や処理委託要求を蓄える待ち行列であ
る。サーバ21は、代替サーバテーブル22、転送処理
部23、負荷監視部24、受信処理部25、処理要求実
行部26、送信処理部27、通信部28及び待ち行列2
9とから成る。
1と連結された複数のサーバのうちの一つを代表的に表
している。22はクライアント11からの処理要求を自
身に代替して行う代替サーバのアドレスや該代替サーバ
の稼働情報等の代替サーバに関する情報を格納する代替
サーバテーブル、23は代替サーバテーブル22を検索
して、クライアント11からの処理要求を自身に代替し
て処理する代替サーバを決定し、該代替サーバに処理委
託要求として転送する処理を行う転送処理部(代替サー
バ決定手段)、24は定期的に他のサーバから転送され
た処理委託要求の数及び自身の処理した処理要求の数等
のサーバ21の負荷の状況を監視してそれにより代替サ
ーバテーブル22を更新し、さらに過小負荷の時は処理
貰い受け要求を作成し、また、一定期間停止中のサーバ
を代替サーバテーブル22から抹消する負荷監視部(代
替サーバ管理手段)である。25はクライアント11が
発行した処理要求や他のサーバから転送されてきた処理
委託要求や処理貰い受け要求を受け付け、要求内容およ
び負荷状況により代替サーバテーブル22を更新し、該
処理要求や処理委託要求を当該サーバ21で実行するも
のと他のサーバに転送するために転送処理部23に送付
するものとに振り分ける受信処理部(処理要求貰い受け
手段)、26は受信処理部25により実行するように振
り分けられた処理要求や処理委託要求により要求された
処理を実行する処理要求実行部、27は処理要求実行部
26により実行された処理の実行結果や代替サーバに転
送する処理委託要求や処理貰い受け要求を送信する送信
処理部(処理要求委託手段)、28は通信路20を介し
てクライアント11の通信部14と連結され、クライア
ント11や他のサーバとの通信を行う通信部、29は受
信処理部25で振り分けられた処理要求実行部26で実
行すべき処理要求や処理委託要求を蓄える待ち行列であ
る。サーバ21は、代替サーバテーブル22、転送処理
部23、負荷監視部24、受信処理部25、処理要求実
行部26、送信処理部27、通信部28及び待ち行列2
9とから成る。
【0017】図2は代替サーバテーブル22の構成の一
例を示す図であり、処理要求に対応する処理毎にこの処
理を代替して行うことのできる代替サーバを示すテーブ
ル1と、該代替サーバのアドレス、該代替サーバから単
位時間当たりに転送されてきた処理委託要求数、この処
理委託要求数を計測するために負荷監視部中に設けられ
た図示しないカウンタのカウンタ値、代替サーバの稼動
状況を表す情報及び該代替サーバが停止したと判断した
時刻を表示するテーブル2とに分けて設定されている。
また、他のサーバからの処理委託要求や処理貰い受け要
求を監視してこれまでに代替サーバテーブル22に登録
されていない未知のサーバからの要求であるときに該代
替サーバテーブル22に該サーバを登録できるように空
のエントリが設けられている。
例を示す図であり、処理要求に対応する処理毎にこの処
理を代替して行うことのできる代替サーバを示すテーブ
ル1と、該代替サーバのアドレス、該代替サーバから単
位時間当たりに転送されてきた処理委託要求数、この処
理委託要求数を計測するために負荷監視部中に設けられ
た図示しないカウンタのカウンタ値、代替サーバの稼動
状況を表す情報及び該代替サーバが停止したと判断した
時刻を表示するテーブル2とに分けて設定されている。
また、他のサーバからの処理委託要求や処理貰い受け要
求を監視してこれまでに代替サーバテーブル22に登録
されていない未知のサーバからの要求であるときに該代
替サーバテーブル22に該サーバを登録できるように空
のエントリが設けられている。
【0018】図2において、この分散処理システムが稼
働を開始した直後の初期状態には、単位時間当たりの処
理委託要求数とカウンタ値とは0、稼動状況は稼動中、
代替サーバが停止したと判断した時刻は0と設定され
る。
働を開始した直後の初期状態には、単位時間当たりの処
理委託要求数とカウンタ値とは0、稼動状況は稼動中、
代替サーバが停止したと判断した時刻は0と設定され
る。
【0019】カウンタ値は受信処理部25において処理
委託要求及び処理貰い受け要求の返答を受信する度にカ
ウントアップされる。単位時間当たりの処理委託要求数
は、負荷監視部24により定期的にカウンタ値が移さ
れ、負荷監視部24はそれにより処理委託要求及び処理
貰い受け要求の頻度の高いサーバを知ることができる。
その後カウンタ値は0クリアされ、処理委託要求及び処
理貰い受け要求の返答の新たな計測を開始する。
委託要求及び処理貰い受け要求の返答を受信する度にカ
ウントアップされる。単位時間当たりの処理委託要求数
は、負荷監視部24により定期的にカウンタ値が移さ
れ、負荷監視部24はそれにより処理委託要求及び処理
貰い受け要求の頻度の高いサーバを知ることができる。
その後カウンタ値は0クリアされ、処理委託要求及び処
理貰い受け要求の返答の新たな計測を開始する。
【0020】稼動状況は転送処理部23において転送が
失敗したときに停止中、受信処理部25において処理委
託要求や処理貰い受け要求の返答を受信したときに稼動
中とされる。稼動状況の停止時刻は転送処理部23にお
いて転送が失敗したときにセットされ、受信処理部25
において処理委託要求や処理貰い受け要求の返答を受信
したときクリアされる。
失敗したときに停止中、受信処理部25において処理委
託要求や処理貰い受け要求の返答を受信したときに稼動
中とされる。稼動状況の停止時刻は転送処理部23にお
いて転送が失敗したときにセットされ、受信処理部25
において処理委託要求や処理貰い受け要求の返答を受信
したときクリアされる。
【0021】図3はクライアント11が持つサーバ情報
テーブル12の構成を示す図である。このサーバ情報テ
ーブル12は、処理要求毎に該処理要求を実行するサー
バを特定する情報を有している。
テーブル12の構成を示す図である。このサーバ情報テ
ーブル12は、処理要求毎に該処理要求を実行するサー
バを特定する情報を有している。
【0022】図4はこの発明の実施の形態1におけるサ
ーバ21の受信処理の流れを示すフローチャートであ
る。
ーバ21の受信処理の流れを示すフローチャートであ
る。
【0023】次に、図4のフローチャートを参照しなが
ら動作について説明する。受信処理動作が開始される
と、まず、サーバ21は、ステップST401におい
て、通信部28を介して受信した信号が他のサーバから
の処理貰い受け要求であるか否かを判定し、受信した信
号が他のサーバからの処理貰い受け要求である場合に
は、ステップST412において、受信処理部25によ
り代替サーバテーブル22の稼動状況の更新やエントリ
の追加を行う。これにより、停止中から稼動中になった
サーバや新規に追加されたサーバを知ることができる。
ら動作について説明する。受信処理動作が開始される
と、まず、サーバ21は、ステップST401におい
て、通信部28を介して受信した信号が他のサーバから
の処理貰い受け要求であるか否かを判定し、受信した信
号が他のサーバからの処理貰い受け要求である場合に
は、ステップST412において、受信処理部25によ
り代替サーバテーブル22の稼動状況の更新やエントリ
の追加を行う。これにより、停止中から稼動中になった
サーバや新規に追加されたサーバを知ることができる。
【0024】次に、サーバ21は、ステップST403
において、待ち行列29中の処理要求の数を計測して自
身が過小負荷状態でないことを調べる。この判断基準
は、例えば待ち行列29中に貯えられた待機中の処理要
求が2個以下の場合であるとし、この場合にサーバ21
は自身が過小負荷状態にあると判断する。
において、待ち行列29中の処理要求の数を計測して自
身が過小負荷状態でないことを調べる。この判断基準
は、例えば待ち行列29中に貯えられた待機中の処理要
求が2個以下の場合であるとし、この場合にサーバ21
は自身が過小負荷状態にあると判断する。
【0025】ステップST403において、サーバ21
が過小負荷状態ではないと判断された場合には、ステッ
プST411において待ち行列29で待機中の未処理の
処理要求を上記処理貰い受け要求の返答として送信処理
部27に送付する。これにより、サーバ21自身は待機
中の未処理の処理要求を減らし、他の過小負荷状態のサ
ーバが該未処理の処理要求を受け入れることにより、各
サーバ間の負荷の均等化が図られる。
が過小負荷状態ではないと判断された場合には、ステッ
プST411において待ち行列29で待機中の未処理の
処理要求を上記処理貰い受け要求の返答として送信処理
部27に送付する。これにより、サーバ21自身は待機
中の未処理の処理要求を減らし、他の過小負荷状態のサ
ーバが該未処理の処理要求を受け入れることにより、各
サーバ間の負荷の均等化が図られる。
【0026】ステップST403において、サーバ21
が過小負荷状態であると判断された場合には、処理貰い
受け要求を他のサーバに回送するために、ステップST
410に進み、受信処理部25は、該処理貰い受け要求
を転送処理部23に送信し、該転送処理部23から通信
部28を介して該処理貰い受け要求を他のサーバに回送
する。
が過小負荷状態であると判断された場合には、処理貰い
受け要求を他のサーバに回送するために、ステップST
410に進み、受信処理部25は、該処理貰い受け要求
を転送処理部23に送信し、該転送処理部23から通信
部28を介して該処理貰い受け要求を他のサーバに回送
する。
【0027】ステップST401において、受信処理部
25の受信した信号が他のサーバからの処理貰い受け信
号ではないと判明した場合には、ステップST402に
進み、該ステップST402において、受信した信号が
自身が発行した処理貰い受け要求の返答であるか否かを
判断する。
25の受信した信号が他のサーバからの処理貰い受け信
号ではないと判明した場合には、ステップST402に
進み、該ステップST402において、受信した信号が
自身が発行した処理貰い受け要求の返答であるか否かを
判断する。
【0028】ステップST402において、受信した信
号が、自身が発行した処理貰い受け要求の返答であると
判断した場合には、ステップST407において、当該
受信信号がいずれのサーバからの処理を委託する処理委
託要求であるか否かを判断する。すなわち、当該受信信
号が、どのサーバも委託する処理要求がない拒否応答で
あるか否かを判断する。
号が、自身が発行した処理貰い受け要求の返答であると
判断した場合には、ステップST407において、当該
受信信号がいずれのサーバからの処理を委託する処理委
託要求であるか否かを判断する。すなわち、当該受信信
号が、どのサーバも委託する処理要求がない拒否応答で
あるか否かを判断する。
【0029】もし、受信信号が拒否応答である場合に
は、サーバ21の受信処理は終了する。受信信号が拒否
応答ではない肯定応答である場合、即ちいずれかのサー
バから処理委託要求がある場合には、ステップST40
6において代替サーバテーブル22のカウンタを更新
し、以降、クライアント11からの処理要求を自身で処
理する工程と同一の工程を踏む。これにより、自身が過
小負荷状態で他のサーバが過大負荷状態である場合に、
該他のサーバの負荷を過小負荷状態のサーバ21が処理
することにより負荷均等化がなされる。
は、サーバ21の受信処理は終了する。受信信号が拒否
応答ではない肯定応答である場合、即ちいずれかのサー
バから処理委託要求がある場合には、ステップST40
6において代替サーバテーブル22のカウンタを更新
し、以降、クライアント11からの処理要求を自身で処
理する工程と同一の工程を踏む。これにより、自身が過
小負荷状態で他のサーバが過大負荷状態である場合に、
該他のサーバの負荷を過小負荷状態のサーバ21が処理
することにより負荷均等化がなされる。
【0030】ステップST402において、受信した信
号が、自身が発行した処理貰い受け要求の返答ではない
と判断した場合には、ステップST404において該受
信した信号が他のサーバからの処理委託要求であるか否
かを判定する。この判定の結果、受信信号は他のサーバ
からの処理委託要求であると判明すると、ステップST
405において代替サーバテーブル22の稼動状況とカ
ウンタ値の更新やエントリの追加を行う。以降、クライ
アント11からの処理要求をサーバ21が自身で処理す
る工程と同一の工程を踏む。これにより停止中から稼動
中になったサーバや新規に追加されたサーバを知ること
ができる。
号が、自身が発行した処理貰い受け要求の返答ではない
と判断した場合には、ステップST404において該受
信した信号が他のサーバからの処理委託要求であるか否
かを判定する。この判定の結果、受信信号は他のサーバ
からの処理委託要求であると判明すると、ステップST
405において代替サーバテーブル22の稼動状況とカ
ウンタ値の更新やエントリの追加を行う。以降、クライ
アント11からの処理要求をサーバ21が自身で処理す
る工程と同一の工程を踏む。これにより停止中から稼動
中になったサーバや新規に追加されたサーバを知ること
ができる。
【0031】ステップST404において、受信処理部
25で受信した信号が他のサーバからの処理委託要求で
はない、即ちクライアント11からの処理要求であると
判明した場合には、ステップST408において、待ち
行列29中で待機中の処理要求の数を計測して、サーバ
21自身が過大負荷状態にあるか否かを調べる。過大負
荷であるか否かの判断基準は、例えば待ち行列29中の
処理要求数が20個以上の時にサーバ21が過大負荷状
態にあると判定するように与えられている。
25で受信した信号が他のサーバからの処理委託要求で
はない、即ちクライアント11からの処理要求であると
判明した場合には、ステップST408において、待ち
行列29中で待機中の処理要求の数を計測して、サーバ
21自身が過大負荷状態にあるか否かを調べる。過大負
荷であるか否かの判断基準は、例えば待ち行列29中の
処理要求数が20個以上の時にサーバ21が過大負荷状
態にあると判定するように与えられている。
【0032】サーバ21が過大負荷状態である場合に
は、ステップST410において、受信した処理要求を
処理委託要求として転送処理部23に送信し、転送処理
部23から送信処理部27,通信部28を介して他のサ
ーバに該処理委託要求を回送する。
は、ステップST410において、受信した処理要求を
処理委託要求として転送処理部23に送信し、転送処理
部23から送信処理部27,通信部28を介して他のサ
ーバに該処理委託要求を回送する。
【0033】サーバ21が過大負荷状態でない場合に
は、ステップST409において、受信した処理要求ま
たは処理委託要求を待ち行列29に入れ、処理要求実行
部26に転送する。
は、ステップST409において、受信した処理要求ま
たは処理委託要求を待ち行列29に入れ、処理要求実行
部26に転送する。
【0034】以上の受信処理動作を見易いように事例毎
にステップ番号により処理の流れを示すと次のようにな
る。 事例1.クライアント11からサーバ21への『処理要
求』を当該サーバ21で処理する場合:ステップST4
01→402→404→408→409 事例2.クライアント11からサーバ21への『処理要
求』を、当該サーバ21が別のサーバへ『処理委託要
求』する場合:ステップST401→402→404→
408→410 事例3.事例2の『処理委託要求』を受けたサーバが受
託する場合:ステップST401→402→404→4
05→408→409 事例4.事例2の『処理委託要求』を受けたサーバが受
託せず、他のサーバに回送する場合:ステップST40
1→402→404→405→408→410 事例5.『処理貰い受け要求』を出したサーバ21が、
貰い受けた『処理委託要求』を処理する場合:ステップ
ST401→402→407→406→408→409 事例6.『処理貰い受け要求』を出したサーバ21が、
貰い受けた『処理委託要求』を他のサーバに回送する場
合:ステップST401→402→407→406→4
08→410 事例7.『処理貰い受け要求』を出したサーバ21が、
『処理委託要求』を貰い受けなかった場合:ステップS
T401→402→407 事例8.『処理貰い受け要求』を受信したサーバ21
が、該『処理貰い受け要求』に応ずる場合:ステップS
T401→412→403→411 事例9.『処理貰い受け要求』を受信したサーバ21
が、該『処理貰い受け要求』に応ぜず該『処理貰い受け
要求』を別のサーバに回送する場合:ステップST40
1→412→403→410
にステップ番号により処理の流れを示すと次のようにな
る。 事例1.クライアント11からサーバ21への『処理要
求』を当該サーバ21で処理する場合:ステップST4
01→402→404→408→409 事例2.クライアント11からサーバ21への『処理要
求』を、当該サーバ21が別のサーバへ『処理委託要
求』する場合:ステップST401→402→404→
408→410 事例3.事例2の『処理委託要求』を受けたサーバが受
託する場合:ステップST401→402→404→4
05→408→409 事例4.事例2の『処理委託要求』を受けたサーバが受
託せず、他のサーバに回送する場合:ステップST40
1→402→404→405→408→410 事例5.『処理貰い受け要求』を出したサーバ21が、
貰い受けた『処理委託要求』を処理する場合:ステップ
ST401→402→407→406→408→409 事例6.『処理貰い受け要求』を出したサーバ21が、
貰い受けた『処理委託要求』を他のサーバに回送する場
合:ステップST401→402→407→406→4
08→410 事例7.『処理貰い受け要求』を出したサーバ21が、
『処理委託要求』を貰い受けなかった場合:ステップS
T401→402→407 事例8.『処理貰い受け要求』を受信したサーバ21
が、該『処理貰い受け要求』に応ずる場合:ステップS
T401→412→403→411 事例9.『処理貰い受け要求』を受信したサーバ21
が、該『処理貰い受け要求』に応ぜず該『処理貰い受け
要求』を別のサーバに回送する場合:ステップST40
1→412→403→410
【0035】図5はこの発明の実施の形態1における分
散処理システムの転送処理の流れを示すフローチャート
である。次に、この転送処理動作について、図5のフロ
ーチャートを参照しながら説明する。
散処理システムの転送処理の流れを示すフローチャート
である。次に、この転送処理動作について、図5のフロ
ーチャートを参照しながら説明する。
【0036】まず、サーバ21は、ステップST501
において、転送すべき信号が送信処理部27からの送信
失敗通知であるか否かを判断し、該信号が該送信失敗通
知である場合には、ステップST502において、代替
サーバテーブル22に送信を失敗したサーバの稼動状況
の停止時刻をセットし、該サーバの稼動状況を停止中と
して以降検索において当該サーバを送信候補としないよ
うにする。
において、転送すべき信号が送信処理部27からの送信
失敗通知であるか否かを判断し、該信号が該送信失敗通
知である場合には、ステップST502において、代替
サーバテーブル22に送信を失敗したサーバの稼動状況
の停止時刻をセットし、該サーバの稼動状況を停止中と
して以降検索において当該サーバを送信候補としないよ
うにする。
【0037】次に、ステップST503において、送信
すべき信号が上記ステップST410により回送すべき
他のサーバからの処理貰い受け要求であるか否かを判定
し、該信号が他のサーバからの処理貰い受け要求である
と判明した場合には、ステップST508において代替
サーバテーブル22を検索して、当該処理貰い受け要求
を回送すべき代替サーバ候補の存否を判定する。この場
合、停止中でなく単位時間当たりの処理委託要求数の最
も多いサーバを代替サーバの候補とする。
すべき信号が上記ステップST410により回送すべき
他のサーバからの処理貰い受け要求であるか否かを判定
し、該信号が他のサーバからの処理貰い受け要求である
と判明した場合には、ステップST508において代替
サーバテーブル22を検索して、当該処理貰い受け要求
を回送すべき代替サーバ候補の存否を判定する。この場
合、停止中でなく単位時間当たりの処理委託要求数の最
も多いサーバを代替サーバの候補とする。
【0038】次に、ステップST509において、ステ
ップST508で設定した代替サーバ候補が当該処理貰
い受け要求を出したサーバであるか否かを判定し、当該
代替サーバ候補が該処理貰い受け要求を送信したサーバ
である場合には、ステップST508に戻り次の候補を
選択する。
ップST508で設定した代替サーバ候補が当該処理貰
い受け要求を出したサーバであるか否かを判定し、当該
代替サーバ候補が該処理貰い受け要求を送信したサーバ
である場合には、ステップST508に戻り次の候補を
選択する。
【0039】このように、順次停止中でなく単位時間当
たりの処理委託要求数の多いサーバを代替サーバの候補
として検討した結果、代替サーバ候補が決定すると、ス
テップST507において、該処理貰い受け要求を送信
処理部27に渡し、該処理貰い受け要求を決定した代替
サーバに転送する。代替サーバ候補が決定できない場合
には、ステップST505において該処理貰い受け要求
に対する要求拒否の応答を作成して送信処理部27に渡
す。
たりの処理委託要求数の多いサーバを代替サーバの候補
として検討した結果、代替サーバ候補が決定すると、ス
テップST507において、該処理貰い受け要求を送信
処理部27に渡し、該処理貰い受け要求を決定した代替
サーバに転送する。代替サーバ候補が決定できない場合
には、ステップST505において該処理貰い受け要求
に対する要求拒否の応答を作成して送信処理部27に渡
す。
【0040】ステップST503における送信すべき信
号の判定結果が処理貰い受け要求でない場合、即ちクラ
イアント11からの処理要求を処理委託要求として送信
する場合は、ステップST504において、代替サーバ
テーブル22を検索して、当該処理委託要求を転送すべ
き代替サーバを選定する。この場合、停止中でなく単位
時間当たりの処理委託要求数の最も少ないサーバを代替
サーバ候補として選定する。
号の判定結果が処理貰い受け要求でない場合、即ちクラ
イアント11からの処理要求を処理委託要求として送信
する場合は、ステップST504において、代替サーバ
テーブル22を検索して、当該処理委託要求を転送すべ
き代替サーバを選定する。この場合、停止中でなく単位
時間当たりの処理委託要求数の最も少ないサーバを代替
サーバ候補として選定する。
【0041】ステップST506において、このように
して選定した代替サーバ候補が上記処理要求を最初に受
けたサーバである場合には、ステップST504に戻り
次の候補を選択する。
して選定した代替サーバ候補が上記処理要求を最初に受
けたサーバである場合には、ステップST504に戻り
次の候補を選択する。
【0042】このようにして処理委託要求を転送すべき
代替サーバ候補が決定すると、ステップST507にお
いて、該処理委託要求を送信処理部27に渡し、該送信
処理部27,通信部28を介して該処理委託要求を上記
代替サーバ候補に転送する。上記処理委託要求を転送す
べき代替サーバ候補が決定できない場合には、ステップ
ST505において、該処理委託要求に対する拒否の応
答を作成して送信処理部27に渡す。
代替サーバ候補が決定すると、ステップST507にお
いて、該処理委託要求を送信処理部27に渡し、該送信
処理部27,通信部28を介して該処理委託要求を上記
代替サーバ候補に転送する。上記処理委託要求を転送す
べき代替サーバ候補が決定できない場合には、ステップ
ST505において、該処理委託要求に対する拒否の応
答を作成して送信処理部27に渡す。
【0043】図6はこの発明の実施の形態1における分
散処理システムにおいて、定期的に行われるサーバ21
の負荷監視処理の流れを示すフローチャートである。次
に、この負荷監視処理動作を図6のフローチャートを参
照しながら説明する。
散処理システムにおいて、定期的に行われるサーバ21
の負荷監視処理の流れを示すフローチャートである。次
に、この負荷監視処理動作を図6のフローチャートを参
照しながら説明する。
【0044】まず、ステップST601において、負荷
監視部24は、代替サーバテーブル22のサーバ停止時
刻と現在の時刻とを比較して判定することにより一定期
間停止中であるサーバを該代替サーバテーブル22から
削除し、かつ、カウンタ値を単位時間当たりの処理委託
要求数欄に移すと共に、該カウンタ値を0クリアする。
例えば代替サーバテーブル22中のデータが図2の如く
であるとすると、サーバBに関する単位時間当たりの処
理委託要求数は3から1に更新され、該サーバBのカウ
ンタ値は0にクリアされる。
監視部24は、代替サーバテーブル22のサーバ停止時
刻と現在の時刻とを比較して判定することにより一定期
間停止中であるサーバを該代替サーバテーブル22から
削除し、かつ、カウンタ値を単位時間当たりの処理委託
要求数欄に移すと共に、該カウンタ値を0クリアする。
例えば代替サーバテーブル22中のデータが図2の如く
であるとすると、サーバBに関する単位時間当たりの処
理委託要求数は3から1に更新され、該サーバBのカウ
ンタ値は0にクリアされる。
【0045】次に、ステップST602において、待ち
行列29中に待機している処理要求数を数え、サーバ2
1自身が過小負荷であるか否かを判定する。
行列29中に待機している処理要求数を数え、サーバ2
1自身が過小負荷であるか否かを判定する。
【0046】ステップST602における判定の結果、
サーバ21自身が過小負荷であると判明すると、ステッ
プST603において、代替サーバテーブル22を検索
して代替サーバの候補があるか否かを判定する。代替サ
ーバの候補としては、単位時間当たりの処理委託要求数
が最も大きいサーバを探す。
サーバ21自身が過小負荷であると判明すると、ステッ
プST603において、代替サーバテーブル22を検索
して代替サーバの候補があるか否かを判定する。代替サ
ーバの候補としては、単位時間当たりの処理委託要求数
が最も大きいサーバを探す。
【0047】この代替サーバ候補が見つかると、ステッ
プST604において、クライアント11からの処理要
求を貰い受けるための処理貰い受け要求を作成し、ステ
ップST605において、作成した処理貰い受け要求を
送信処理部27に手渡す。
プST604において、クライアント11からの処理要
求を貰い受けるための処理貰い受け要求を作成し、ステ
ップST605において、作成した処理貰い受け要求を
送信処理部27に手渡す。
【0048】図7はこの発明の実施の形態1における分
散処理システムにおいて、クライアント11が処理要求
を各サーバに発行する処理の流れを示すフローチャート
である。次に、図7のフローチャートを参照しながら、
この実施の形態1の分散処理システムのクライアント1
1の処理要求発行動作について説明する。
散処理システムにおいて、クライアント11が処理要求
を各サーバに発行する処理の流れを示すフローチャート
である。次に、図7のフローチャートを参照しながら、
この実施の形態1の分散処理システムのクライアント1
1の処理要求発行動作について説明する。
【0049】まず、ステップST701において、クラ
イアント11のサーバ情報制御部13は、サーバ情報テ
ーブル12を検索し、当該処理要求を処理すべきサーバ
を選定し、ステップST702において、当該処理要求
に選定したサーバを特定する情報を付加して通信部14
に手渡す。
イアント11のサーバ情報制御部13は、サーバ情報テ
ーブル12を検索し、当該処理要求を処理すべきサーバ
を選定し、ステップST702において、当該処理要求
に選定したサーバを特定する情報を付加して通信部14
に手渡す。
【0050】図8はこの発明の実施の形態1における分
散処理システムにおいて、クライアント11が処理要求
結果を処理する流れを示すフローチャートである。次
に、この分散処理システムのクライアント11の処理要
求結果の処理動作について、図8のフローチャートを参
照しながら説明する。
散処理システムにおいて、クライアント11が処理要求
結果を処理する流れを示すフローチャートである。次
に、この分散処理システムのクライアント11の処理要
求結果の処理動作について、図8のフローチャートを参
照しながら説明する。
【0051】まず、クライアント11は、ステップST
801において、自身の発行した処理要求に対する結果
を返送してきたサーバに関する情報をサーバ情報テーブ
ル12に記入して該サーバ情報テーブル12を更新す
る。これにより、該サーバ情報テーブル12を参照する
ことにより、以降、同種の処理要求は最近に処理要求結
果を返送してきたサーバに発行することができる。例え
ばサーバ情報テーブル12に図3のデータが記録されて
いた場合に処理xをサーバAに依頼して結果がサーバG
から返ってきた場合には、サーバ情報テーブル12中の
処理xに対するサーバがAからGに更新される。該結果
がサーバAではなくサーバGから返ってきたことは、即
ちサーバGはサーバAより負荷が低いことを意味してい
るから、以降の処理xの処置要求先がAではなくGとな
ることはクライアント11側でサーバの負荷を分散して
いることになる。
801において、自身の発行した処理要求に対する結果
を返送してきたサーバに関する情報をサーバ情報テーブ
ル12に記入して該サーバ情報テーブル12を更新す
る。これにより、該サーバ情報テーブル12を参照する
ことにより、以降、同種の処理要求は最近に処理要求結
果を返送してきたサーバに発行することができる。例え
ばサーバ情報テーブル12に図3のデータが記録されて
いた場合に処理xをサーバAに依頼して結果がサーバG
から返ってきた場合には、サーバ情報テーブル12中の
処理xに対するサーバがAからGに更新される。該結果
がサーバAではなくサーバGから返ってきたことは、即
ちサーバGはサーバAより負荷が低いことを意味してい
るから、以降の処理xの処置要求先がAではなくGとな
ることはクライアント11側でサーバの負荷を分散して
いることになる。
【0052】通信部14を介してサーバ情報制御部13
で受け取った上記処理要求の結果は、ステップST80
2で処理要求プログラム15に手渡される。
で受け取った上記処理要求の結果は、ステップST80
2で処理要求プログラム15に手渡される。
【0053】以上のように、この実施の形態1によれ
ば、専用のサーバ管理装置を設けることなく、また、格
別にクライアントとサーバ間の負荷を増大させることな
く、クライアント11及び各サーバの自身の動作によ
り、負荷の少ないサーバを処理要求を処理すべきサーバ
として自動的に選定でき、かつ停止中のサーバがある場
合にも他のサーバにより処理要求を処理することにより
分散処理システムの作業効率を落とすことがなく、可用
性の高い効果が得られる。
ば、専用のサーバ管理装置を設けることなく、また、格
別にクライアントとサーバ間の負荷を増大させることな
く、クライアント11及び各サーバの自身の動作によ
り、負荷の少ないサーバを処理要求を処理すべきサーバ
として自動的に選定でき、かつ停止中のサーバがある場
合にも他のサーバにより処理要求を処理することにより
分散処理システムの作業効率を落とすことがなく、可用
性の高い効果が得られる。
【0054】実施の形態2.
図9はこの発明の実施の形態2による分散処理システム
のクライアントが持つサーバ情報テーブルの構成を示す
図である。
のクライアントが持つサーバ情報テーブルの構成を示す
図である。
【0055】この実施の形態2の分散処理システムのク
ライアント11のサーバ情報テーブル12は、処理毎に
この処理を実行できるサーバ群を示すテーブル1と、サ
ーバ毎に単位時間当たりクライアント11が処理実行を
依頼した処理要求発行数と、処理結果が返送された処理
結果受信数と、平均応答時間を記録するテーブル2とに
分けて設定されている。
ライアント11のサーバ情報テーブル12は、処理毎に
この処理を実行できるサーバ群を示すテーブル1と、サ
ーバ毎に単位時間当たりクライアント11が処理実行を
依頼した処理要求発行数と、処理結果が返送された処理
結果受信数と、平均応答時間を記録するテーブル2とに
分けて設定されている。
【0056】次に動作について説明する。クライアント
11は、テーブル1に基づき特定の処理要求を発するサ
ーバを特定し、当該サーバに対して当該処理要求を発行
する。そして、発行した処理要求に対して各サーバの応
答の態様をテーブル2に基づいてサーバ情報制御部で把
握し、各サーバの負荷が均一になるように処理要求の発
行を分散する。
11は、テーブル1に基づき特定の処理要求を発するサ
ーバを特定し、当該サーバに対して当該処理要求を発行
する。そして、発行した処理要求に対して各サーバの応
答の態様をテーブル2に基づいてサーバ情報制御部で把
握し、各サーバの負荷が均一になるように処理要求の発
行を分散する。
【0057】以上のように、この実施の形態2によれ
ば、きめの細かい負荷分散をクライアント11の側でな
すことができ、サーバ間の委託が減少し、また1サーバ
の停止による負荷分散に与える影響を小さくできる効果
が得られる。
ば、きめの細かい負荷分散をクライアント11の側でな
すことができ、サーバ間の委託が減少し、また1サーバ
の停止による負荷分散に与える影響を小さくできる効果
が得られる。
【0058】
【発明の効果】以上のように、請求項1記載の発明によ
れば、クライアントに処理要求を実行すべきサーバを特
定するサーバ情報テーブルを設け、かつ、少なくとも1
個のサーバに、複数の代替サーバに対応して代替サーバ
から単位時間当たりに転送された処理委託要求の数を格
納する代替サーバテーブルと、他のサーバから転送され
た処理委託要求の所定時間当たりの数を計測し、該計測
結果を代替サーバテーブルに格納する代替サーバ管理手
段と、クライアントからの処理要求に対して自身のサー
バが過大負荷状態でない場合には、該処理要求を自身の
サーバにて実行させ、過大負荷状態である場合には、該
処理要求を処理委託要求として送り、他のサーバからの
処理貰い受け要求に対して自身のサーバが過小負荷状態
である場合には、該処理貰い受け要求を送る処理要求貰
い受け手段と、処理要求貰い受け手段から処理委託要求
が送られた場合には、代替サーバテーブルを検索して単
位時間当たりに転送された処理委託要求の数が最も少な
い代替サーバを決定し、該代替サーバに該送られた処理
委託要求を回送させ、該処理要求貰い受け手段から処理
貰い受け要求が送られた場合には、該代替サーバテーブ
ルを検索して単位時間当たりに転送された処理委託要求
の数が最も多い代替サーバを決定し、該代替サーバに該
送られた処理貰い受け要求を回送させる代替サーバ決定
手段とを設けるように構成したので、専門のサーバ管理
装置を設けずに、かつ、クライアントとサーバ間の通信
路の加重負荷状態を招来することなく、サーバ間の負荷
を均等化することができ、システム全体の可用性を高め
る効果がある。
れば、クライアントに処理要求を実行すべきサーバを特
定するサーバ情報テーブルを設け、かつ、少なくとも1
個のサーバに、複数の代替サーバに対応して代替サーバ
から単位時間当たりに転送された処理委託要求の数を格
納する代替サーバテーブルと、他のサーバから転送され
た処理委託要求の所定時間当たりの数を計測し、該計測
結果を代替サーバテーブルに格納する代替サーバ管理手
段と、クライアントからの処理要求に対して自身のサー
バが過大負荷状態でない場合には、該処理要求を自身の
サーバにて実行させ、過大負荷状態である場合には、該
処理要求を処理委託要求として送り、他のサーバからの
処理貰い受け要求に対して自身のサーバが過小負荷状態
である場合には、該処理貰い受け要求を送る処理要求貰
い受け手段と、処理要求貰い受け手段から処理委託要求
が送られた場合には、代替サーバテーブルを検索して単
位時間当たりに転送された処理委託要求の数が最も少な
い代替サーバを決定し、該代替サーバに該送られた処理
委託要求を回送させ、該処理要求貰い受け手段から処理
貰い受け要求が送られた場合には、該代替サーバテーブ
ルを検索して単位時間当たりに転送された処理委託要求
の数が最も多い代替サーバを決定し、該代替サーバに該
送られた処理貰い受け要求を回送させる代替サーバ決定
手段とを設けるように構成したので、専門のサーバ管理
装置を設けずに、かつ、クライアントとサーバ間の通信
路の加重負荷状態を招来することなく、サーバ間の負荷
を均等化することができ、システム全体の可用性を高め
る効果がある。
【0059】請求項2記載の発明によれば、サーバ情報
テーブルに、処理要求に対して処理結果を返送したサー
バを記録し、クライアントには、該処理結果の返送され
た処理要求と同種の処理要求は以降、サーバ情報テーブ
ルに記録されたサーバに発行する処理要求発行手段を設
けるように構成したので、処理要求を効率的に発行する
ことができ、クライアントとサーバ間の通信路の負荷を
減少できる効果がある。
テーブルに、処理要求に対して処理結果を返送したサー
バを記録し、クライアントには、該処理結果の返送され
た処理要求と同種の処理要求は以降、サーバ情報テーブ
ルに記録されたサーバに発行する処理要求発行手段を設
けるように構成したので、処理要求を効率的に発行する
ことができ、クライアントとサーバ間の通信路の負荷を
減少できる効果がある。
【0060】請求項3記載の発明によれば、サーバ情報
テーブルに、サーバ毎に単位時間当たりの処理要求発行
数、処理結果受信数及び平均応答時間を記録し、処理要
求発行手段は、該サーバ情報テーブルの内容に基づいて
処理要求を発行するサーバを決定するように構成したの
で、クライアントがサーバの稼働状況を正確に把握する
ことができ、処理要求の発行を効率よく行うことができ
る効果がある。
テーブルに、サーバ毎に単位時間当たりの処理要求発行
数、処理結果受信数及び平均応答時間を記録し、処理要
求発行手段は、該サーバ情報テーブルの内容に基づいて
処理要求を発行するサーバを決定するように構成したの
で、クライアントがサーバの稼働状況を正確に把握する
ことができ、処理要求の発行を効率よく行うことができ
る効果がある。
【0061】請求項4記載の発明によれば、新たなサー
バからの処理委託要求ないし処理貰い受け要求を受信し
た場合に該サーバを代替サーバテーブルに登録するとと
もに、一定時間停止中であるサーバを該代替サーバテー
ブルから抹消するように構成したので、有効に稼働中の
サーバ間でのみ処理要求を分配することができ、分散処
理システムの効率と信頼性を向上できる効果がある。
バからの処理委託要求ないし処理貰い受け要求を受信し
た場合に該サーバを代替サーバテーブルに登録するとと
もに、一定時間停止中であるサーバを該代替サーバテー
ブルから抹消するように構成したので、有効に稼働中の
サーバ間でのみ処理要求を分配することができ、分散処
理システムの効率と信頼性を向上できる効果がある。
【図1】 この発明の実施の形態1による分散処理シス
テムの構成を示すブロック図である。
テムの構成を示すブロック図である。
【図2】 図1の分散処理システムの代替サーバテーブ
ルの構成の一例を示す図である。
ルの構成の一例を示す図である。
【図3】 図1の分散処理システムのクライアントが持
つサーバ情報テーブルの構成を示す図である。
つサーバ情報テーブルの構成を示す図である。
【図4】 図1の分散処理システムのサーバの受信処理
動作を示すフローチャートである。
動作を示すフローチャートである。
【図5】 図1の分散処理システムのサーバの転送処理
動作を示すフローチャートである。
動作を示すフローチャートである。
【図6】 図1の分散処理システムのサーバの負荷監視
処理動作を示すフローチャートである。
処理動作を示すフローチャートである。
【図7】 図1の分散処理システムのクライアントの処
理要求発行動作を示すフローチャートである。
理要求発行動作を示すフローチャートである。
【図8】 図1の分散処理システムのクライアントの処
理要求結果の処理動作を示すフローチャートである。
理要求結果の処理動作を示すフローチャートである。
【図9】 この発明の実施の形態2による分散処理シス
テムのクライアントが有するサーバ情報テーブルの構成
を示す図である。
テムのクライアントが有するサーバ情報テーブルの構成
を示す図である。
【図10】 従来の分散処理システムの構成の一例を概
略的に示すブロック図である。
略的に示すブロック図である。
【図11】 従来の分散処理システムの構成の他の例を
示すブロック図である。
示すブロック図である。
【図12】 図11の従来例のクライアントと各サーバ
間の応答を模式的に示す図である。
間の応答を模式的に示す図である。
11 クライアント、12 サーバ情報テーブル、13
サーバ情報制御部(処理要求発行手段)、21,3
1,32,33,41,42,43 サーバ、22,3
1a,32a,33a,41a,42a,43a 代替
サーバテーブル、23 転送処理部(代替サーバ決定手
段)、24 負荷監視部(代替サーバ管理手段)、25
受信処理部(処理要求貰い受け手段)、27 送信処
理部(処理要求委託手段)。
サーバ情報制御部(処理要求発行手段)、21,3
1,32,33,41,42,43 サーバ、22,3
1a,32a,33a,41a,42a,43a 代替
サーバテーブル、23 転送処理部(代替サーバ決定手
段)、24 負荷監視部(代替サーバ管理手段)、25
受信処理部(処理要求貰い受け手段)、27 送信処
理部(処理要求委託手段)。
─────────────────────────────────────────────────────
フロントページの続き
(56)参考文献 特開 平7−6110(JP,A)
特開 平3−88060(JP,A)
特開 平5−216843(JP,A)
特開 平6−348662(JP,A)
特開 平6−195317(JP,A)
(58)調査した分野(Int.Cl.7,DB名)
G06F 15/16 - 15/177
Claims (4)
- 【請求項1】 処理要求を発行するクライアントと該処
理要求を実行する複数のサーバとを備えた分散処理シス
テムにおいて、上記クライアントに該処理要求を実行す
べきサーバを特定するサーバ情報テーブルを設け、か
つ、上記サーバの少なくとも1個のサーバに、上記処理
要求を自身に代替して行う複数の代替サーバに対応して
それら代替サーバから単位時間当たりに転送された処理
委託要求の数を格納する代替サーバテーブルと、他のサ
ーバから転送された処理委託要求の所定時間当たりの数
を計測し、該計測結果を上記代替サーバテーブルに格納
する代替サーバ管理手段と、上記クライアントからの処
理要求に対して自身のサーバが過大負荷状態でない場合
には、該処理要求を自身のサーバにて実行させ、過大負
荷状態である場合には、該処理要求を処理委託要求とし
て送り、他のサーバからの処理貰い受け要求に対して自
身のサーバが過小負荷状態である場合には、該処理貰い
受け要求を送る処理要求貰い受け手段と、上記処理要求
貰い受け手段から上記処理委託要求が送られた場合に
は、上記代替サーバテーブルを検索して単位時間当たり
に転送された処理委託要求の数が最も少ない代替サーバ
を決定し、該代替サーバに該送られた処理委託要求を回
送させ、該処理要求貰い受け手段から上記処理貰い受け
要求が送られた場合には、該代替サーバテーブルを検索
して単位時間当たりに転送された処理委託要求の数が最
も多い代替サーバを決定し、該代替サーバに該送られた
処理貰い受け要求を回送させる代替サーバ決定手段とを
設けたことを特徴とする分散処理システム。 - 【請求項2】 サーバ情報テーブルは、処理要求に対し
て処理結果を返送したサーバを記録するものであり、ク
ライアントには、該処理結果の返送された処理要求と同
種の処理要求は以降上記サーバ情報テーブルに記録され
たサーバに発行する処理要求発行手段を設けたことを特
徴とする請求項1記載の分散処理システム。 - 【請求項3】 サーバ情報テーブルは、サーバ毎に単位
時間当たりの処理要求発行数、処理結果受信数及び平均
応答時間を記録するものであり、処理要求発行手段は、
該サーバ情報テーブルの内容に基づいて処理要求を発行
するサーバを決定することを特徴とする請求項2記載の
分散処理システム。 - 【請求項4】 代替サーバ管理手段が、クライアントか
らの処理要求を他のサーバに委託する処理委託要求と、
クライアントが発行した処理要求を貰い受ける旨を表明
する処理貰い受け要求とを監視して、これまでに代替サ
ーバテーブルに登録されていないサーバからの処理委託
要求ないし処理貰い受け要求であるときに該サーバを上
記代替サーバテーブルに登録し、かつ監視の結果一定時
間停止中であると判明したサーバを該代替サーバテーブ
ルから抹消する機能を有することを特徴とする請求項1
から請求項3のうちのいずれか1項記載の分散処理シス
テム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07500296A JP3422400B2 (ja) | 1996-03-28 | 1996-03-28 | 分散処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07500296A JP3422400B2 (ja) | 1996-03-28 | 1996-03-28 | 分散処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09265460A JPH09265460A (ja) | 1997-10-07 |
JP3422400B2 true JP3422400B2 (ja) | 2003-06-30 |
Family
ID=13563572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP07500296A Expired - Fee Related JP3422400B2 (ja) | 1996-03-28 | 1996-03-28 | 分散処理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3422400B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438652B1 (en) * | 1998-10-09 | 2002-08-20 | International Business Machines Corporation | Load balancing cooperating cache servers by shifting forwarded request |
JP2000172657A (ja) * | 1998-12-08 | 2000-06-23 | Fujitsu Ltd | 分散処理システム、分散処理方法、その方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体、サーバ装置およびクライアント装置 |
US7194445B2 (en) * | 2002-09-20 | 2007-03-20 | Lenovo (Singapore) Pte. Ltd. | Adaptive problem determination and recovery in a computer system |
KR100669153B1 (ko) * | 2004-12-14 | 2007-01-15 | 한국전자통신연구원 | 표준 관리 블럭에 기반을 둔 계층적 시스템 관리 시스템및 관리 방법 |
JP2006268304A (ja) * | 2005-03-23 | 2006-10-05 | Nomura Research Institute Ltd | 投稿データ評価装置 |
KR100825963B1 (ko) * | 2006-12-08 | 2008-04-29 | 주식회사 타오네트웍스 | 분산 흐름 제어 시스템 |
JP4367962B2 (ja) | 2007-06-19 | 2009-11-18 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報システムに発生したイベントのパターンを検出する技術 |
JP4400834B2 (ja) | 2007-06-20 | 2010-01-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報システムに発生したイベントのパターンを検出する技術 |
WO2010061735A1 (ja) | 2008-11-27 | 2010-06-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 検出イベントに応じたアクション実行を支援するシステム、検出イベントに応じたアクション実行を支援する方法、支援装置及びコンピュータプログラム |
JP2010191482A (ja) * | 2009-02-13 | 2010-09-02 | Fujitsu Ltd | クライアントサーバシステム、クライアント装置および業務処理振分プログラム |
US8898271B2 (en) * | 2011-09-29 | 2014-11-25 | Oracle International Corporation | System and method for supporting accurate load balancing in a transactional middleware machine environment |
JP6315593B2 (ja) * | 2014-12-18 | 2018-04-25 | 日本電信電話株式会社 | 端末、呼制御サーバ、呼制御システム及び位置登録方法 |
JP6315592B2 (ja) * | 2014-12-18 | 2018-04-25 | 日本電信電話株式会社 | 呼制御サーバおよび呼制御システムの動作方法 |
-
1996
- 1996-03-28 JP JP07500296A patent/JP3422400B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09265460A (ja) | 1997-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3422400B2 (ja) | 分散処理システム | |
US7984147B2 (en) | Apparatus and method for identifying a requested level of service for a transaction | |
US20020069279A1 (en) | Apparatus and method for routing a transaction based on a requested level of service | |
US8706906B2 (en) | Multipath routing process | |
KR100869421B1 (ko) | 클라이언트-서버 연결 방법, 로드 밸런서 동작 방법 및패킷 전송 방법 | |
EP1107539A2 (en) | Apparatus for supplying content to a portable terminal | |
CN102104617A (zh) | 一种网站运营系统存储海量图片数据的方法 | |
CN1937534A (zh) | 一种实现负载均衡的方法和一种负载均衡设备 | |
CN102164160A (zh) | 支持大并发量文件下载的方法、装置及系统 | |
CN101938502A (zh) | 一种服务器集群系统及负载均衡方法 | |
CN101207486A (zh) | 服务器、信息处理方法、服务器程序以及服务器系统 | |
US20100070366A1 (en) | System and method for providing naming service in a distributed processing system | |
US8166100B2 (en) | Cross site, cross domain session sharing without database replication | |
US7792803B2 (en) | Log retrieving method, log administration apparatus, information processing apparatus and computer product | |
JP5272428B2 (ja) | アクセス頻度の高い情報を事前にキャッシュする予測型キャッシュ方法、そのシステム及びそのプログラム | |
JP5531278B2 (ja) | サーバ構成管理システム | |
JPH07311744A (ja) | 資源所在位置検出方式 | |
US20030005080A1 (en) | Systems and methods for accessing data | |
JPWO2009034994A1 (ja) | 負荷分散システム、サービス処理サーバ、負荷分散方法及び負荷分散プログラム | |
JP2009093569A (ja) | 業務サービス利用システム、業務サービス実行システム、業務サービス利用方法およびプログラム、並びに業務サービス実行方法およびプログラム | |
US9158732B2 (en) | Distributed cache system for delivering contents to display apparatus | |
JP2002259197A (ja) | アクティブコンテンツキャッシュ制御システムと、アクティブコンテンツキャッシュ制御装置及び方法と、アクティブコンテンツキャッシュ制御処理用プログラム及びそのプログラムの記録媒体 | |
JP2003256390A (ja) | 分散オブジェクトシステム | |
JP4222065B2 (ja) | 情報システムにおけるデータアクセス方法および情報システム | |
US7159019B2 (en) | Information collection apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |