JPH09231180A - サーバ分割方法 - Google Patents

サーバ分割方法

Info

Publication number
JPH09231180A
JPH09231180A JP8210576A JP21057696A JPH09231180A JP H09231180 A JPH09231180 A JP H09231180A JP 8210576 A JP8210576 A JP 8210576A JP 21057696 A JP21057696 A JP 21057696A JP H09231180 A JPH09231180 A JP H09231180A
Authority
JP
Japan
Prior art keywords
server
service
information
location
local processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8210576A
Other languages
English (en)
Inventor
Masahide Sato
雅英 佐藤
Koji Sonoda
浩二 薗田
Hiroyuki Kumazaki
裕之 熊崎
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP8210576A priority Critical patent/JPH09231180A/ja
Publication of JPH09231180A publication Critical patent/JPH09231180A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 サービスロケーションサーバへの負荷が所定
のしきい値を越えたときに、サービス範囲を分割し、ロ
ケーション情報を分散管理するサーバ分割方法。 【解決手段】 図に示すクライアントサーバシステムに
おいて、プロセッサシステムの少なくとも1システム(1
01)にサービスロケーションサーバ(1013)を設け、サー
バ(1013)は、他のプロセスから登録されるプロセスのロ
ケーション情報を管理するサービスロケーション情報
と、自サーバのサービス範囲を定義したサービス範囲情
報を備え、自サーバのサービス負荷を測定し、サービス
負荷が所定の負荷レベルを越えたとき、自サーバの複製
を作成し、複製元サーバと複製サーバとの間でサービス
範囲を分割し、複製元サーバと複製サーバの夫々にサー
ビスロケーション情報を設定し、複製サーバを異なるプ
ロセッサシステムに移送し、配置し、複製元は複製の、
複製は複製元のロケーション情報を設定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、分散環境で構築さ
れるクライアントサーバシステムにおけるサーバ分割方
法に関する。
【0002】
【従来の技術】計算機ハードウェア分野では、複数のプ
ロセッサを使用し、分散処理、並列処理が可能な並列機
が注目を集めており、数台から数千台のプロセッサを搭
載した並列機が製品化されている。米IBMのSP2、
米エヌキューブのnCube2等はその例である(日経
コンピュータ1994.9.5号、p.93)。日経コ
ンピュータ1994.9.5号、p.90記載の記事に
よれば、複数のプロセッサを結合して並列処理する方式
は大別して、密結合マルチプロセッサと、クラスタ結合
型マルチプロセッサと、超並列機とに分類される。密結
合マルチプロセッサ方式はプロセッサ数を増加させると
メモリやバスの競合が発生し、一般に20〜30プロセ
ッサで性能限界がくる。そのため、いま注目を集めてい
るのはプロセッサ数の拡張性が優れるクラスタ結合型マ
ルチプロセッサと超並列機の方式である。また、「分散
オペレーティングシステム UNIXの次にくるもの」
前川、所、清水編によれば、オペレーティングシステム
の分野においても、上記のような並列機を含めた分散シ
ステムの計算機資源を効率よく管理するため、多くの試
みがなされている。OSF(Open System
Foundationという団体名の略語)がカーネル
を極小化(マイクロカーネル化)し、UNIXの機能を
サーバとして実現したように、オペレーティングシステ
ムを各種の処理を実行するプロセスが協調しながら動作
するプロセスの集合体として実現するプロセス指向シス
テムとして構成する手法もその一例である。また、上記
文献「分散オペレーティングシステム UNIXの次に
くるもの」p.13によれば、分散処理では、位置透過
性、障害透過性、複製透過性等の分散透過性が必要であ
る。Machのネームサーバはタスク(プロセス)間で
の通信をするときに、物理的なタスクの位置をユーザに
意識させない(位置透過性の実現)ためのサーバである
(「分散OS Machがわかる本」乾、菅原著、p.
65)。
【0003】また、分散システム上に構築されたクライ
アントサーバシステムにおいて、クライアントが特定の
サーバに対してサービス要求を発行し、サービスの提供
を受けるためには、少なくとも、当該クライアントが要
求したサービスを提供するサーバが存在することと、当
該クライアントと当該クライアントが要求したサービス
を提供するサーバとの通信手段を確立することが必要で
ある。クライアントが要求するサービスを提供するサー
バの存在を効率的に調査し、サーバとの通信手段を確立
するための情報を効率的に取得する方法の一つとして、
上記でのべたMachのネームサーバのような、各種サ
ーバのロケーション情報をサービスするサーバ(以下、
サービスロケーションサーバと呼ぶ)を用いる方法があ
る。この方法は、サービスロケーションサーバに対し
て、各サーバプロセスが提供できるサービスを示すサー
ビス識別子と、自サーバプロセスと他のプロセスが通信
手段を確立するために必要な情報を登録し、クライアン
トは要求したいサービスを示すサービス識別子を指定す
ることにより、サーバの存在とサーバとの通信手段を確
立するための情報をサービスロケーションサーバから取
得できる。さらに、分散システムにおける性能向上の基
本的手段として負荷分散、負荷均衡がある。これを実現
するための基本的な機能として、遠隔実行、プロセス移
送等があり、遠隔実行に関しては、分散オペレーティン
グシステムLOCUS、V−Systemにおいて、遠
隔ノードに対してプロセスを生成する機能がサポートさ
れており、さらに、プロセス移送に関しては、LOCU
S、Sprite、V−Systemなどの分散オペレ
ーティングシステムでサポートされている(上記文献
「分散オペレーティングシステム UNIXの次にくる
もの」)。さらに、分散システムの資源を効率良く使用
するためには、システム全体にわたる大域的な資源管理
が必要である。この管理方式には、特定ノードがシステ
ム全体を管理する集中管理方式と各ノードの協調により
システム全体を管理する分散管理方式があるが、どちら
の方式も大規模な分散システムに適用するには問題があ
り、システム資源を階層的に管理する方式も提案されて
いる(上記文献「分散オペレーティングシステム UN
IXの次にくるもの」)。
【0004】
【発明が解決しようとする課題】上記で述べたように、
大域的なシステム資源の管理方法として、集中管理方
式、分散管理方式がある。集中管理方式は、資源管理が
比較的簡単であるが、管理ノードがひとつであるため、
管理ノードへの負荷集中が発生するという問題がある。
また、分散管理方式では、複数の管理ノードがあり、上
記集中管理方式の管理ノードへの負荷集中の問題は回避
できるが、複数管理ノードが存在するため、各管理ノー
ド間の通信オーバヘッドが増大する。分散管理方式で
は、管理ノード間の通信オーバヘッドを削減するために
階層的に資源を管理する階層管理方式もあるが、分散管
理方式を採用する場合、管理ノードをどのように分散さ
せるか等の設計が必要である。
【0005】以上のように、大域的なシステム資源を管
理する場合に上記のような管理方式があるが、どの管理
方式を採用するか、分散管理方式を採用する場合、管理
者をどのように分散させるか等のシステム設計が必要で
ある。分散環境でのクライアントサーバシステムにおい
て、各サーバのロケーション情報は大域的なシステム資
源のひとつであり、各サーバのロケーション情報をどの
ように管理するかを予め設計する必要がある。しかし、
予め設計される管理方式は設計時の対象システムが前提
であるため、対象システム毎に設計する必要があり、ま
た、システム構成が変更された場合も再設計が必要とな
る。本発明の目的は、大域的なシステム資源の管理方式
を予め設計する必要があるという問題に対して、分散環
境でのクライアントサーバシステムにおいて、各サーバ
のロケーション情報を管理するサービスロケーションサ
ーバを、予め分散するのではなく、上記サービスロケー
ションサーバへの負荷が予め定めたしきい値を越えたと
きに、サービス範囲を分割し、ロケーション情報を分散
管理することができるサーバ分割方法を提供することで
ある。さらに、本発明のさらなる目的は、大域的なシス
テム資源の管理方式を予め設計する必要があり、さら
に、予め設計される管理方式は設計時の対象システムが
前提であるため、対象システム毎に設計する必要があ
り、システム構成が変更された場合も再設計が必要とな
る問題に対して、分散環境でのクライアントサーバシス
テムにおいて、各サーバのロケーション情報を管理する
サービスロケーションサーバを、予め分散するのではな
く、上記サービスロケーションサーバへの負荷が予め定
めたしきい値を越えたときに、サービス範囲を分割し、
ロケーション情報を分散管理することができ、サービス
範囲をどのように分割するか等の分割方針を指定するこ
とができるサーバ分割方法を提供することである。
【0006】
【課題を解決するための手段】上記目的を達成するた
め、本発明は、ローカルプロセッサシステム間でプロセ
スを移送するためのプロセス移送手段を有する複数のロ
ーカルプロセッサシステムを連結した分散システム上に
構築したクライアントサーバシステムにおいて、前記ロ
ーカルプロセッサシステムの少なくとも1システムにサ
ービスロケーションサーバプロセスを設け、前記サービ
スロケーションサーバプロセスは、他のプロセスから登
録されるプロセスのロケーション情報を管理するサービ
スロケーション情報と、自サーバプロセスのサービス範
囲を定義したサービス範囲情報を備え、自サーバプロセ
スのサービス負荷を測定し、サービス負荷が所定の負荷
レベルを越えたとき、自サーバプロセスの複製を作成
し、複製元サーバプロセスと複製サーバプロセスとの間
で前記サービス範囲を分割し、該複製元サーバプロセス
と複製サーバプロセスの夫々にサービスロケーション情
報を設定し、複製サーバプロセスを異なるローカルプロ
セッサシステムに移送し、配置するようにしている。さ
らに、前記複製元サーバプロセスに前記複製サーバプロ
セスのロケーション情報を、前記複製サーバプロセスに
前記複製元サーバプロセスのロケーション情報を設定す
るようにしている。さらに、前記分割後の各サーバプロ
セスがサービス範囲外のプロセスからのサービス要求を
受けたとき、サービス範囲外であることと、自サーバプ
ロセスと異なるサービス範囲を有するサーバプロセスの
ロケーション情報を、サービス要求を発行したプロセス
に通知し、前記分割後の各サーバプロセスがサービス範
囲に含まれるプロセスから、サービス範囲外のプロセス
のロケーション情報に関する問い合わせ要求を受けたと
き、要求を受けとったサーバプロセスが、自サーバプロ
セスが有するサービス範囲と異なるサービス範囲を有す
る他のサーバプロセスに問い合わせ、要求されたロケー
ション情報を、要求したプロセスに通知するようにして
いる。さらに、前記サービス負荷は、前記サービスロケ
ーションサーバプロセスが一定時間間隔内に実行したサ
ービス実行数であるようにしている。さらに、前記サー
ビス範囲は、サービス対象のローカルプロセッサシステ
ムの集合であるようにしている。さらに、サービス負荷
が所定の負荷レベルを越えたとき、予め決められた分割
方針に従ってサービス範囲を分割するようにしている。
さらに、前記分割方針は、サービス範囲であるローカル
プロセッサシステムのうち、各ローカルプロセッサシス
テムのプロセッサ番号の小さい順から、固定数のローカ
ルプロセッサシステムを選択し、選択されたローカルプ
ロセッサシステムを複製元サーバプロセスのサービス範
囲とし、サービス範囲である残りのローカルプロセッサ
システムを複製サーバプロセスのサービス範囲とするよ
うにしている。さらに、前記分割方針は、前記サービス
範囲情報に含まれる、各ローカルプロセッサシステム毎
のサービス要求数を測定し、測定した各ローカルプロセ
ッサシステム毎のサービス要求数を基に、サービス範囲
を分割するようにしている。また、ローカルプロセッサ
システム間でプロセスを移送するためのプロセス移送手
段とサーバプロセスを有する複数のローカルプロセッサ
システムを連結した分散システム上に構築したクライア
ントサーバシステムにおいて、前記サーバプロセスは、
自サーバプロセスのサービス範囲を定義したサービス範
囲情報を備え、自サーバプロセスのサービス負荷を測定
し、サービス負荷が所定の負荷レベルを越えたとき、自
サーバプロセスの複製を作成し、複製元サーバプロセス
と複製サーバプロセスとの間で前記サービス範囲を分割
し、複製サーバプロセスを異なるローカルプロセッサシ
ステムに移送し、配置するようにしている。さらに、前
記複製元サーバプロセスに前記複製サーバプロセスのロ
ケーション情報を、前記複製サーバプロセスに前記複製
元サーバプロセスのロケーション情報を設定するように
している。
【0007】
【発明の実施の形態】以下、本発明の実施例を説明す
る。 《実施例1》本発明の実施例1を図1〜図12で説明す
る。なお、本実施例において、プロセスはプログラムの
実行単位であり、サーバは、クライアントサーバシステ
ムにおいて、あるサービスを提供するプロセスであり、
クライアントは、クライアントサーバシステムにおい
て、あるサーバに対して特定のサービスを要求するプロ
セスである。さらに、サーバプロセスとサーバは同意味
であり、クライアントとクライアントプロセスは同意味
である。
【0008】まず、図1〜図8で、本発明を適用するク
ライアントサーバシステムの構成を説明する。図1は、
本発明を適用するクライアントサーバシステムの全体構
成を示す。図1において、クライアントサーバシステム
は、各ローカルプロセッサシステム(101〜105)
を相互に連結した分散システム上で構築される。各ロー
カルプロセッサシステムでは、複数のプロセスが動作可
能であり、当該分散システムでは、あるサービスを提供
するサーバ(1011、1021、1031、104
1、1051)と、サーバに対してサービス要求を発行
するクライアント(1012、1022、1032、1
042、1052)が動作する。サービスロケーション
サーバ(1013)は、特定のローカルプロセッサシス
テム(101)上に存在し、サーバ(1011、102
1、1031、1041、1051)により申告された
ロケーション情報を管理し、クライアントから要求され
たサービスを提供するサーバのロケーション情報をクラ
イアントに教える。各ローカルプロセッサシステム(1
01〜105)は、サービスロケーションサーバとの通
信手段を確立するためのロケーションサービスサーバ情
報(1014、1024、1034、1044、105
4)を有し、サービスロケーションサーバ(1013)
以外のプロセス(1011、1021、1031、10
41、1051、1012、1022、1032、10
42、1052)は、各プロセッサシステム(101〜
105)上のロケーションサービスサーバ情報(101
4、1024、1034、1044、1054)を使用
し、サービスロケーションサーバ(1013)との通信
手段を確立し、通信することができる。さらに、各ロー
カルプロセッサシステム(101〜105)は、自ロー
カルプロセッサシステム上のプロセスを任意の他のロー
カルプロセッサシステムに移送する、プロセス移送手段
(1015、1023、1033、1043、105
3)を有する。
【0009】図2は、サービスロケーションサーバ(1
013)の構成を示す。図2において、サービスロケー
ションサーバ(1013)は、各サーバが申告したロケ
ーション情報から構成したサービスロケーション情報
(201)と、当該サーバ(1013)のサービス負荷
状況を測定する負荷測定手段(207)と、負荷測定手
段(207)により測定したサービス負荷情報(20
6)と、当該サーバ(1013)がサービスするローカ
ルプロセッサシステムの範囲を示すサービス範囲情報
(203)と、当該サーバ(1013)を分割するか否
かを判定するための基準である分割基準情報(205)
と、当該サーバ(1013)を分割するためのサーバ分
割手段(202)と、当該サーバ(1013)から生成
された複製サービスロケーションサーバの移送先である
ローカルプロセッサシステムを選択する移送先プロセッ
サシステム選択手段(209)と、自サーバ(101
3)以外で、サーバプロセスのロケーション情報を管理
するサービスロケーションサーバが存在する時に、他の
サービスロケーションサーバのロケーション情報を格納
する他サーバロケーション情報(208)を有する。
【0010】図3は、サービスロケーションサーバ(1
013)が管理するサービスロケーション情報(20
1)の構成を示す。図3において、サービスロケーショ
ン情報(201)は、任意のサーバプロセスが当該ロケ
ーションサーバ(1013)に申請したサービス内容を
示すサービス識別子(301)と、サービスを提供する
サーバが配置されているローカルプロセッサシステムを
示すサービスサーバ所在プロセッサ識別子(302)
と、サービスを提供するサーバとの通信手段を確立する
ためのサービスサーバ通信情報(302)と、登録され
た情報が有効であるか否か示す有効フラグ(304)を
有する。サービスロケーションサーバ(1013)は、
クライアントからのサービスサーバロケーション情報の
問い合わせに対して、少なくともサービスサーバ通信情
報(303)を応答する。
【0011】図4は、サービス範囲情報(203)の構
成を示す。図4において、サービス範囲情報(203)
は、サービスロケーションサーバ(1013)がサービ
スするプロセッサシステムの集合を表し、サービス対象
であるプロセッサシステムを示すプロセッサシステム識
別子(401)と、どのサービスロケーションサーバが
サービスを担当しているかを示す識別情報(402)
(サービスロケーションサーバが分割されているとき
は、識別情報として2とか3が混在することになる)
と、当該サービスロケーションサーバのサービス範囲を
分割するときに複製元となるサービスロケーションサー
バのサービス範囲となることを示す複製元担当情報フラ
グ(403)を有する。また、本例では、プロセッサシ
ステム識別子(401)は各ローカルプロセッサシステ
ムにつけられたプロセッサ番号であり、サービス範囲情
報(203)にはプロセッサ番号の小さい順にエントリ
されているものとする。
【0012】図5は、サービス負荷情報(206)の構
成を示す。図5において、サービス負荷情報(206)
は当該サーバ(1013)のサービスを開始してからの
単位時間あたりの最大サービス実行数(501)と、測
定時間を過ぎたか否かを判定するための基準時刻(50
2)と、基準時刻(502)が設定されてから当該サー
ビスロケーションサーバが実行したサービス数のカウン
タ(503)と、測定時間間隔(504)を有する。最
大サービス実行数(501)は、負荷測定手段(20
7)により、設定される。
【0013】図6は、分割基準情報(205)の構成を
示す。図6において、分割基準情報(205)は、あら
かじめ決められている、単位時間あたりの最大サービス
実行数のしきい値(601)を有する。最大サービス実
行数(501)としきい値(601)を比較することに
より、当該サーバ(1013)を分割するか否かを判定
する。
【0014】図7は、ローカルプロセッサシステム(1
02)上のロケーションサービスサーバ情報(102
4)の構成を示す。図7において、ロケーションサービ
スサーバ情報(1024)は、サービスロケーションサ
ーバ(1013)が配置されているローカルプロセッサ
システムを示すサービスサーバ所在プロセッサ識別子
(701)と、上記サーバ(1013)との通信手段を
確立するための通信情報(702)を有する。図1にお
ける、他のローカルプロセッサシステム上にあるロケー
ションサービスサーバ情報(1014、1034、10
44、1054)も同様である。
【0015】図8は、サービスロケーションサーバ(1
013)が有する他サーバロケーション情報(208)
の構成を示す。図8において、他サーバロケーション情
報(208)は、当該サーバ(1013)の上記サービ
ス範囲情報(203)に含まれないサービス範囲をサー
ビスする、他のサービスロケーションサーバのロケーシ
ョン情報を保持する。他サーバロケーション情報(20
8)は、他のサービスロケーションサーバが存在するロ
ーカルプロセッサシステムを示すサーバ所在プロセッサ
識別子(801)と、プロセッサ識別子(801)が示
すローカルプロセッサシステム上のサービスロケーショ
ンサーバとの通信手段を確立するための通信情報(80
2)と、他のサービスロケーションサーバの識別情報
(803)を有する。識別情報(803)はサービス範
囲情報(203)の識別情報(402)に対応する。
【0016】以上説明した構成のクライアントサーバシ
ステムにおいて、サービスロケーションサーバ(101
3)と、サービスロケーションサーバ(1013)以外
のサーバと、クライアントは以下のように動作する。サ
ービスロケーションサーバ(1013)以外のサーバ
は、自サーバが提供するサービスを示すサービス識別子
と、自サーバと他のクライアントが通信するための通信
情報とを含む、自サーバのロケーション情報をサービス
ロケーションサーバ(1013)に登録申請する。ロケ
ーション情報の登録申請を受けたサービスロケーション
サーバ(1013)は、申請されたロケーション情報を
サービスロケーション情報として登録する。
【0017】クライアントは、自クライアントが要求す
るサービスを示すサービス識別子を指定して、要求サー
ビスを提供するサーバのロケーション情報を、サービス
ロケーションサーバ(1013)に問い合わせる。クラ
イアントからの問い合わせ要求を受け取ったサービスロ
ケーションサーバ(1013)は、指定されたサービス
識別子により、サービスロケーション情報を検索し、指
定されたサービス識別子が示すサービスを提供するサー
バとの通信情報を、問い合わせ要求を発行したクライア
ントに通知する。クライアントの要求サービスを提供す
るサーバとの通信情報を得たクライアントは、要求サー
ビスを提供するサーバとの通信手段を確立し、サービス
要求を発行する。
【0018】さらに、サービスロケーションサーバ(1
013)は、自サーバ(1013)に対する要求を受け
取った時に、負荷測定手段(207)により自サーバ
(1013)のサービス負荷測定処理を行い、サービス
負荷が分割基準情報(205)に定義されたサービス負
荷より大きくなったときに、サービス分割手段(20
2)により自サーバ(1013)のサーバ分割処理を行
なう。
【0019】次に、図9で、サービスロケーション情報
の登録処理を説明する。図9は、任意のプロセスがロケ
ーション情報登録要求を発行したときの、サービスロケ
ーションサーバ(1013)のロケーション情報登録処
理の動作を示すフローチャート図である。図9におい
て、ステップ902は、任意のプロセスからロケーショ
ン情報登録要求が発行された時に、発行された要求内容
を解析する処理である。サービスロケーションサーバが
受け取るロケーション情報登録要求には、要求発行プロ
セスが提供するサービスを示すサービス識別子と、要求
プロセスが存在するローカルプロセッサシステムを示す
プロセッサシステム識別子と、任意のプロセスが登録要
求発行プロセスとの通信手段を確立するための通信情報
を含んでいる。受け取ったロケーション情報登録要求を
解析することで、サービスロケーションサーバ(101
3)は、どのプロセスが、どこに存在し、どのサービス
を提供するかを知ることができる。ステップ903、9
04は、登録要求を発行したプロセスが、当該サービス
ロケーションサーバが担当するサービス範囲に含まれる
か否かを判定するサービス範囲判定処理である。サービ
スロケーションサーバは、上記ステップ902により、
要求を発行したプロセスが存在するローカルプロセッサ
システムを知ることができ、さらに、サービス範囲情報
(203)に、要求を発行したプロセスが存在するロー
カルプロセッサシステムを示すプロセッサシステム識別
子が登録されており、かつ、当該サービスロケーション
サーバのサービス範囲であることを示す識別情報がセッ
トされている場合に、サービス範囲であると判定する。
【0020】ステップ901、908、909、90
5、906は、上記ステップ903、904で登録要求
を発行したプロセスが当該サービスロケーションサーバ
が担当するサービス範囲に含まれる場合の処理であり、
ステップ907は登録要求を発行したプロセスが当該サ
ービスロケーションサーバが担当するサービス範囲外で
あると判定した場合の処理である。ステップ901は、
サービスロケーションサーバ(1013)のサービス負
荷を測定するサービス負荷測定処理である。本実施例で
は、一定時間間隔に実行するサービス数を測定するもの
とする。当該処理の詳細は図11を用いて後述する。ス
テップ908、909は、ステップ903、904と同
じサービス範囲判定処理である。この処理はステップ9
01でサーバが分割される場合があるため、この分割を
想定して行なわれる処理である。ステップ908、90
9で、サービス範囲外であると判定された場合、登録要
求は無視される。ステップ905は、登録要求されたロ
ケーション情報をサービスロケーション情報(201)
に登録する。サービスロケーションサーバ(1013)
は、サービスロケーション情報として、サービス内容を
示すサービス識別子(301)と、登録要求を発行した
プロセスが存在するローカルプロセッサシステムを示す
サービスサーバ所在プロセッサ識別子(302)と、登
録要求したプロセスとの通信手段を確立するための通信
情報(303)を登録し、有効フラグ(304)をセッ
トする。ステップ906は、登録処理の完了を登録要求
したプロセスに通知する登録完了通知処理である。サー
ビスロケーションサーバは、登録要求を発行したプロセ
スに、登録処理が完了したことを通知する。
【0021】上記ステップ903、904で、登録要求
を発行したプロセスが、当該サービスロケーションサー
バが担当するサービス範囲外であると判定された場合、
ステップ907の登録失敗通知処理を行う。ステップ9
07は、登録要求を発行したプロセスが当該サービスロ
ケーションサーバのサービス範囲外であることと、さら
に、登録要求を発行したプロセスが存在するローカルプ
ロセッサシステムに対応するプロセッサシステム識別子
(401)の識別情報(402)と一致する、他サーバ
ロケーション情報(208)の識別情報(803)を有
する他のサービスロケーションサーバのロケーション情
報を、登録要求発行プロセスに通知する。
【0022】次に、図10で、サービスロケーション情
報の問い合わせ処理を説明する。図10は、任意のプロ
セスがロケーション情報の問い合わせ要求を発行したと
きの、サービスロケーションサーバ(1013)のロケ
ーション情報問い合わせ処理の動作を示すフローチャー
ト図である。図10において、ステップ10001は、
任意のプロセスからロケーション情報問い合わせ要求が
発行された時に、発行された要求内容を解析する処理で
ある。サービスロケーションサーバが受け取るロケーシ
ョン情報問い合わせ要求には、問い合わせ要求発行プロ
セスが受けようとするサービスを示すサービス識別子
と、要求プロセスが存在するローカルプロセッサシステ
ムを示すプロセッサシステム識別子と、問い合わせ要求
を発行したプロセスが当該サービスロケーションサーバ
と異なるサービス範囲を有するサービスロケーションサ
ーバであるか否かを示すフラグとを含んでいる。受け取
ったロケーション情報問い合わせ要求を解析すること
で、サービスロケーションサーバ(1013)は、要求
発行プロセスが、どこに存在し、どのサービスを提供す
るサーバプロセスのロケーション情報を問い合わている
かを知ることができ、さらに、問い合わせ要求を発行し
たプロセスが、自サービスロケーションサーバと異なる
サービス範囲を有するサービスロケーションサーバであ
るか否かを知ることができる。
【0023】ステップ10016は、問い合わせ要求を
発行したプロセスが当該サービスロケーションサーバ以
外のサービスロケーションサーバであるか否かの判定処
理をする。問い合わせ要求を発行したプロセスが当該サ
ービスロケーションサーバ以外のサービスロケーション
サーバである場合、ステップ10007に処理を進め、
それ以外の場合、ステップ10002に処理を進める。
ステップ10002、10003は、問い合わせ要求を
発行したプロセスが、当該サービスロケーションサーバ
が担当するサービス範囲に含まれるか否かを判定するサ
ービス範囲判定処理である。サービスロケーションサー
バは、上記ステップ10001により、要求を発行した
プロセスが存在するローカルプロセッサシステムを知る
ことができ、さらに、サービス範囲情報(203)に、
要求を発行したプロセスが存在するローカルプロセッサ
システムを示すプロセッサシステム識別子が登録されて
おり、かつ、当該サービスロケーションサーバのサービ
ス範囲であることを示す識別情報がセットされている場
合に、サービス範囲であると判定する。上記ステップ1
0002、10003でサービス範囲外であると判定さ
れた場合、ステップ10015の範囲外報告通知処理を
行う。ステップ10015は、問い合わせ要求を発行し
たプロセスが当該サービスロケーションサーバのサービ
ス範囲外であることと、さらに、問い合わせ要求を発行
したプロセスが存在するローカルプロセッサシステムに
対応するプロセッサシステム識別子(401)の識別情
報(402)と一致する、他サーバロケーション情報
(208)の識別情報(803)を有する他のサービス
ロケーションサーバのロケーション情報を、問い合わせ
要求発行プロセスに通知する。
【0024】ステップ10004〜ステップ10014
は、上記ステップ10002、10003で問い合わせ
要求を発行してプロセスが当該サービスロケーションサ
ーバのサービス範囲に含まれると判定した場合の処理で
ある。ステップ10004は、サービスロケーションサ
ーバ(1013)のサービス負荷を測定するサービス負
荷測定処理である。本実施例では、一定時間間隔に実行
するサービス数を測定するものとする。ステップ100
05、10006は、ステップ10002、10003
と同じサービス範囲判定処理である。この処理はステッ
プ10004でサーバが分割される場合があるため、こ
の分割を想定して行なわれる処理である。ステップ10
005、10006で、サービス範囲外であると判定さ
れた場合、問い合わせ要求は無視される。これは分割が
行なわれる場合に生じる混乱を防止するためである。上
記ステップ10005、10006でサービス範囲内で
あると判定された場合、ステップ10007〜ステップ
10014の処理を実行する。
【0025】ステップ10007は、問い合わせ要求を
発行したプロセスが指定したサービス識別子と一致する
サービス識別子を有するロケーション情報をサービスロ
ケーション情報(201)から検索する。ステップ10
008は、上記ステップ10007で検索したロケーシ
ョン情報がサービスロケーション情報(201)に存在
するか否かの判定処理である。上記ステップ10008
で、要求されたロケーション情報が存在しないと判定さ
れてた場合、ステップ10012へ処理が進み、要求さ
れたロケーション情報が見つかった場合はステップ10
009に処理が進む。ステップ10009、10010
は、上記ステップ10007で見つかったロケーション
情報に関して、そのロケーション情報が自サービスロケ
ーションサーバが管理するロケーション情報であるか否
かを判定する処理である。上記ステップ10007で見
つかったロケーション情報のサービスサーバ所在プロセ
ッサ識別子と、当該サービスロケーションサーバのサー
ビス範囲情報(203)により、当該サービスロケーシ
ョンサーバのサービス範囲であるか否かを判定する。上
記ステップ10009、10010において、上記ステ
ップ10007で検索されたロケーション情報がサービ
ス範囲外であると判定された場合、ステップ10012
に処理を進める。また、上記ステップ10007で検索
されたロケーション情報がサービス範囲に含まれると判
定された場合、ステップ10011に処理を進める。ス
テップ10011は、検索されたロケーション情報を、
問い合わせ要求を発行したプロセスに通知する問い合わ
せ情報通知処理である。当該サービスロケーションサー
ビスサーバは問い合わせ要求を発行したプロセスにロケ
ーション情報を通知する。
【0026】ステップ10012は、当該サービスロケ
ーションサーバが管理するロケーション情報以外のロケ
ーション情報に関する問い合わせ要求を受け取った場合
に、他のサービスロケーションサーバに対してロケーシ
ョン情報を問い合わせる処理である。当該サービスロケ
ーションサーバは、他サーバロケーション情報に登録さ
れているロケーション情報を使用して、他のサービスロ
ケーションサーバに、要求されたサービスを実行するサ
ーバのロケーション情報を問い合わせる。ステップ10
013は、上記ステップ10012の処理結果により、
他サービスロケーションサーバに問い合わせた結果を判
定する処理である。上記ステップ10012により、他
サービスロケーションサーバに要求したロケーション情
報が見つかった場合、上記ステップ10011により、
当該サービスロケーションサーバに対して、問い合わせ
要求を発行したプロセスにロケーション情報を通知す
る。他サービスロケーションサーバに要求したロケーシ
ョン情報が見つからなかった場合、ステップ10014
に処理を進める。ステップ10014は、当該サービス
ロケーションサーバに要求したロケーション情報が見つ
からなかった場合の未登録通知処理である。当該サービ
スロケーションサーバは、問い合わせ要求を発行したプ
ロセスに対して、ロケーション情報が登録されていない
ことを通知する。
【0027】次に、図9におけるステップ901、図1
0におけるステップ10004であるサービス負荷測定
処理を、図11で説明する。本実施例では、一定時間間
隔に実行するサービス数を測定するものとする。図11
において、ステップ11001は、サービスロケーショ
ンサーバが何らかの要求を受け取った時の時刻を取得す
る処理である。ステップ11002、11003は、現
在の負荷測定時間間隔が過ぎているか否かを判定する測
定時間間隔判定処理である。ステップ11002、11
003では、基準時刻(502)(測定を開始する時
刻)を測定時間間隔(504)の分だけ進めた時刻と、
上記ステップ11001で取得した時刻を比較する。基
準時刻(502)を測定時間間隔(504)の分だけ進
めた時刻が上記ステップ11001で取得した時刻より
も小さい場合、ステップ11004に進む。それ以外の
場合、負荷測定中であると判定し、処理11008に処
理を進める。
【0028】ステップ11004〜ステップ11007
は、上記ステップ11002、11003により、現在
の負荷測定時間間隔が過ぎていると判定された場合の処
理である。ステップ11004、11005は、サービ
ス負荷情報(206)が有する単位時間あたりの最大サ
ービス実行数(501)を更新するか否かを判定する更
新判定処理である。ステップ11004、11005
は、上記最大サービス実行数(501)の値と実行サー
ビスカウンタ(503)の値を比較することで、上記最
大サービス実行数(501)の値を更新する必要がある
か否かを判定する。ステップ11006、11007
は、上記ステップ11004、11005で、上記最大
サービス実行数(501)の値を更新する必要があると
判定された場合の処理である。ステップ11006は、
最大実行サービス数(501)の更新処理であり、実行
サービス数カウンタ(503)の値を最大実行サービス
数(501)にコピーする。ステップ11007は、測
定環境初期化処理であり、基準時刻(502)の内容は
上記ステップ11001で取得した時刻に変更され、実
行サービス数カウンタ(503)はクリアされる。上記
ステップ11004、11005で、上記最大サービス
実行数(501)の値を更新する必要がないと判定され
た場合、ステップ11008に処理を進める。
【0029】ステップ11008は、実行サービス数カ
ウンタ(503)の更新処理であり、実行サービス数カ
ウンタ(503)の値を1ずつカウントアップする。ス
テップ11009、11010は、当該サービスロケー
ションサーバを分割するか否かの判定処理である。サー
ビス負荷情報(206)に含まれる最大サービス実行数
(501)が示す値と、分割基準情報(205)に含ま
れるしきい値(601)を比較することで判定する。最
大サービス実行数(501)の値がしきい値(601)
の値より大きい場合に分割が必要であると判定し、それ
以外は分割が必要でないと判定する。上記ステップ11
009、11010により、分割が必要であると判定さ
れた場合、サーバ分割処理(ステップ11011)を実
行する。
【0030】次に、図12でサーバ分割処理を説明す
る。図12はサーバ分割処理の動作を示すフローチャー
ト図である。図12において、ステップ12001は、
当該サービスロケーションサーバが担当するサービス範
囲の分割状態を設定する複製元担当サービス範囲設定処
理である。ステップ12001では、当該サービスロケ
ーションサーバのサービス範囲情報(203)に含まれ
る複製元担当情報フラグ(403)をセットする。複製
元担当情報フラグ(403)は、当該サーバが分割され
た場合、複製元担当情報フラグ(403)がセットされ
ているプロセッサシステム識別子で示すローカルプロセ
ッサシステムが、複製元サーバのサービス範囲に含まれ
ることを示す。サービス範囲の分割方針はあらかじめ決
められており、本例では、サービス範囲情報に登録され
ているプロセッサシステムで、かつ、自サービスロケー
ションサーバが担当しているプロセッサシステムの、シ
ステム数を二分する分割方針であることとする。つま
り、自サービスロケーションサーバが担当するローカル
プロセッサシステムのシステム数がkであるとすると、
システム数kが偶数である場合、担当するシステム数
を、(k/2)ずつ、複製元サーバと複製サーバで分割
し、システム数kが奇数である場合、((k−1)/2
+1)と((k−1)/2)に、複製元サーバと複製サ
ーバで分割するものとする。ステップ12001では、
複製元サーバが担当するローカルプロセッサシステムの
複製元担当情報フラグ(403)を二分したプロセッサ
システム数だけセットする。
【0031】ステップ12002は、現サービスロケー
ションサーバの複製を、同一ローカルプロセッサシステ
ム上に生成するサーバ複製生成処理である。ステップ1
2002では、複製が生成される時点での複製元となっ
たサービスロケーションサーバの内部データを含む動作
環境まで複製する。ステップ12008は、複製サー
バ、複製元サーバがそれぞれ自サーバが複製されたサー
バであるか、複製元サーバであるか判定する処理であ
る。ステップ12004は、複製サーバを配置するロー
カルプロセッサシステムを選択する移送先プロセッサシ
ステム選択処理である。複製元サーバは、自サーバが有
する移送先プロセッサシステム選択手段(209)によ
り、複製サーバが担当するローカルプロセッサシステム
のうち一つを選択する。ステップ12005は、複製元
サーバが、複製サーバを上記ステップ12004で選択
したローカルプロセッサシステムに、移送するプロセス
移送処理である。ステップ12006は、複製元サーバ
と複製サーバが互いのロケーション情報を他サーバロケ
ーション情報にセットする他サーバロケーション情報設
定処理である。複製元サーバと複製サーバが互いのロケ
ーション情報を設定することで通信することが可能とな
る。ステップ12007は、複製サーバと複製元サーバ
がそれぞれ自分が管理するサービス情報を修正するサー
ビス範囲情報設定処理である。複製サーバは、自サーバ
のサービス範囲情報のうち、自サーバが担当することに
なっているローカルプロセッサシステムで、かつ複製元
担当情報フラグ(403)がセットされている情報の識
別情報(402)を上記ステップ12006で設定した
他サーバロケーション情報の識別情報(803)の内容
と一致するように更新する。複製元サーバは自サーバの
サービス範囲情報のうち、自サーバが担当することにな
っているローカルプロセッサシステムで、かつ複製元担
当情報フラグ(403)がセットされていない情報の識
別情報(402)を上記ステップ12006で設定した
他サーバロケーション情報の識別情報(803)の内容
と一致するように更新する。さらに、複製サーバおよび
複製元サーバは、自サーバが管理するサービス範囲情報
(203)の識別情報(402)の設定が完了後、複製
元担当情報フラグ(403)をクリアする。
【0032】以上、図1〜図12で説明した例では、プ
ロセス間のロケーション情報を管理するサービスロケー
ションサーバに対して本発明を適用した例を示した。上
記例で示したように、本発明を適用することにより、サ
ービスロケーションサーバは自分の負荷状況により、自
らのサービス範囲を分割でき、自己増殖的にサーバを増
加させる。さらに、負荷に応じてサーバが増加するた
め、固定的にサーバの数を決定する必要がない。さら
に、負荷に応じて、サーバを複製し、複製元であるサー
バと複製サーバにより、大域的なシステム資源を分散管
理できる。
【0033】また、上記例において、上記サービスロケ
ーションサーバのサービス範囲が分割された後、ロケー
ション情報に関する登録/問い合わせ要求を受け取った
サービスロケーションサーバは、以下のような処理を行
う。ロケーション情報登録要求プロセスがサービス範囲
内のローカルプロセッサシステムに存在する場合、サー
ビスロケーションサーバは自サーバが有するロケーショ
ン情報に登録要求されたロケーション情報を登録する。
ロケーション情報登録要求プロセスがサービス範囲外の
ローカルプロセッサシステムに存在する場合、登録要求
を発行したプロセスがサービス範囲外であることと、自
サービスロケーションサーバと異なるサービス範囲を有
するサービスロケーションサーバのロケーション情報
を、登録要求を発行したプロセスに通知する。これによ
り、サービス範囲外であると通知されたプロセスは、他
のサービスロケーションサーバに対して登録要求を発行
できる。ロケーション情報問い合わせプロセスがサービ
ス範囲内のローカルプロセッサシステムに存在し、要求
されたロケーション情報がサービス範囲内のローカルプ
ロセッサシステムに存在するプロセスのロケーション情
報である場合、サービスロケーションサーバは自サーバ
が有するロケーション情報のうち要求されたロケーショ
ン情報を通知する。ロケーション情報問い合わせプロセ
スがサービス範囲内のローカルプロセッサシステムに存
在し、要求されたロケーション情報がサービス範囲外の
ローカルプロセッサシステムに存在するプロセスのロケ
ーション情報である場合、当該サービスロケーションサ
ーバは、自サーバと異なるサービス範囲を有する他のサ
ービスロケーションサーバに要求されたロケーション情
報を問い合わせ、他のサービスロケーションサーバから
提供されたロケーション情報をロケーション情報問い合
わせプロセスに通知する。ロケーション情報問い合わせ
プロセスがサービス範囲外のローカルプロセッサシステ
ムに存在する場合、問い合わせ要求を発行したプロセス
がサービス範囲外であることと、自サービスロケーショ
ンサーバと異なるサービス範囲を有するサービスロケー
ションサーバのロケーション情報を、問い合わせ要求を
発行したプロセスに通知する。これにより、サービス範
囲外であると通知されたプロセスは、他のサービスロケ
ーションサーバに対して問い合わせ要求を発行できる。
【0034】《実施例2》次に、上記実施例において、
サービス負荷をローカルプロセッサシステム毎に測定
し、プロセッサ毎の測定結果をもとに分割範囲を決定す
る実施例を図13で説明する。図13は、ローカルプロ
セッサ毎のサービス負荷を測定するためのサービス負荷
情報の構成を示した図である。図13において、サービ
ス負荷情報(206)は当該サーバ(1013)のサー
ビスを開始してからの単位時間あたりの最大サービス実
行数(501)と、測定時間を過ぎたか否かを判定する
ための基準時刻(502)と、基準時刻(502)が設
定されてから当該サービスロケーションサーバが実行し
たサービス数のカウンタ(503)と、測定時間間隔
(504)と、サービスを要求したプロセッサシステム
毎のサービス負荷情報(13001)を有する。プロセ
ッサシステム毎のサービス負荷情報(13001)は、
ローカルプロセッサシステムを示すプロセッサ識別子
(13002)と、プロセッサシステム毎の単位時間あ
たり実行サービス数カウンタ(13003)と、プロセ
ッサシステム毎の当該サーバ(1013)のサービスを
開始してからの単位時間あたりの最大サービス実行数
(13004)を有する。
【0035】次に、図13で示した構成のサービス負荷
情報(206)を使用して、当該サーバ(1013)の
サービス負荷を測定する処理を説明する。基本的に、図
11を用いて説明したサービス負荷測定処理と同様の処
理を行う。図11におけるステップ11006に、プロ
セッササービス負荷情報(13001)の各ローカルプ
ロセッサシステムの実行サービス数カウンタ(1300
3)の値と、各ローカルプロセッサシステムの単位時間
あたりの最大サービス実行数(13004)の値を比較
して、実行サービス数カウンタ(13003)の値が最
大サービス実行数(13004)の値より大きいとき
に、実行サービス数カウンタ(13003)の値を最大
サービス実行数(13004)の値にコピーする処理を
追加する。さらに、図11におけるステップ11007
に、各ローカルプロセッサシステム毎の実行サービス数
カウンタ(13003)の値をクリアする処理を追加す
る。さらに、図11におけるステップ11008に、要
求を発行したプロセスが存在するローカルプロセッサシ
ステムの実行サービス数カウンタ(13003)の値を
1だけ増加させる処理を追加する。以上のようにするこ
とで、サービス負荷情報として、各ローカルプロセッサ
システム毎のサービス負荷を測定することができる。さ
らに、図12で示したサーバ分割処理におけるステップ
12001の複製元担当サービス範囲設定処理で、上記
サービス負荷情報(13001)を用いることで、サー
ビス範囲を設定する基準として、各ローカルプロセッサ
システム毎の実行サービス数を用いることができる。つ
まり、各ローカルプロセッサシステムから要求により、
サービス範囲を設定できる。
【0036】以上、説明した実施例では、サーバのサー
ビス負荷レベルを測定し、所定の負荷レベルを越えた場
合に、当該サーバのサービス範囲に含まれるローカルプ
ロセッサシステムのうち、各ローカルプロセッサシステ
ムのプロセッサ番号の小さい順から、固定数のローカル
プロセッサシステムを選択し、選択されたローカルプロ
セッサシステムを複製元サーバプロセスのサービス範囲
とし、サービス範囲である残りのローカルプロセッサシ
ステムを複製サーバプロセスのサービス範囲とする実施
例1と、サービス負荷レベルをサービス範囲内のローカ
ルプロセッサ毎に測定する実施例2を説明した。
【0037】《実施例3》次に、実施例3として、分割
方針を記述したファイルの内容に従って、サーバを分割
する実施例を説明する。実施例3を図14〜図19、図
24で説明する。図14は、本発明を適用するクライア
ントサーバシステムの構成の一部を示す図である。図1
4は、図1で示したクライアントサーバシステムの一部
であり、ローカルプロセッサシステム(101)の構成
を示している。実施例3における本発明を適用するクラ
イアントサーバシステムの構成は図1に示したシステム
構成に準じ、図14記載以外の構成要素は同じものとす
る。
【0038】図14において、プロセッサシステム(1
01)は外部記憶装置(14001)を有する。さら
に、外部記憶装置(14001)には、サービスロケー
ションサーバ(14003)の分割方針を記述した分割
方針記述ファイル(14002)が存在する。サービス
ロケーションサーバ(14003)は、サービスロケー
ションサーバ(1013(図1))と同様に、サーバ
(1011、1021、1031、1041、105
1)により申告されたロケーション情報を管理し、クラ
イアントから要求されたサービスを提供するサーバのロ
ケーション情報をクライアントに教える。さらに、サー
ビスロケーションサーバ(14003)は、外部記憶装
置インタフェース(14004)を用いて、分散方針記
述ファイルを読み込む。
【0039】図15は、サービスロケーションサーバ
(14003)の構成を示す図である。図15におい
て、サービスロケーションサーバ(14003)は、サ
ービスロケーション情報(201)と、サービス範囲情
報(203)と、分割基準情報(205)と、サービス
負荷情報(206)と、負荷測定手段(207)と、他
サーバロケーション情報(208)と、サーバ分割手段
(202)と、分割方針情報(15001)と、分割レ
ベル情報(15002)と、移送先プロセッサシステム
選択手段(209)を有する。分割レベル情報(150
02)は、サーバ(14003)の分割レベルを示す。
分割レベル情報(15002)の初期値は0であり、複
製サーバ生成時に、複製サーバの分割レベル情報(15
002)は1だけ増加される。分割方針情報(1500
1)は、分割方針記述ファイル(14002)の内容を
反映したサーバ分割方針情報である。
【0040】図16は分割方針記述ファイル(1400
2)の構成を示す図である。図16において、分割方針
記述ファイル(14002)は、分割方針記述レコード
(16001〜16005)で構成される。
【0041】図17は、分割方針記述レコード1(16
001)の構成を示す図である。図17において、分割
方針記述レコード1(16001)は、分割レベルを指
定する分割レベル指定フィールド(17001)、分割
後の複製サーバを配置するローカルプロセッサシステム
を指定するサーバ配置プロセッサ指定フィールド(17
002)、同一分割レベルを有するレコードのうち、ど
のレコードを優先して選択するかを判定するための優先
度を指定する優先度指定フィールド(17003)、分
割後の複製サーバのサービス範囲を指定するサービス範
囲指定フィールド(17004)を有する。
【0042】図18は、分割方針記述ファイル(140
02)の記述例を示す図である。図18において、分割
方針記述ファイル(14002)は4つの分割方針記述
レコードで構成され、分割方針記述レコードの各フィー
ルド(17001、17002、17003、1700
4)は、コロン(:)で区切られている。第1のレコー
ドは、分割レベルが0、複製サーバを配置するローカル
プロセッサシステムの番号が1、優先度が1、サービス
範囲がプロセッサシステム番号1〜16のローカルプロ
セッサシステム群であることを示す。第2のレコード
は、分割レベルが1、複製サーバを配置するローカルプ
ロセッサシステムの番号が9、優先度が1、サービス範
囲がプロセッサシステム番号9〜16のローカルプロセ
ッサシステム群であることを示す。第3のレコードは、
分割レベルが1、複製サーバを配置するローカルプロセ
ッサシステムの番号が5、優先度が2、サービス範囲が
プロセッサシステム番号5〜8のローカルプロセッサシ
ステム群であることを示す。第4のレコードは、分割レ
ベルが2、複製サーバを配置するローカルプロセッサシ
ステムの番号が13、優先度が1、サービス範囲がプロ
セッサシステム番号13〜16のローカルプロセッサシ
ステム群であることを示す。また、分割レベル0は、サ
ーバの初期状態を示し、分割レベル1は分割レベル0状
態からサーバが分割することを示し、分割レベル2は分
割レベル1からサーバが分割することを示す。さらに、
優先度指定フィールドの値は、値が小さい方が優先され
ることを意味する。
【0043】従って、図18の分割方針記述ファイルに
よれば、初期状態として、サービス範囲がプロセッサ番
号1〜16のローカルプロセッサシステム群であるサー
ビスロケーションサーバをプロセッサ番号1のローカル
プロセッサシステムに配置する。このときにサービスロ
ケーションサーバをサーバ1とする。サーバ1のサービ
ス負荷が予定の負荷レベルを越えた時に、サーバ1は複
製サーバを生成し(この時の複製サーバ(複製サービス
ロケーションサーバ)をサーバ2とする)、サーバ2と
サービス範囲を分割する。分割後のサーバ1のサービス
範囲は、プロセッサ番号1〜8のローカルプロセッサシ
ステム群であり、サーバ2のサービス範囲はプロセッサ
番号9〜16のローカルプロセッサシステム群である。
また、サーバ1分割後のサーバ2の配置は、プロセッサ
番号9のローカルプロセッサシステム上である。
【0044】さらに、サーバ1のサービス負荷が所定の
負荷レベルを越えた場合、サーバ1はさらに複製サーバ
を生成し(このときに複製サーバをサーバ3とする)、
サーバ3とサービス範囲を分割する。この分割後のサー
バ1のサービス範囲はプロセッサ番号1〜4のローカル
プロセッサシステム群であり、サーバ3のサービス範囲
はプロセッサ番号5〜8のローカルプロセッサシステム
群である。また、サーバ3の配置はプロセッサ番号5の
ローカルプロセッサシステム上である。
【0045】さらに、サーバ2のサービス負荷が所定の
負荷レベルを越えた場合、サーバ2は複製サーバを生成
し(このときの複製サーバをサーバ4とする)、サーバ
4とサービス範囲を分割する。この分割後のサーバ2の
サービス範囲はプロセッサ番号9〜12のローカルプロ
セッサシステム群であり、サーバ4のサービス範囲はプ
ロセッサ番号13〜16のローカルプロセッサシステム
群である。またサーバ4の配置はプロセッサ番号13の
ローカルプロセッサシステム上である。なお、複製サー
バが生成されたとき、複製サーバには複製元サーバの分
割方針情報も複写される。
【0046】図19は、分割方針情報(15001)の
構成を示す図である。図19において、分割方針情報
(15001)は、分割レベル(19001)と、サー
バ配置プロセッサ識別子(19002)と、優先度情報
(19003)と、サービス範囲情報(19004)
と、使用フラグ(19005)で構成される。分割レベ
ル(19001)は分割方針記述レコードの分割レベル
指定フィールド(17001)に指定された値を有し、
サーバ配置プロセッサ識別子(19002)は分割方針
記述レコードのサーバ配置プロセッサ指定フィールド
(17002)に指定された値を有し、優先度情報(1
9003)は分割方針記述レコードの優先度指定フィー
ルド(17003)に指定された値を有する。サービス
範囲情報(19004)は、分割方針記述レコードのサ
ービス範囲指定フィールド(17004)に指定された
サービス範囲を示す。図19では、全サービス範囲が1
6のローカルプロセッサシステムで構成されるクライア
ントサーバシステムの例を示しており、各ローカルプロ
セッサシステムに1ビットのデータを対応させており、
サービス範囲情報(19004)は、16ビットのデー
タ長を有する。サービス範囲情報(19004)の各ビ
ットは、対応するローカルプロセッサシステムがサービ
ス範囲に含まれるか否かを示しており、1の時にサービ
ス範囲内であることを示し、0の時にサービス範囲外で
あることを示す。使用フラグ(19005)は、当該分
割方針情報が使用済みか未使用かを示すフラグである。
使用フラグ(19005)が1の時、該当する分割方針
情報が使用済みであることを示し、使用フラグ(190
05)が0の時、該当する分割方針情報が未使用である
ことを示す。また、分割方針情報(15001)は、サ
ービスロケーションサーバ(14003)の起動後、サ
ービスロケーションサーバ(14003)が分割方針記
述ファイル(14002)を読み込み、設定される。
【0047】以上、図14〜図19で説明した構成のク
ライアントサーバシステムにおいて、サービスロケーシ
ョンサーバ(14003)と、サービスロケーションサ
ーバ(14003)以外のサーバと、クライアントは以
下のように動作する。サービスロケーションサーバ(1
4003)以外のサーバと、クライアントの動作は、実
施例1と同じである。また、サービスロケーションサー
バ(14003)の処理のうち、分割レベル情報(15
002)と分割方針情報(15001)の設定処理、サ
ーバ分割処理以外の処理は実施例1で説明したサービス
ロケーションサーバ(1013)の処理と同じである。
【0048】分割方針情報(15001)と分割レベル
情報(15001)の設定処理は、サービスロケーショ
ンサーバの初期化処理、サーバ分割処理で実行する。サ
ービスロケーションサーバ(14003)の初期化処理
(サービスロケーションサーバ(14003)がサービ
スロケーションサーバ(14003)以外のサーバから
のロケーション情報登録申請要求とクライアントからの
ロケーション情報問い合わせ要求の処理を開始する前に
実行する処理)において、サービスロケーションサーバ
(14003)は、分割方針記述ファイル(1400
2)を読み込み、当該ファイル(14002)の内容を
解釈し、分割方針情報(15001)を設定する。分割
方針情報(15001)のうち、分割レベル(1900
1)、サーバ配置プロセッサ識別子(190002)、
優先度情報(19003)、サービス範囲情報(190
04)を分割方針記述ファイル(14002)の内容に
より設定し、使用フラグ(19005)を0に初期化す
る。さらに、分割方針情報(15001)のうち、分割
レベルが0である分割方針情報の使用フラグを1に設定
する。さらに、分割レベル情報(15002)を0に設
定する。
【0049】次に、実施例3におけるサーバ分割処理を
図24を用いて説明する。図24は、実施例3における
サーバ分割処理のフローチャートを示す図である。図2
4は、図12のフローチャート図にステップ2400
1、ステップ24002、ステップ24003、ステッ
プ24004、ステップ24005、ステップ2400
6を追加し、ステップ12005の代わりにステップ2
4007に変更したフローチャート図である。図24に
おいて、ステップ24001は、分割方針情報(150
01)に、当該サーバ分割処理の分割方針情報が存在す
るか否かの判定処理である。分割方針情報が存在する場
合ステップ24006に、分割方針情報が存在しない場
合ステップ12001に処理を進める。
【0050】実施例3では、ステップ24001では以
下の4条件を全て満たしてる分割方針情報が存在する場
合に、分割方針情報が存在すると判定する。第1の条件
は、分割レベル情報(15002)の内容に対して、1
だけ大きい値の分割レベル(19001)を有すること
である。第2の条件は、当該サービスロケーションサー
バのサービス範囲中に、サービス範囲情報(1900
4)が示すサービス範囲を全て含んでいることである。
第3の条件は、使用フラグ(19005)が0であるこ
とである。第4の条件は、サーバ配置プロセッサ識別子
(19002)が示すローカルプロセッサシステム上に
サービスロケーションサーバ(14003)の複製サー
バが存在しないことである。ステップ24006は、ス
テップ24001で上記4条件を満たす分割方針情報
(15001)のうち、もっとも小さい値の優先度情報
(19003)を有する分割方針情報を選択する分割方
針情報選択処理である。さらにステップ24006で
は、選択した分割方針情報の使用フラグ(19005)
を1に設定する。
【0051】ステップ24002は、当該サービスロケ
ーションサーバが担当するサービス範囲の分割状態を、
上記ステップ24006で選択した分割方針情報(15
001)に基づいて設定する、分割方針情報ベースの複
製元担当サービス範囲設定処理である。ステップ240
02では、当該サービスロケーションサーバのサービス
範囲情報(203)に含まれ、かつ、当該サービスロケ
ーションサーバのサービス範囲であるローカルプロセッ
サシステムのうち、上記ステップ24006で選択した
分割方針情報のサービス範囲情報(19004)に指定
されているローカルプロセッサシステム以外のローカル
プロセッサシステムの、複製元担当情報フラグ(40
3)をセットする。
【0052】ステップ24003は、ステップ2400
1と同じ判定処理である。該当する分割方針情報が存在
する場合、ステップ24004に、該当する分割方針情
報が存在しない場合ステップ12004に処理を進め
る。ステップ24004は、複製サーバを配置するロー
カルプロセッサシステムを設定する処理である。ステッ
プ24004では、上記ステップ24006で選択され
た分割方針情報のサーバ配置プロセッサ識別子(190
02)に登録されているプロセッサ番号に対応するロー
カルプロセッサシステムを、複製サーバを配置するプロ
セッサシステムとして選択する。ステップ24007
は、ステップ12004あるいはステップ24004で
選択されたローカルプロセッサシステムに、複製サーバ
を移送するプロセス移送処理である。ステップ2400
5は、複製サーバの分割レベル情報(15002)を設
定する、分割レベル設定処理である。ステップ2400
5では、複製サーバの分割レベル情報(15002)の
内容を1だけ増加させる。複製元サーバの分割レベル情
報(15002)に対しては何もしない。
【0053】以上、図14〜図19、図24で説明した
実施例3では、サービスロケーションサーバを分割する
場合、分割方針を記述したファイルの内容に従って分割
方針を決定し、サービスロケーションサーバを分割する
例を説明した。また、実施例3では、分割方針記述ファ
イルに分割方針が記載されていない場合に、実施例1で
説明した分割方針を採用するようにしている。上記実施
例3で示したように、本発明を適用することにより、サ
ーバを分割する際の分割方針を指定することができる。
さらに、分割方針を指定することにより、サーバ分割後
の複製サーバを配置するローカルプロセッサを指定する
ことができる。さらに、分割方針を指定することによ
り、複製元サーバと複製サーバのサービス範囲を指定す
ることができる。
【0054】《実施例4》次に、実施例4として、分割
方針記述ファイルに分割方針が記載されていない場合に
サーバの分割を行わない例を図25を用いて説明する。
図25は、実施例4におけるサーバ分割処理を示すフロ
ーチャート図であり、図24の実施例3におけるサーバ
分割処理のフローチャート図を修正したものである。図
25において、ステップ24001で、該当する分割方
針情報が存在しない場合、サーバ分割処理では何もしな
い。図25記載のその他ステップは前述までの処理内容
と同じである。実施例4において、図25で説明したサ
ーバ分割処理以外は実施例3と同じである。上記実施例
4で示したように、本発明を適用することにより、サー
バを分割する際の分割方針を指定することができる。さ
らに、分割方針を指定することにより、サーバ分割後の
複製サーバを配置するローカルプロセッサを指定するこ
とができる。さらに、分割方針を指定することにより、
複製元サーバと複製サーバのサービス範囲を指定するこ
とができる。さらに、サーバ分割処理を停止することが
できる。
【0055】《実施例5》次に、実施例5として、サー
ビスロケーションサーバ分割時に、分割基準情報(20
5)を設定する例を図26〜図27を用いて説明する。
図26は、実施例5における分割方針記述レコードの構
成を示す図である。図26において、実施例5における
分割方針記述レコードは、図17で説明した分割方針記
述レコードに、分割基準指定フィールド(26001)
を追加した構成になっている。分割基準指定フィールド
(26001)は、サーバ配置プロセッサ指定フィール
ド(17002)で指定されたプロセッサ番号に対応す
るローカルプロセッサシステム上に配置するサービスロ
ケーションサーバの分割基準情報(205)として、単
位時間あたりの最大サービス実行数のしきい値(60
1)を指定するフィールドである。
【0056】図27は、実施例5におけるサービスロケ
ーションサーバが有する分割方針情報の構成を示した図
である。図27において、実施例5における分割方針情
報の構成は、図19で説明した分割方針情報(1500
1)に、分割基準情報(27001)を追加した構成で
ある。分割基準情報(27001)は、上記分割基準指
定フィールド(26001)に指定された値を有する。
【0057】次に、分割基準情報(205)を設定する
分割基準設定処理を説明する。分割基準情報(205)
はサーバ分割処理時に、複製サーバの分割基準情報(2
05)を設定する。分割基準情報(205)を設定する
サーバ分割処理は、図24で説明したステップ2400
2に、複製サーバの分割基準情報(205)として、分
割方針情報に含まれる分割基準情報(27001)を設
定する処理を追加すればよい。実施例5において、分割
方針記述レコードの構成、分割方針情報の構成、分割基
準情報(206)の設定処理以外の構成、処理等は実施
例3と同じである。上記実施例5で説明したように、本
発明を適用することにより、サーバを分割する際の分割
方針を指定することができる。さらに、分割方針を指定
することにより、サーバ分割後の複製サーバを配置する
ローカルプロセッサを指定することができる。さらに、
分割方針を指定することにより、複製元サーバと複製サ
ーバのサービス範囲を指定することができる。さらに、
複製サーバの分割基準情報(205)を複製サーバ毎に
指定できる。
【0058】《実施例6》次に、実施例6として、複製
元であるサービスロケーションサーバと複製サービスロ
ケーションサーバにより、ロケーション情報を多重化す
る例を説明する。なお、実施例6ではロケーション情報
の多重度を2とする。また、実施例6において、バック
アップサーバとは、複製元サーバと複製サーバとの間で
サービス範囲を分割した場合の複製元サーバのことを意
味する。
【0059】図20〜図23、図28を用いて、実施例
6を説明する。実施例6において、本発明を適用するク
ライアントサーバシステムの構成は実施例1で説明した
クライアントサーバシステムに準ずる。図20は、実施
例6におけるロケーションサービスサーバ情報(101
4)の構成を示した図である。図20において、ロケー
ションサービスサーバ情報(1014)は、サービスロ
ケーションサーバのロケーション情報を登録するロケー
ションサーバ情報テーブル(20002)と現サービス
ロケーションサーバ情報(20001)を有する。ロケ
ーションサーバ情報テーブル(20002)は、サービ
スロケーションサーバが存在するローカルプロセッサシ
ステムを示すサーバ所在プロセッサ識別子(2000
4)と、サービスロケーションサーバと通信手段を確立
するための通信情報(20005)と、当該ロケーショ
ンサーバ情報の識別子として使用するエントリ番号(2
0003)と、当該ロケーション情報が有効であるか否
かを示す有効フラグ(20006)を有する。また、ロ
ケーションサーバ情報テーブル(20002)は、少な
くとも、ロケーション情報の多重度以上のロケーション
情報を登録可能になっている。実施例6において、ロケ
ーション情報の多重度は2であるから、ロケーションサ
ーバ情報テーブル(20002)には、少なくとも2つ
のロケーション情報が登録できるようにする。ロケーシ
ョン情報の多重度が3である場合、ロケーションサーバ
情報テーブル(20002)には少なくとも3つのロケ
ーション情報が登録できるようにする。
【0060】現サービスロケーションサーバ情報(20
001)は、ロケーションサーバ情報テーブル(200
02)に含まれるロケーション情報のうち、自ローカル
プロセッサシステムを現在担当するサービスロケーショ
ンサーバのロケーション情報を識別するための識別子で
ある。実施例6では、ロケーションサーバ情報テーブル
(20002)に登録されているロケーション情報のエ
ントリ番号を現サービスロケーションサーバ情報(20
001)として使用する。つまり、現サービスロケーシ
ョンサーバ情報(20001)の値と一致するエントリ
番号(20003)のロケーション情報を自ローカルプ
ロセッサシステムを現在担当するサービスロケーション
サーバのロケーション情報であるとする。なお、図20
ではロケーションサービスサーバ情報(1014)の構
成を説明した。他のローカルプロセッサシステムに存在
するロケーションサービスサーバ情報(1024、10
34、1044、1054)も、上記ロケーションサー
ビスサーバ情報(1014)と同一構成にする。
【0061】図21は、実施例6におけるサービスロケ
ーションサーバ(1013)の構成を示した図である。
図21において、サービスロケーションサーバ(101
3)は、ロケーション情報の多重度を示す多重度情報
(21001)と、サービスロケーション情報(210
03)と、サーバ分割手段(202)と、サービス範囲
情報(203)と、分割基準情報(205)と、サービ
ス負荷情報(206)と、負荷測定手段(207)と、
他サーバロケーション情報(21002)と、移送先プ
ロセッサシステム選択手段(209)を有する。
【0062】図22は、実施例6における他サーバロケ
ーション情報(21002)の構成を示した図である。
図22において、他サーバロケーション情報(2100
2)は、識別情報(803)と、サーバ所在プロセッサ
識別子(801)と、サーバとの通信手段(802)
と、ロケーション情報が登録されているサーバが自サー
バの複製元であるかあるいは複製サーバであるかあるい
はそれ以外のサーバであるかを示すバックアップサーバ
情報(22001)を有する。実施例6において、バッ
クアップサーバ情報(22001)には、登録されてい
るロケーション情報が自サービスロケーションサーバの
複製元サーバのロケーション情報である場合に1を、登
録されているロケーション情報が自サービスロケーショ
ンサーバを複製元サーバとする複製サーバのロケーショ
ン情報である場合2を、登録されているロケーション情
報が自サーバの複製元サーバのロケーション情報でな
く、自サーバを複製元サーバとする複製サーバのロケー
ション情報でない場合に0を設定する。例えば、図22
で識別情報が2、サーバ所在プロセッサ識別子が50、
サーバとの通信情報が3のロケーション情報は、バック
アップサーバ情報として2が設定されているので、自サ
ービスロケーションサーバを複製元サーバとする複製サ
ーバのロケーション情報である。
【0063】図23は、実施例6におけるサービスロケ
ーション情報(21003)の構成を示した図である。
図23において、サービスロケーション情報(2100
3)は、サービス識別子(301)と、サービスサーバ
所在プロセッサ識別子(302)と、サービスサーバと
の通信情報(303)と、有効フラグ(304)と、当
該ロケーション情報が多重管理されていることを示す多
重データフラグ(23001)を有する。有効フラグ
(304)と多重データフラグ(23001)がセット
されているロケーション情報は、当該サービスロケーシ
ョンサーバがバックアップサーバとして管理しているロ
ケーション情報であることを示す。図23において、サ
ービス識別子(301)が1800、0010、021
0、0000であるロケーション情報が当該サービスロ
ケーションサーバがバックアップサーバとして管理して
いるロケーション情報であることを示している。
【0064】図28は、実施例6におけるサービスロケ
ーション情報の登録処理のフローチャート示した図であ
る。図28において、ステップ28001は、登録要求
を発行したプロセスが自サービスロケーションサーバの
複製サーバであるか否かを判定する処理である。ステッ
プ902で登録要求を発行したプロセスが識別できる。
ステップ28001で、登録要求を発行したプロセスが
自サーバの複製サーバである場合はステップ28004
へ、登録要求を発行したプロセスが自サーバの複製サー
バでない場合はステップ903へ処理を進める。ステッ
プ28004は登録要求されたロケーション情報をサー
ビスロケーション情報(21003)に登録するロケー
ション情報登録処理である。自サービスロケーションサ
ーバは、サービスロケーション情報として、サービス内
容を示すサービス識別子(301)と、登録要求を発行
したプロセスが存在するローカルプロセッサシステムを
示すサービスサーバ所在プロセッサ識別子(302)
と、登録要求したプロセスとの通信手段を確立するため
の通信情報(303)を登録し、有効フラグ(304)
をセットする。さらに、ステップ28004では、登録
要求を発行したプロセスが自サービスロケーションサー
バの複製サーバである場合に、多重データフラグ(23
001)をセットする。
【0065】ステップ28002は、登録要求されたロ
ケーション情報を自サービスロケーションサーバの複製
元サーバに登録することが必要か否かを判定する処理で
ある。ステップ28002において、登録要求を発行し
たプロセスが自サービスロケーションサーバの複製サー
バでない場合に、登録要求されたロケーション情報を自
サービスロケーションサーバの複製元サーバに登録する
ことが必要であると判定する。ステップ28003は、
自サービスロケーションサーバに登録要求されたロケー
ション情報をバックアップサーバに登録要求する処理で
ある。自サービスロケーションサーバは、自サービスロ
ケーションサーバの複製元サーバにロケーション情報の
登録要求を発行し、複製サーバからのロケーション情報
登録要求を受け取った複製元サーバは、自サーバが有す
るサービスロケーション情報に、要求されたロケーショ
ン情報を登録する。ステップ28005は、登録処理の
完了を登録要求したプロセスに通知する登録完了通知処
理である。登録要求を発行したプロセスが自サービスロ
ケーションサーバの複製サーバである場合、登録要求を
発行したプロセスに、登録処理が完了したことを通知す
る。登録要求を発行したプロセスが自サービスロケーシ
ョンサーバの複製サーバ以外のプロセスである場合、自
サービスロケーションサーバへの登録が完了したこと
と、自サービスロケーションサーバのバックアップサー
バへの登録要求の成功したか否かを通知する。
【0066】次に、実施例6におけるサービスロケーシ
ョン情報の問い合わせ処理を説明する。実施例6におけ
るサービスロケーション情報の問い合わせ処理は、実施
例1で説明したサービスロケーション情報の問い合わせ
処理に準ずる。実施例6では、ステップ10002、1
0003で、以下の2条件のいずれかを満たす場合にサ
ービス範囲内であると判定する。第1の条件は、サービ
ス範囲情報(203)に、要求を発行したプロセスが存
在するローカルプロセッサシステムを示すプロセッサシ
ステム識別子が登録されており、かつ、当該サービスロ
ケーションサーバのサービス範囲であることを示す識別
情報がセットされていることである。第2の条件は、サ
ービス範囲情報(203)に、要求を発行したプロセス
が存在するローカルプロセッサシステムを示すプロセッ
サシステム識別子が登録されており、かつ、登録されて
いるプロセッサ識別子に対応する識別情報(402)と
一致する識別情報(803)を有する他サーバロケーシ
ョン情報(21002)のバックアップサーバ情報(2
2001)が2であることである。
【0067】次に、実施例6におけるサーバ分割処理を
説明する。実施例6におけるサーバ分割処理は、実施例
1で説明したサーバ分割処理に準ずる。実施例6におい
て、ステップ12006の他サーバロケーション情報設
定処理は以下のように処理する。複製元サーバの場合、
複製サーバの識別情報(803)と、複製サーバが存在
するサーバ所在プロセッサ識別子(801)と、複製サ
ーバとの通信情報(802)とを、自サービスロケーシ
ョンサーバの他サーバロケーション情報(21002)
に登録し、登録した複製サーバのロケーション情報のバ
ックアップサーバ情報(22001)に自サービスロケ
ーションサーバの複製サーバのロケーション情報である
ことを示す2をセットする。複製サーバの場合、複製元
サーバの識別情報(803)と、複製元サーバが存在す
るサーバ所在プロセッサ識別子(802)と、複製元サ
ーバとの通信情報(802)とを、自サービスロケーシ
ョンサーバの他サーバロケーション情報(21002)
に登録し、登録した複製元サーバのロケーション情報の
バックアップサーバ情報(22001)に自サービスロ
ケーションサーバの複製元サーバのロケーション情報で
あることを示す1をセットし、さらに、既に登録されて
いるロケーション情報に対して、そのロケーション情報
のバックアップサーバ情報(22001)の値を0に設
定する。
【0068】次に、実施例6におけるロケーションサー
ビスサーバ情報(1014)の設定処理を説明する。ロ
ケーションサービスサーバ情報(1014、1024、
1034、1044、1054)の内容が変更されるの
は、サービスロケーションサーバからサービス範囲外で
あることを通知された場合である。サービスロケーショ
ンサーバからサービス範囲外であることを通知されたプ
ロセスは、自ローカルプロセッサシステム上のロケーシ
ョンサービスサーバ情報の情報テーブル(20002)
のエントリのうち、現サービスロケーションサーバ情報
(20001)の内容と一致しないエントリに、サービ
スロケーションサーバからサービス範囲外通知に含まれ
るロケーション情報を登録し、有効フラグ(2000
6)をセットし、さらに、現サービスロケーションサー
バ情報(20001)に、新たに登録したロケーション
情報のエントリ番号をセットする。
【0069】実施例6において、上記までに説明した構
成および処理以外の構成および処理は実施例1における
構成および処理に準ずる。以上、実施例6では、複製元
であるサービスロケーションサーバと複製サービスロケ
ーションサーバにより、ロケーション情報を2重化する
例を説明した。また、複製サービスロケーションサーバ
と複製元サービスロケーションサーバと、さらに複製元
サービスロケーションサーバの複製元サーバとの間で、
すなわち、複製サービスロケーションサーバと2代にわ
たる複製元サービスロケーションサーバとの間で、ロケ
ーション情報を3重化することも、実施例6と同様な方
法で可能である。さらに、複製サービスロケーションサ
ーバと複数代にわたる複製元サービスロケーションサー
バとの間で、高多重化の実現も可能である。上記実施例
6で説明したように、本発明を適用することにより、サ
ービスロケーションサーバが管理するロケーション情報
を、複製元であるサービスロケーションサーバと複製さ
れたサービスロケーションサーバで多重化できる。複製
元であるサービスロケーションサーバと複製されたサー
ビスロケーションサーバとの間でロケーション情報を多
重化することにより、複製されたサービスロケーション
サーバに障害が発生した場合でも、クライアントは複製
元であるサービスロケーションサーバのサービスを受け
ることができる。さらに、クライアントは、特定のサー
ビスを提供するサーバのロケーション情報問い合わせ要
求を、複製サービスロケーションサーバと複製元サービ
スロケーションサーバの両方に発行し、どちらか早い方
の問い合わせ情報通知を受け取ることができる。
【0070】また、実施例3で説明した分割方針記述フ
ァイルのように、ロケーション情報の多重度を記述する
ファイルを設け、サービスロケーションサーバの初期設
定処理時に、当該ファイルをよみこみ、多重度情報(2
1001)を設定するようにすることにより、ロケーシ
ョン情報の多重度を指定することができる。さらに、実
施例1、実施例2、実施例3、実施例4で説明した本発
明の実施例では、サービスロケーションサーバのサービ
ス負荷のレベルにより、サービスロケーションサーバを
複製し、複製サーバと複製元サーバとの間でサービス範
囲を分割していく例を説明しているが、これは、サービ
ス範囲を分割していくことにより、ロケーション情報と
いうローカルプロセッサシステム間にまたがる大域的な
資源を複数のサーバで階層的に管理することになる。実
施例6で説明したサービスロケーションサーバが管理す
るロケーション情報を複製元であるサービスロケーショ
ンサーバと複製されたサービスロケーションサーバで多
重化する例と実施例4で説明した実施例を併用すること
により、複数のサーバでそれぞれシステム全体のロケー
ション情報を有するロケーション情報の分散管理ができ
る。
【0071】なお、上述した各実施例では、ローカルプ
ロセッサシステム間でプロセスを移送するためのプロセ
ス移送手段を有する複数のローカルプロセッサシステム
を連結した分散システム上に構築したクライアントサー
バシステムにおける、プロセス間のロケーション情報を
管理するサービスロケーションサーバを分割するサーバ
分割方法の例を述べたが、ローカルプロセッサシステム
間でプロセスを移送するためのプロセス移送手段を有す
る複数のローカルプロセッサシステムを連結した分散シ
ステム上に構築したクライアントサーバシステムにおい
て、ローカルプロセッサシステム間にまたがる大域的な
資源を管理するサーバについても適用可能である。
【0072】また、上記実施例では、サービスロケーシ
ョンサーバプロセスを分割して異なるローカルプロセッ
サシステム上に複製サーバプロセスを生成する際、複製
元サーバプロセスが設けられたローカルプロセッサシス
テム上に複製サーバプロセスを作成し、複製元と複製の
サーバプロセスとの間でサービス範囲の分割をして、複
製元と複製のサーバプロセスそれぞれにサービスロケー
ション情報を設定した上で、複製サーバプロセスを異な
るローカルプロセッサシステムに移送するようにしてい
るが、複製元サーバプロセスを異なるローカルプロセッ
サシステムのメモリ上に複写して複製サーバプロセスを
生成し、その後、複製元と複製のサーバプロセスとの間
でのサービス範囲の分割をして、分割したサービス範囲
の情報を前記の異なるローカルプロセッサシステムに移
送することにより、複製元サーバプロセスと複製サーバ
プロセスの夫々にサービスロケーション情報を設定する
ようにしてもよい。
【0073】
【発明の効果】本発明によれば、分散システム上に構築
されたクライアントサーバシステムにおいて、サーバプ
ロセスをあらかじめ分散するのではなく、サーバプロセ
スへの負荷が予め定めたしきい値を越えたときに、サー
バを動的に分割することができ、システムの柔軟性を高
めることができる。また、プロセッサ台数増加による性
能低下をさけることができる。さらに、サーバを分割す
る際の分割方針を指定することができる。さらに、サー
ビスロケーションサーバが管理するロケーション情報
を、複製元であるサービスロケーションサーバと複製さ
れたサービスロケーションサーバとの間で、多重化でき
る。
【図面の簡単な説明】
【図1】本発明を適用したクライアントサーバシステム
の構成を示す図である。
【図2】本発明を適用したサービスロケーションサーバ
の構成を示す図である。
【図3】サービスロケーション情報の構成を示す図であ
る。
【図4】サービス範囲情報の構成を示す図である。
【図5】サービス負荷情報の構成を示す図である。
【図6】分割基準情報の構成を示す図である。
【図7】ロケーションサービスサーバ情報の構成を示す
図である。
【図8】他サーバロケーション情報の構成を示す図であ
る。
【図9】ロケーション情報登録処理のフローチャートを
示す図である。
【図10】ロケーション情報問い合わせ処理のフローチ
ャートを示す図である。
【図11】負荷測定処理のフローチャートを示す図であ
る。
【図12】サーバ分割処理のフローチャートを示す図で
ある。
【図13】他のサービス負荷情報の構成を示す図であ
る。
【図14】本発明を適用した他のクライアントサーバシ
ステムの構成の一部を示す図である。
【図15】本発明を適用した他のサービスロケーション
サーバの構成を示す図である。
【図16】分割方針記述ファイルの構成を示す図であ
る。
【図17】分割方針記述レコードの構成を示す図であ
る。
【図18】分割方針記述ファイルの記述例を示す図であ
る。
【図19】分割方針情報の構成を示す図である。
【図20】ロケーションサービスサーバ情報の構成を示
す図である。
【図21】他のサービスロケーションサーバの構成を示
す図である。
【図22】他の他サーバロケーション情報の構成を示す
図である。
【図23】他のサービスロケーション情報の構成を示す
図である。
【図24】他のサーバ分割処理のフローチャートを示す
図である。
【図25】他のサーバ分割処理のフローチャートを示す
図である。
【図26】他の分割方針記述レコードの構成を示す図で
ある。
【図27】他の分割方針情報の構成を示す図である。
【図28】他のロケーション情報登録処理のフローチャ
ートを示す図である。
【符号の説明】
1013 サービスロケーションサーバ 201 サービスロケーション情報 202 サーバ分割手段 203 サーバ範囲情報 205 分割基準情報 206 サービス負荷情報 207 負荷測定手段 208 他のサービスロケーションサーバのロケーショ
ン情報 209 移送先プロセッサシステム選択手段 101、102、103、104、105 ローカルプ
ロセッサシステム 1011、1021、1031、1041、1051
サーバ 1012、1022、1032、1042、1052
クライアント 1015、1023、1033、1043、1053
プロセス移送手段 1014、1024、1034、1044、1054
ロケーションサービスサーバ情報 1016、1025、1035、1045、1055
通信インタフェース 14001 外部記憶装置 14002 分割方針記述ファイル 14003 サービスロケーションサーバ 14004 外部記憶装置インタフェース 15001 分割方針情報 15002 分割レベル情報 16001〜16005 分割方針記述レコード 17001 分割レベル指定フィールド 17002 サーバ配置プロセッサ指定フィールド 17003 優先度指定フィールド 17004 サービス範囲指定フィールド 26001 分割基準指定フィールド 20002 ロケーションサーバ情報テーブル 21001 多重度情報

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 ローカルプロセッサシステム間でプロセ
    スを移送するためのプロセス移送手段を有する複数のロ
    ーカルプロセッサシステムを連結した分散システム上に
    構築したクライアントサーバシステムにおいて、 前記ローカルプロセッサシステムの少なくとも1システ
    ムにサービスロケーションサーバプロセスを設け、 前記サービスロケーションサーバプロセスは、 他のプロセスから登録されるプロセスのロケーション情
    報を管理するサービスロケーション情報と、自サーバプ
    ロセスのサービス範囲を定義したサービス範囲情報を備
    え、 自サーバプロセスのサービス負荷を測定し、サービス負
    荷が所定の負荷レベルを越えたとき、自サーバプロセス
    の複製を作成し、 複製元サーバプロセスと複製サーバプロセスとの間で前
    記サービス範囲を分割し、 該複製元サーバプロセスと複製サーバプロセスの夫々に
    サービスロケーション情報を設定し、 複製サーバプロセスを異なるローカルプロセッサシステ
    ムに移送し、配置することを特徴とするサーバ分割方
    法。
  2. 【請求項2】 ローカルプロセッサシステム間でローカ
    ルプロセッサシステムが他のローカルプロセッサシステ
    ムにプロセスを複写生成する手段を有する複数のローカ
    ルプロセッサシステムを連結した分散システム上に構築
    したクライアントサーバシステムにおいて、 前記ローカルプロセッサシステムの少なくとも1システ
    ムにサービスロケーションサーバプロセスを設け、 前記サービスロケーションサーバプロセスは、 他のプロセスから登録されるプロセスのロケーション情
    報を管理するサービスロケーション情報と、自サーバプ
    ロセスのサービス範囲を定義したサービス範囲情報を備
    え、 自サーバプロセスのサービス負荷を測定し、サービス負
    荷が所定の負荷レベルを越えたとき、自サーバプロセス
    の複製を異なるローカルプロセッサシステム上に生成
    し、 複製元サーバプロセス(自サーバプロセス)と複製サー
    バプロセスとの間で前記サービス範囲を分割し、 該分割したサービス範囲の情報を前記異なるローカルプ
    ロセッサシステムに移送し、該複製元サーバプロセスと
    複製サーバプロセスの夫々にサービスロケーション情報
    を設定することを特徴とするサーバ分割方法。
  3. 【請求項3】 請求項1または請求項2記載のサーバ分
    割方法において、 前記複製元サーバプロセスに前記複製サーバプロセスの
    ロケーション情報を、前記複製サーバプロセスに前記複
    製元サーバプロセスのロケーション情報を設定すること
    を特徴とするサーバ分割方法。
  4. 【請求項4】 請求項3記載のサーバ分割方法におい
    て、 前記分割後の各サーバプロセスがサービス範囲外のプロ
    セスからのサービス要求を受けたとき、サービス範囲外
    であることと、自サーバプロセスと異なるサービス範囲
    を有するサーバプロセスのロケーション情報を、サービ
    ス要求を発行したプロセスに通知し、 前記分割後の各サーバプロセスがサービス範囲に含まれ
    るプロセスから、サービス範囲外のプロセスのロケーシ
    ョン情報に関する問い合わせ要求を受けたとき、要求を
    受けとったサーバプロセスが、自サーバプロセスが有す
    るサービス範囲と異なるサービス範囲を有する他のサー
    バプロセスに問い合わせ、要求されたロケーション情報
    を、要求したプロセスに通知するようにしたことを特徴
    とするサーバ分割方法。
  5. 【請求項5】 請求項1または請求項2記載のサーバ分
    割方法において、 前記サービス負荷は、前記サービスロケーションサーバ
    プロセスが一定時間間隔内に実行したサービス実行数で
    あることを特徴とするサーバ分割方法。
  6. 【請求項6】 請求項1または請求項2記載のサーバ分
    割方法において、 前記サービス範囲は、サービス対象のローカルプロセッ
    サシステムの集合であることを特徴とするサーバ分割方
    法。
  7. 【請求項7】 請求項1または請求項2記載のサーバ分
    割方法において、 サービス負荷が所定の負荷レベルを越えたとき、予め決
    められた分割方針に従ってサービス範囲を分割すること
    を特徴とするサーバ分割方法。
  8. 【請求項8】 請求項7記載のサーバ分割方法におい
    て、 前記分割方針は、サービス範囲であるローカルプロセッ
    サシステムのうち、各ローカルプロセッサシステムのプ
    ロセッサ番号の小さい順から、固定数のローカルプロセ
    ッサシステムを選択し、選択されたローカルプロセッサ
    システムを複製元サーバプロセスのサービス範囲とし、
    サービス範囲である残りのローカルプロセッサシステム
    を複製サーバプロセスのサービス範囲とする分割方針で
    あることを特徴とするサーバ分割方法。
  9. 【請求項9】 請求項7記載のサーバ分割方法におい
    て、 前記分割方針は、前記サービス範囲情報に含まれる、各
    ローカルプロセッサシステム毎のサービス要求数を測定
    し、測定した各ローカルプロセッサシステム毎のサービ
    ス要求数を基に、サービス範囲を分割する分割方針であ
    ることを特徴とするサーバ分割方法。
  10. 【請求項10】 ローカルプロセッサシステム間でプロ
    セスを移送するためのプロセス移送手段とサーバプロセ
    スを有する複数のローカルプロセッサシステムを連結し
    た分散システム上に構築したクライアントサーバシステ
    ムにおいて、 前記サーバプロセスは、自サーバプロセスのサービス範
    囲を定義したサービス範囲情報を備え、 自サーバプロセスのサービス負荷を測定し、サービス負
    荷が所定の負荷レベルを越えたとき、自サーバプロセス
    の複製を作成し、 複製元サーバプロセスと複製サーバプロセスとの間で前
    記サービス範囲を分割し、 複製サーバプロセスを異なるローカルプロセッサシステ
    ムに移送し、配置することを特徴とするサーバ分割方
    法。
  11. 【請求項11】 サーバプロセスを備えるローカルプロ
    セッサシステム間でローカルプロセッサシステムが他の
    ローカルプロセッサシステムにプロセスを複写生成する
    手段を有する複数のローカルプロセッサシステムを連結
    した分散システム上に構築したクライアントサーバシス
    テムにおいて、 前記サーバプロセスは、自サーバプロセスのサービス範
    囲を定義したサービス範囲情報を備え、 自サーバプロセスのサービス負荷を測定し、サービス負
    荷が所定の負荷レベルを越えたとき、自サーバプロセス
    の複製を異なるローカルプロセッサシステム上に生成
    し、 複製元サーバプロセス(自サーバプロセス)と複製サー
    バプロセスとの間で前記サービス範囲を分割し、 該分割したサービス範囲の情報を異なるローカルプロセ
    ッサシステムに移送し、配置することを特徴とするサー
    バ分割方法。
  12. 【請求項12】 請求項10または請求項11記載のサ
    ーバ分割方法において、 前記複製元サーバプロセスに前記複製サーバプロセスの
    ロケーション情報を、前記複製サーバプロセスに前記複
    製元サーバプロセスのロケーション情報を設定すること
    を特徴とするサーバ分割方法。
  13. 【請求項13】 請求項1または請求項2記載のサーバ
    分割方法おいて、 前記サービスロケーションサーバを配置する1つのロー
    カルプロセッサシステムに外部記憶装置を備え、 前記外部記憶装置に、サービス負荷が所定の負荷レベル
    を越えたときのサービス範囲を分割する方針を記述した
    分割方針記述ファイルを設け、 サービス負荷が所定の負荷レベルを越えたとき、前記分
    割方針記述ファイルの内容にしたがってサービス範囲を
    分割することを特徴とするサーバ分割方法。
  14. 【請求項14】 請求項13記載のサーバ分割方法おい
    て、 前記分割方針記述ファイルが、 どのサービスロケーションサーバに対する分割方針であ
    るかを、サービスロケーションサーバが判定するための
    分割レベル指定フィールドと、 分割後の複製サーバを配置するローカルプロセッサシス
    テムを指定するサーバ配置プロセッサ指定フィールド
    と、 分割後の複製サーバが担当する前記サービス範囲を指定
    するサービス範囲指定フィールドとを、有する分割方針
    記述レコードの集合で構成されることを特徴とするサー
    バ分割方法。
  15. 【請求項15】 請求項14記載のサーバ分割方法おい
    て、 前記分割方針記述レコードに、分割後の複製サーバが、
    自サーバを分割するか否かを判定するためのサービス負
    荷レベルを指定する分割基準指定フィールドを有するこ
    とを特徴とするサーバ分割方法。
  16. 【請求項16】 請求項14記載のサーバ分割方法おい
    て、 前記分割方針記述レコードに、 サービス負荷が所定の負荷レベルを越え、複製サーバと
    複製元サーバとの間でサービス範囲を分割する際、採用
    できる分割方針が複数存在する場合に、どの分割方針を
    採用するか判定するための優先度を指定する優先度指定
    フィールドを有することを特徴とするサーバ分割方法。
  17. 【請求項17】 請求項13記載のサーバ分割方法おい
    て、 前記分割方針記述ファイル内に該当する分割方針が存在
    しない場合、サービス範囲であるローカルプロセッサシ
    ステムのうち、各ローカルプロセッサシステムのプロセ
    ッサ番号の小さい順から、固定数のローカルプロセッサ
    システムを選択し、選択されたローカルプロセッサシス
    テムを複製元サーバプロセスのサービス範囲とし、サー
    ビス範囲である残りのローカルプロセッサシステムを複
    製サーバプロセスのサービス範囲とする分割方針である
    ことを特徴とするサーバ分割方法。
  18. 【請求項18】 請求項13記載のサーバ分割方法おい
    て、 前記分割方針記述ファイル内に該当する分割方針が存在
    しない場合、複製サーバを生成せず、サービス範囲も分
    割しないことを特徴とするサーバ分割方法。
  19. 【請求項19】 請求項1または請求項2記載のサーバ
    分割方法において、 前記複製サーバプロセスに登録されるサービスロケーシ
    ョン情報を、前記複製サーバプロセスと前記複製元サー
    ビスロケーションサーバに登録し、 前記複製サービスロケーションサーバと前記複製元サー
    ビスロケーションサーバとの間で、サービスロケーショ
    ン情報を多重管理することを特徴とするサーバ分割方
    法。
  20. 【請求項20】 請求項1または請求項2記載のサーバ
    分割方法において、 前記複製サーバプロセスに登録されるサービスロケーシ
    ョン情報を、前記複製サーバプロセスと複数代にわたる
    複製元サービスロケーションサーバに登録し、 前記サービスロケーション情報を登録した複数のサービ
    スロケーションサーバ間で、前記サービスロケーション
    情報を多重管理することを特徴とするサーバ分割方法。
JP8210576A 1995-12-22 1996-07-22 サーバ分割方法 Pending JPH09231180A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8210576A JPH09231180A (ja) 1995-12-22 1996-07-22 サーバ分割方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP35029695 1995-12-22
JP7-350296 1995-12-22
JP8210576A JPH09231180A (ja) 1995-12-22 1996-07-22 サーバ分割方法

Publications (1)

Publication Number Publication Date
JPH09231180A true JPH09231180A (ja) 1997-09-05

Family

ID=26518131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8210576A Pending JPH09231180A (ja) 1995-12-22 1996-07-22 サーバ分割方法

Country Status (1)

Country Link
JP (1) JPH09231180A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7240107B2 (en) 2002-10-15 2007-07-03 International Business Machines Corporation Self replicating installation method for operating system clusters
JP2008547104A (ja) * 2005-06-22 2008-12-25 エヌエイチエヌ コーポレーション 動的サーバ初期化方法及びシステム
JP2011253371A (ja) * 2010-06-02 2011-12-15 Hitachi Information Systems Ltd スケールアウトシステムおよび方法ならびにプログラム
JP2012164260A (ja) * 2011-02-09 2012-08-30 Nec Corp コンピュータ運用管理システム、コンピュータ運用管理方法及びコンピュータ運用管理プログラム
JP2013502642A (ja) * 2009-08-18 2013-01-24 インターナショナル・ビジネス・マシーンズ・コーポレーション イベント・ドリブン・システムにおける非集中負荷分散の方法およびコンピュータ・プログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7240107B2 (en) 2002-10-15 2007-07-03 International Business Machines Corporation Self replicating installation method for operating system clusters
JP2008547104A (ja) * 2005-06-22 2008-12-25 エヌエイチエヌ コーポレーション 動的サーバ初期化方法及びシステム
JP2013502642A (ja) * 2009-08-18 2013-01-24 インターナショナル・ビジネス・マシーンズ・コーポレーション イベント・ドリブン・システムにおける非集中負荷分散の方法およびコンピュータ・プログラム
US9665407B2 (en) 2009-08-18 2017-05-30 International Business Machines Corporation Decentralized load distribution to reduce power and/or cooling costs in an event-driven system
JP2011253371A (ja) * 2010-06-02 2011-12-15 Hitachi Information Systems Ltd スケールアウトシステムおよび方法ならびにプログラム
JP2012164260A (ja) * 2011-02-09 2012-08-30 Nec Corp コンピュータ運用管理システム、コンピュータ運用管理方法及びコンピュータ運用管理プログラム

Similar Documents

Publication Publication Date Title
US7447693B2 (en) Dynamic cluster database architecture
EP3469478B1 (en) Server computer management system for supporting highly available virtual desktops of multiple different tenants
CN110120940B (zh) 一种面向Docker容器的文件系统资源隔离方法
US10387194B2 (en) Support of non-trivial scheduling policies along with topological properties
AU770875B2 (en) Object hashing with incremental changes
US7107323B2 (en) System and method of file distribution for a computer system in which partial files are arranged according to various allocation rules
US7349970B2 (en) Workload management of stateful program entities
US7788233B1 (en) Data store replication for entity based partition
EP0747832A2 (en) Customer information control system and method in a loosely coupled parallel processing environment
US5682507A (en) Plurality of servers having identical customer information control procedure functions using temporary storage file of a predetermined server for centrally storing temporary data records
US5790868A (en) Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment
US5630133A (en) Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment
JPH09231180A (ja) サーバ分割方法
CN115686802A (zh) 云计算集群调度系统
CN119226300A (zh) 分布式锁的方法、装置、系统、介质及产品
JP2011164751A (ja) 資源管理システムおよび資源管理方法
US20030158941A1 (en) Apparatus, method and computer software for real-time network configuration