JP2001306537A - 分散オブジェクトシステム - Google Patents
分散オブジェクトシステムInfo
- Publication number
- JP2001306537A JP2001306537A JP2000122372A JP2000122372A JP2001306537A JP 2001306537 A JP2001306537 A JP 2001306537A JP 2000122372 A JP2000122372 A JP 2000122372A JP 2000122372 A JP2000122372 A JP 2000122372A JP 2001306537 A JP2001306537 A JP 2001306537A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- server
- data
- unit
- management
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
機能を備え、容易に新たな計算機を追加し、サーバ側の
システムを拡張できるようにする。また、容易にオブジ
ェクトの開始、停止を行い、オブジェクトを入れ替えて
システムを変更する。 【解決手段】オブジェクト呼び出し部220−a、また
は、220−bは、遠隔オブジェクト呼び出しに対し、
オブジェクトコード、オブジェクトデータをオブジェク
トアクセス部310から取得し、メソッドを実行し、オ
ブジェクトデータの更新をオブジェクトアクセス部31
0に依頼する。また、オブジェクト管理部320は、オ
ブジェクトの開始、または、停止を行う。
Description
ログラムからサーバ側計算機上で開始しているオブジェ
クトを遠隔的に呼び出すというようなものに代表され
る、分散オブジェクトシステムにおける遠隔オブジェク
ト呼び出しに係り、負荷均衡機能を備えた分散オブジェ
クトシステムの拡張、変更を容易にする分散オブジェク
トシステムに関する。
る遠隔オブジェクト呼び出しの負荷均衡は、オブジェク
トへの参照をクライアント側計算機に均等に分配するこ
とで実現される。例えば、予め複数のサーバ側計算機上
でオブジェクトを開始し、開始中のオブジェクトへの参
照を管理する手段を任意のサーバ側計算機上に設ける。
クライアント側計算機のユーザプログラムからの参照を
取得する要求に対し、この手段はオブジェクトへの参照
を均等に返す。クライアント側計算機のユーザプログラ
ムは、オブジェクトへの参照を取得して、遠隔オブジェ
クト呼び出しを行う。なお、この種の技術として、例え
ば、特開平10−40118号公報が挙げられる。
不足し新たな計算機を分散オブジェクトシステムに追加
する場合、そのサーバ側計算機上にオブジェクトを導入
し、オブジェクトを開始する必要があった。
を変更するために、複数のサーバ側計算機上で開始して
いるオブジェクトを入れ替える場合、各々のサーバ側計
算機上でオブジェクトを停止し、オブジェクトを入れ替
えて、再度、オブジェクトを開始する必要があった。
上のシステムでは、クライアント側計算機からのアクセ
ス量の変化は比較的小さいため、サーバ側計算機のシス
テムを頻繁に拡張することはない。また、サーバ側計算
機のシステムが提供するサービスを変更することも比較
的少ない。そのため、LANやWANの環境上において
負荷均衡機能を備えた分散オブジェクトシステムを構築
するには、従来のもので十分だった。
クライアント側計算機からのアクセス量が激変する。そ
のため、インターネット上に分散オブジェクトシステム
を構築した後、クライアント側計算機からのアクセスが
急増し、サーバ側計算機が足りなくなるケースが頻繁に
発生する。このような状況になった場合、クライアント
側計算機からのアクセス量を許容できるようにサーバ側
計算機を拡張する必要がある。
サーバ側計算機に追加する簡潔な方法について考慮され
ておらず、サーバ側計算機を拡張するのは容易ではなか
った。
サーバ側計算機が提供するサービスを頻繁に変更する。
そのため、インターネット上に分散オブジェクトシステ
ムを構築した場合、サーバ側計算機のオブジェクトを入
れ替えて、システムを変更するケースが多い。
計算機に分散されたオブジェクトを開始、または、停止
する簡潔な方法について考慮されておらず、サーバ側計
算機のオブジェクトを入れ替えてシステムを変更するの
は容易ではなかった。
ムにおいて、負荷均衡機能を備え、新たなサーバ側計算
機を容易に追加し、拡張することができる分散オブジェ
クトシステムを提供することにある。
クトシステムにおいて、負荷均衡機能を備え、容易にオ
ブジェクトの開始、停止を行い、オブジェクトを入れ替
えてシステムを変更することができる分散オブジェクト
システムを提供することにある。
に、分散オブジェクトシステムにおいて、負荷均衡機能
を備え、予めオブジェクトをサーバ側計算機で開始せ
ず、クライアント側からの遠隔オブジェクト呼び出しに
対し、オブジェクトコード、オブジェクトデータを管理
用計算機から取得し、メソッドを実行し、さらにオブジ
ェクトデータの更新を管理用計算機に依頼したものであ
り、従って、サーバ側計算機が不足して、計算機をシス
テムに追加する場合、新たな計算機上に予めオブジェク
トを開始しておかなくてもよいようにしたものである。
ブジェクトシステムにおいて、負荷均衡機能を備え、複
数のサーバ側計算機上でオブジェクトの開始、または、
停止を行わず、管理用計算機のみで行うようにしたもの
であり、従って、オブジェクトの入れ替え時には、管理
用計算機上でオブジェクトを停止し、オブジェクトを入
れ替えてから、再度、オブジェクトを開始するだけでよ
いようにしたものである。
いて、図面を参照しながら詳細に説明する。
散オブジェクトシステムの構成を示すものである。本実
施例における分散オブジェクトシステムは、ネットワー
ク10で接続された計算機100、200−a、200
−b、及び、300で構成されている。
あって、メソッド名称を指定してサーバ側計算機上のオ
ブジェクトを遠隔呼び出しするユーザプログラム110
と、ユーザプログラム110からの遠隔オブジェクト呼
び出しに対し、図6の要求メッセージ700を作成し、
それをサーバ側計算機上の負荷均衡部210−a、また
は、210−bに送信し、要求メッセージ700に従っ
て、メソッドを実行し、その結果を受信する遠隔オブジ
ェクト呼び出し部120とから構成される。ユーザプロ
グラム110は、メソッド名称とメソッドに渡す引数な
どのユーザデータを指定して、遠隔オブジェクト呼び出
しするプログラムである。
を遠隔利用するクライアントとして動作するプログラム
と、クライアント側計算機上のプログラムから遠隔利用
されるサーバとして動作するオブジェクトから構成され
るシステムにおいて、クライアント側のプログラムがユ
ーザプログラム110に相当する。また、例えば、オブ
ジェクトを遠隔呼び出すリンクを持つHTML形式ファ
イル、HTML形式ファイルを表示するWWWブラウ
ザ、WWWブラウザからの要求に対しHTML形式ファ
イルを受け返すWWWサーバ、及び、HTML形式ファ
イルのリンクが選択された場合、WWWサーバ経由で実
行されるプログラムとして動作するオブジェクトから構
成される分散オブジェクトシステムにおいて、WWWブ
ラウザ上のHTML形式ファイルがユーザプログラム1
10に相当する。
クライアント側計算機100からの遠隔呼び出しに対
し、オブジェクトを呼び出し、メソッドを実行する計算
機である。
700を受信し、負荷情報に基づいて、オブジェクトを
呼び出しメソッドを実行するサーバ側計算機を選択し、
選択したサーバ側計算機が自サーバ側計算機200−a
の場合、要求メッセージ700をオブジェクト呼び出し
部220−aに受け渡し、選択したサーバ側計算機が他
サーバ側計算機200−bの場合、要求メッセージ70
0を他サーバ側計算機200−bのオブジェクト呼び出
し部220−bに受け渡す。
サーバ側計算機200−aの負荷均衡部210−a、ま
たは、他サーバ側計算機200−bの負荷均衡部210
−bから要求メッセージを受け取り、呼び出すオブジェ
クトと実行するメソッドを特定するために、図6で示す
要求メッセージ700から、オブジェクトを呼び出すた
めの情報であるオブジェクトコード識別子710、オブ
ジェクトデータ識別子720、及び、メソッド名称73
0を取得し、管理用計算機300のオブジェクトアクセ
ス部310に受け渡す。その後、自サーバ側計算機20
0−aのオブジェクト呼び出し部220−aは、管理用
計算機300のオブジェクトアクセス部310からオブ
ジェクトコード、オブジェクトデータを受け取り、当該
メソッドを実行する。
ブジェクト呼び出し部220−aは、メソッドを実行し
た後のオブジェクトデータを、管理用計算機300のオ
ブジェクトアクセス部310に受け渡し、当該メソッド
の実行結果を、クライアント側計算機100の遠隔オブ
ジェクト呼び出し部120に受け渡す。
側計算機200−a、または、200−bで開始せず、
クライアント側計算機100の遠隔オブジェクト呼び出
し部120からの遠隔オブジェクト呼び出しに対し、サ
ーバ側計算機200−a、または、200−bがオブジ
ェクトコード、オブジェクトデータを管理用計算機30
0から取得して、メソッドを実行し、さらにオブジェク
トデータの更新を管理用計算機300に依頼するように
した。そのため、サーバ側計算機200−a、または、
200−bが不足してサーバ側計算機を分散オブジェク
トシステムに追加する場合、新たなサーバ側計算機に予
めオブジェクトを開始しないで良く、容易にシステムを
拡張できる。
ブジェクトデータを管理する管理用計算機である。管理
用計算機300のオブジェクトアクセス部310は、サ
ーバ側計算機200−aのオブジェクト呼び出し部22
0−aから、要求メッセージ700のオブジェクトコー
ド識別子710、オブジェクトデータ識別子720、メ
ソッド名称730を受け取り、管理用計算機300のオ
ブジェクトデータ表340とオブジェクトコード表35
0からそれに対応するオブジェクトコード、オブジェク
トデータを取得し、サーバ側計算機200−aのオブジ
ェクト呼び出し部220−aに受け渡す。また、管理用
計算機300のオブジェクトアクセス部310は、サー
バ側計算機200−aのオブジェクト呼び出し部220
−aから要求メッセージ700のオブジェクトデータ識
別子720、オブジェクトデータ、メソッド名称730
を受け取り、それらでオブジェクトデータ表340を更
新する。
320は、ユーザ管理プログラム330からオブジェク
トの開始の依頼を受けると、実行可能形式オブジェクト
360を参照し、オブジェクトコードをオブジェクトコ
ード表350に、また、オブジェクトデータをオブジェ
クトデータ表340にそれぞれ登録し、オブジェクトを
開始する。
ザ管理プログラム330からのオブジェクトの停止の依
頼を受けると、オブジェクトコードをオブジェクトコー
ド表350から、または、オブジェクトデータをオブジ
ェクトデータ表340からそれぞれ削除し、オブジェク
トを停止する。
ム330は、オブジェクトとの開始や停止を指示するユ
ーザのプログラムである。例えば、オブジェクトコード
識別子710やオブジェクトデータ識別子720を引数
とするオブジェクト開始コマンドやオブジェクト停止コ
マンドにより、オブジェクトの開始や停止を実現する分
散オブジェクトシステムにおいて、オブジェクト開始コ
マンドやオブジェクト停止コマンドがユーザ管理プログ
ラム330に相当する。また例えば、GUIを備えたオ
ブジェクト管理ツールにより、オブジェクトの開始や停
止を実現するシステムにおいては、オブジェクト管理ツ
ールがユーザ管理プログラム330に相当する。
オブジェクトのオブジェクトデータ一覧が格納される。
オブジェクトのオブジェクトコード一覧が格納される。
の実行可能形式オブジェクト500の形式に従ってお
り、分散オブジェクトシステム上で開始されるオブジェ
クトを実行可能プログラムとして表現したものである。
また、実行可能形式オブジェクト360は、予めオブジ
ェクト指向プログラミング言語、または、オブジェクト
記述可能なプログラミング言語により記述されたソース
プログラムから、コンパイラ等の変換プログラムによっ
て生成される。そして、オブジェクトの開始前に、ファ
イル等の記憶装置を介して管理用計算機300に導入さ
れる。
0−a、または、200−bでオブジェクトの開始、及
び、停止を行わず、管理用計算機300のみで行う。そ
のため、オブジェクトの入れ替え時には、管理用計算機
300上で当該オブジェクトを停止した後、当該オブジ
ェクトを入れ替えて、再度、当該オブジェクトを開始す
るだけでよく、容易にシステムを変更できる。
算機200−aと同じ構成要素を持っており、各構成要
素(例えば、210−b)は、サーバ側計算機200−
aの構成要素(例えば、210−b)と同じである。こ
れは、本実施例ではサーバ側に2つのサーバ側計算機2
00−a、200−bを配置しているが、多数配置でき
ることを意味するものである。
機100を構成する要素をサーバ側計算機200−a、
または、200−bに配置することができる。具体的に
は、あるオブジェクトがクライアント側計算機100の
ユーザプログラム110となり、更に他のオブジェクト
を呼び出すことを意味する。
側計算機100の各構成を詳細に示すものである。
求メッセージ作成部121、及び、送受信部122から
構成される。要求メッセージ作成部121は、ユーザプ
ログラム110からのメソッド名称を指定した遠隔呼び
出しに対し、要求メッセージ700を作成する。送受信
部122は、要求メッセージ700をサーバ側計算機2
00−a、または、200−bに送信し、メソッドの実
行結果をサーバ側計算機200−a、または、200−
bのオブジェクト呼び出し部220−a、または、22
0−bから受信する。
機200−aの各構成を詳細に示すものである。
a、計算機選択部212−a、負荷管理部213−a、
負荷表214−aから構成される。受付部211−a
は、オブジェクト遠隔呼び出しのための要求メッセージ
700を受信する。計算機選択部212−aは、受付部
211−aから要求メッセージ700を受け取り、負荷
管理部213−aが管理する負荷情報に基づいて、オブ
ジェクトのメソッドを実行するサーバ側計算機を選択す
る。自サーバ側計算機200−aを選択した場合は、自
サーバ側計算機200−aのオブジェクト呼び出し部2
20−aに要求メッセージ700を受け渡す。他サーバ
側計算機200−bを選択した場合は、他サーバ側計算
機200−bのオブジェクト呼び出し部220−bに要
求メッセージ700を受け渡す。
200−aの負荷を他サーバ側計算機200−bの負荷
管理部に送信し、また、他サーバ側計算機200−bの
負荷管理部からサーバ側計算機200−bの負荷情報を
受信し、負荷表214−aに保存する。
0−aの負荷情報を格納したテーブルである。
求メッセージ解釈部221−a、オブジェクト制御部2
22−a、オブジェクト実行部223−a、及び、応答
部224−aから構成される。
側自計算機200−aの負荷均衡部210−a、また
は、サーバ側他計算機200−bの負荷均衡部210−
bから要求メッセージ700を受け取り、呼び出すオブ
ジェクトと実行するメソッドを特定するために、要求メ
ッセージ700からオブジェクトコード識別子710、
オブジェクトデータ識別子720、メソッド名称73
0、及び、ユーザデータ750を取得し、オブジェクト
制御部222−a に受け渡す。
ェクトコード識別子710、オブジェクトデータ識別子
720、メソッド名称730を管理用計算機300のオ
ブジェクトアクセス部310に受け渡し、オブジェクト
コード、オブジェクトデータを取得する。また、オブジ
ェクト制御部222−aは、オブジェクト実行部223
−aでオブジェクトのメソッドを実行した後、オブジェ
クトデータ識別子720、メソッド実行後のオブジェク
トデータ、及び、メソッド名称730を管理用計算機3
00のオブジェクトアクセス部310に受け渡す。
ェクト制御部222−aからオブジェクトコード、オブ
ジェクトデータ、メソッド名称、及び、ユーザデータを
受け取り、オブジェクトのメソッドを実行する。さら
に、メソッド実行後のオブジェクトデータをオブジェク
ト制御部222−aに戻す。
23−aからメソッドの実行結果を受け取り、クライア
ント側計算機100の遠隔オブジェクト呼び出し部12
0に受け渡す。
300の各構成を詳細に示すものである。
ェクト取得部311、データ取得部312、コード取得
部313、オブジェクト更新部314、データ更新部3
15から構成される。オブジェクト取得部311は、サ
ーバ側計算機200−aのオブジェクト呼び出し部22
0−aからオブジェクトコード識別子710、オブジェ
クトデータ識別子720、メソッド名称730を受け取
る。コード取得部313は、オブジェクトコード表35
0からオブジェクトコードを取得する。データ取得部3
12は、オブジェクトデータ表340からオブジェクト
データを取得する。また、オブジェクト取得部311
は、オブジェクトコード、及び、オブジェクトデータを
サーバ側計算機200−aのオブジェクト呼び出し部2
20−aに受け渡す。
データ識別子、メソッド実行後のオブジェクトデータ、
及び、メソッド名称をサーバ側計算機200−aのオブ
ジェクト呼び出し部220−aから受け取る。データ更
新部315は、メソッド実行後のオブジェクトデータを
オブジェクトデータ表340に保存する。
部321、データ登録部322、コード削除部323、
データ削除部324から構成される。コード登録部32
1は、実行可能形式オブジェクト360を参照し、オブ
ジェクトコードをオブジェクトコード表350に登録す
る。データ登録部322は、オブジェクトデータをオブ
ジェクトデータ表340に登録する。コード削除部32
3は、オブジェクトコードをオブジェクトコード表35
0から削除する。データ削除部324は、オブジェクト
データをオブジェクトデータ表340から削除する。
ジェクト360のデータ構造を示すものである。
構造は500とする)は、制御情報510、オブジェク
トコード520、及び、オブジェクトデータ530から
構成される。制御情報510には、オブジェクトコード
自体を識別するオブジェクトコード識別子511が含ま
れる。このオブジェクトコード識別子511はオブジェ
クトの種類を表すものであり、オブジェクトコード識別
子511が同じオブジェクトは、同じオブジェクトコー
ドから構成される同じ種類のオブジェクトである。オブ
ジェクトコード520は、オブジェクトが持つ各メソッ
ドのプログラムコードの集合である。オブジェクトは複
数のメソッドを持つことができる。メソッドを実行する
とは、オブジェクトデータ530を参照、更新するメソ
ッドのプログラムコードを実行することである。
属性A522は、各メソッド毎に、メソッドが“同期”
であるか“非同期”であるかを示す情報である。ここ
で、同期メソッドとは、オブジェクトの同期メソッドを
実行している間、そのオブジェクトについては、現在実
行中の同期メソッドも含めて他の同期メソッドを実行す
ることができないことを意味する。非同期メソッドと
は、オブジェクトの非同期メソッドを実行している間、
そのオブジェクトについて、現在実行中の非同期メソッ
ドも含め、他の同期、及び、非同期メソッドを実行する
ことができることを意味する。メソッド毎のコード52
3は、各メソッドのプログラムコードである。
トが持つ各メンバを集めたものである。オブジェクトメ
ンバ毎のデータ532には、各メンバの値が含まれる。
オブジェクトは複数のメンバをもつことができる。オブ
ジェクトデータ530は、メソッドが実行されるとき
に、メソッド毎のコード523により参照、更新され
る。
クト呼び出しに対し、クライアント側計算機100から
サーバ側計算機200−a、または、200−bに送信
される要求メッセージ700のフォーマットを示すもの
である。
ドから構成される。オブジェクトコード識別子710
は、サーバ側計算機200−a、または、200−bで
呼び出すオブジェクトの種類を示す。オブジェクトデー
タ識別子720は、サーバ側計算機200−a、また
は、200−bで呼び出すオブジェクトを特定するため
に利用される。メソッド名称730は、サーバ側計算機
200−a、または、200−bで実行するメソッドの
名称を示す。ユーザデータ750は、オブジェクトのメ
ソッドを実行する際に、メソッドの引数などのユーザプ
ログラムからオブジェクトに渡すデータを示す。
ジェクトコードを管理する表350を示すものである。
00とする)は、オブジェクトコード識別子810とオ
ブジェクトコード840を対応付ける。オブジェクト数
820は、当該オブジェクトコードのオブジェクトで開
始しているものの数を示す。状態830は、そのオブジ
ェクトコードの利用可否を示す。状態830が“ON”
の場合、オブジェクトコードは利用可能である。状態8
30が“OFF”の場合、オブジェクトコードは利用不
可能である。オブジェクトコード表800は、開始して
いるオブジェクトのオブジェクトコードの一覧表であ
り、サーバ側計算機200−a、または、200−bで
呼び出すことができるオブジェクトの種類の一覧でもあ
る。
ジェクトデータを管理する表340を示すものである。
は900とする)は、オブジェクトデータ識別子910
とオブジェクトデータ940を対応付ける。オブジェク
トデータ識別子910により、一意のオブジェクトデー
タを持つオブジェクトが識別される。また、オブジェク
トコード識別子920は、当該オブジェクトデータがど
のオブジェクトコードのものかを示す。使用フラグ93
0は,当該オブジェクトデータの使用状況を示す。使用
フラグ930が“使用”の場合、オブジェクトは参照さ
れていることを示す。使用フラグ930が“未使用”の
場合、オブジェクトは未参照であることを示す。オブジ
ェクトデータ表900は、開始しているオブジェクトの
一覧表であり,サーバ側計算機200−a、または、2
00−bで呼び出すことができるオブジェクトの一覧で
もある。
ージ700にメソッド名称730を指定して遠隔オブジ
ェクト呼び出しすることに対し、サーバ側計算機200
−a、または、200−bがオブジェクト呼び出し、メ
ソッドを実行することができるオブジェクトは、管理用
計算機300上で開始状態にあるものである。管理用計
算機300上で開始しているオブジェクトは、オブジェ
クトデータ識別子910に対し、当該オブジェクトデー
タ940、当該オブジェクトコード識別子920(また
は、810)、及び、それに対応するオブジェクトコー
ド840により表わされる。同じオブジェクトとは、同
じ種類で、かつ、同じオブジェクトデータ識別子910
のものを言う。
ブジェクトに対し、同期メソッドの実行を要求する遠隔
オブジェクト呼び出しが同時に複数ある場合、そのメソ
ッドの実行はシリアライズされる。この機能を用い、メ
ンバの値を更新するようなメソッドの実行をシリアライ
ズさせることで、メンバの値の一貫性を保つことができ
る。
同じオブジェクトに対し、非同期メソッドの実行を要求
する遠隔呼び出しが複数同時にある場合、そのメソッド
の実行はシリアライズされず並行に行われる。この機能
により、メンバの値を参照するだけのようなメソッドの
実行をシリアライズさせず並行に行うことで、実行効率
を高くすることができる。
は、200−bにおける負荷情報を管理する表である。
負荷表600(または、214−a)は、計算機識別子
610と負荷情報620を対応付ける。計算機識別子6
10は、サーバ側計算機200−aやサーバ側計算機2
00−bに一意に割り当てられた識別子である。負荷情
報620は、当該計算機の負荷情報である。負荷情報の
内容は、特に規定しないが、一般的には、取得すること
が容易なCPU利用率や要求メッセージの到着率などで
ある。
るオブジェクトの開始の流れを示す。
トの開始をする時、ユーザ管理プログラム330は、開
始するオブジェクトの実行可能形式オブジェクト500
と、オブジェクト数を指定して、オブジェクト管理部3
20のコード登録部321にオブジェクトの開始を依頼
する(1001)。コード登録部321は、実行可能形
式オブジェクト500からオブジェクトコード識別子5
11、オブジェクトコード520を取り出し、オブジェ
クトコード表800に登録する。また、ユーザ管理プロ
グラム360から渡されたオブジェクト数をオブジェク
トコード表800のオブジェクト数820に設定し、状
態830を“OFF”に設定する(1002)。データ
登録部322は、オブジェクト数分のオブジェクトデー
タ識別子910を生成する(1003)。データ登録部
322は、実行可能形式オブジェクト500からオブジ
ェクトデータ530を取り出し、オブジェクトデータ識
別子910、オブジェクトデータ940、及び、オブジ
ェクトコード識別子810の組をオブジェクトデータ表
900に登録する。また、使用フラグ930を“未使
用”にする(1004)。コード登録部321は、当該
オブジェクトコード識別子810の状態830を“O
N”に変更する(1005)。
ユーザ管理プログラム330は、オブジェクトコード識
別子810単位にオブジェクト数820を指定して、オ
ブジェクトの開始を依頼することができる。具体的に
は、オブジェクトの開始を指示するユーザ管理プログラ
ム330は、実行可能プログラムとして表現されたオブ
ジェクトである実行可能形式オブジェクト500とオブ
ジェクト数820を指定して、オブジェクトの開始を管
理用計算機300のオブジェクト管理部320に依頼す
る。オブジェクト管理部320は、指定された実行可能
形式オブジェクト500中のオブジェクトコード52
0、及び、オブジェクトデータ530から成るオブジェ
クトを開始する。具体的には、オブジェクト管理部32
0は、指定された実行可能形式オブジェクト500中
の、オブジェクトコード520、及び、オブジェクトデ
ータ530を参照し、オブジェクトコード表800、及
び、オブジェクトデータ表900に設定する。実行可能
形式オブジェクト500のオブジェクトコード520、
及び、オブジェクトデータ530が、オブジェクトコー
ド表800、及び、オブジェクトデータ表900に設定
されている状態が、当該オブジェクトが開始しているこ
とを意味する。また、ユーザ管理プログラム330がオ
ブジェクト管理部320にオブジェクトの開始を依頼す
る時、指定した実行可能オブジェクト500のオブジェ
クトコード識別子511と同じオブジェクトコード識別
子を持つオブジェクトが既に開始している場合、オブジ
ェクト管理部320は指定されたオブジェクト数820
のオブジェクトを追加で開始する。
るオブジェクトの停止の流れを示す。
プログラム330は、停止するオブジェクトのオブジェ
クトコード識別子810を指定して、オブジェクト管理
部320のコード削除部323に停止を依頼する(20
01)。コード削除部323は、オブジェクトコード表
800の状態830を“OFF”に変更する(200
2)。データ削除部324は、オブジェクトデータ表9
00から該当する全てのオブジェクトデータを削除する
(2006)。コード削除部323は、オブジェクトコ
ード表800から当該オブジェクトコードを削除する
(2007)。
ユーザ管理プログラム330は、オブジェクトコード識
別子810単位にオブジェクトの停止を依頼することが
できる。具体的には、オブジェクトの停止を指示するユ
ーザ管理プログラム330は、停止するオブジェクトの
オブジェクトコード識別子810を指定して、オブジェ
クトの停止をオブジェクト管理部320に依頼する。オ
ブジェクト管理部320は、指定されたオブジェクトコ
ード識別子810を持つオブジェクトを停止する。具体
的には、オブジェクト管理部320は、指定されたオブ
ジェクトコード識別子810を持つオブジェクトコード
840とオブジェクトデータ940をオブジェクトコー
ド表800、オブジェクトデータ表900から削除す
る。実行可能形式オブジェクト500のオブジェクトコ
ード520、及び、オブジェクトデータ530が、オブ
ジェクトコード表800、及び、オブジェクトデータ表
900から削除されている状態が、当該オブジェクトが
停止していることを意味する。また、ユーザ管理プログ
ラム330がオブジェクト管理部320にオブジェクト
の停止を依頼する時、オブジェクトコード識別子810
とオブジェクトデータ識別子910を指定した場合、オ
ブジェクト管理部320は、当該オブジェクトデータ識
別子910を持つオブジェクトのみ停止する。
るクライアント側計算機100の遠隔オブジェクト呼び
出しの流れを示す。
グラム110は、オブジェクトコード識別子、オブジェ
クトデータ識別子、メソッド名称、ユーザデータを指定
し(ユーザデータがない場合は空)、遠隔オブジェクト
呼び出し部120の要求メッセージ作成部121に遠隔
オブジェクト呼び出しの要求メッセージ作成を依頼する
(3001)。ここで、オブジェクトコード識別子、オ
ブジェクトデータ識別子、メソッド名称の取得方法につ
いては特に明記しない。オブジェクトデータ識別子を取
得する最も単純なものとしては、オブジェクトデータ表
900から直接取得する方法がある。要求メッセージ作
成部121は、ユーザプログラム110から受け渡され
たオブジェクトコード識別子、オブジェクトデータ識別
子、メソッド名称、ユーザデータから要求メッセージ7
00を作成し、送受信部122に受け渡す(300
2)。送受信部122は、要求メッセージ700をサー
バ側計算機200−aの受付部211−a、または、サ
ーバ側計算機200−bの受付部に送信する。ここで、
送信先の受付部を決定する方法は特に明記しない。もっ
とも単純なものとして、DNS(DOMAIN NAM
E SERVICE)の名前解決を利用して選択する方
法がある。また、例えば、全ての受付部(の宛て先)を
管理するプログラムを起動しておき、それがクライアン
ト側計算機100のプログラムに割り当てる方法などが
ある。
ェクト呼び出し部120の送受信部122は、サーバ側
計算機200−aの応答部224−a、または、サーバ
側計算機200−bの応答部からメソッド実行結果を受
け取る(3004)。ユーザプログラム110は、送受
信部122からメソッド実行結果を受け取る(300
5)。このようにクライアント側計算機100では、ユ
ーザプログラム110は、メソッド名称を指定して遠隔
オブジェクト呼び出しを遠隔オブジェクト呼び出し部1
20に依頼することができる。遠隔オブジェクト呼び出
し部120は、要求メッセージ700を作成し、サーバ
側計算機200−a、または、200−bの負荷均衡部
210−a、または、210−bに送信し、メソッド実
行結果を受信する。
けるサーバ側計算機200−aのオブジェクト呼び出し
(メソッド実行)の流れを示す。
10−aの受付部211−aが要求メッセージ700を
受信し、計算機選択部212−aに受け渡す(400
1)。計算機選択部212−aは、負荷管理部213−
aから負荷情報を取得して、当該要求メッセージ700
に対しオブジェクトを呼び出し、メソッドを実行するサ
ーバ側計算機を選択する(4002)。
択部212−aが、負荷情報を元にサーバ側計算機を選
択する方法は規定しない。例えば、負荷情報がCPU利
用率である場合、基本的にはラウンドロビンの規則でサ
ーバ側計算機を選択するが、あるサーバ側計算機のCP
U利用率が特定の値に達した場合には、それよりも低い
CPU利用率のサーバ側計算機を優先的に選択する方法
などがある。またここで、負荷管理部213−aが負荷
情報を管理する方法は規定しない。例えば、負荷情報が
CPU利用率である場合、負荷管理部213−aや21
3−bは、定期的に自サーバ側計算機のCPU利用率を
測定し保持する。そして、負荷管理部213−aは、負
荷情報として他サーバ側計算機200−bからそのサー
バ側計算機のCPU利用率を定期的に受け取り、負荷表
214−aに反映させる方法がある。
(4003)。自サーバ側計算機200−aの場合、計
算機選択部212−aは要求メッセージ700をオブジ
ェクト呼び出し部220−aの要求メッセージ解釈部2
21−aに受け渡す(4004)。他サーバ側計算機2
00−bの場合、要求メッセージ700をサーバ側計算
機200−bの要求メッセージ解釈部に受け渡す(40
05)。要求メッセージ解釈部221−aは、要求メッ
セージ700を自サーバ側計算機200−aの計算機選
択部212−a、または、他サーバ側計算機200−b
の計算機選択部から受け取る。そして、要求メッセージ
700から、オブジェクトコード識別子710、オブジ
ェクトデータ識別子720、メソッド名称730、及
び、ユーザデータ750を取り出し、オブジェクト制御
部222−aに受け渡す(4006)。
制御部222−aは、オブジェクトコード識別子71
0、オブジェクトデータ識別子720、メソッド名称7
30を管理用計算機300のオブジェクト取得部311
に受け渡す(4007)。オブジェクト制御部222−
aは、オブジェクトコード840、オブジェクトデータ
940をオブジェクト取得部311から受け取り、それ
らと要求メッセージ700から取り出した情報をオブジ
ェクト実行部223−aに受け渡す(4008)。
実行部223−aは、受け渡されたオブジェクトコード
840、オブジェクトデータ940を用い、当該メソッ
ドを実行する(4009)。オブジェクト制御部222
−aは、オブジェクト実行部223−aからメソッド実
行後のオブジェクトデータを受け取る。その後、当該オ
ブジェクトデータ識別子、メソッド実行後(オブジェク
ト呼び出しの後)のオブジェクトデータ、及び、メソッ
ド名称を管理用計算機300のオブジェクト更新部31
4に受け渡す(4010)。
−aは、オブジェクト実行部223−aからメソッドの
実行結果を受け取り、クライアント側計算機100の送
受信部122に送信する(4011)。
うにサーバ側計算機200−aにおいて、負荷均衡部2
10−aは要求メッセージ700を受信し負荷を均衡す
る。また、オブジェクト呼び出し部220−aは、要求
メッセージ700の中のオブジェクトコード識別子71
0、及び、オブジェクトデータ識別子720により識別
されるオブジェクトのオブジェクトデータ530とオブ
ジェクトコード520を管理用計算機300のオブジェ
クトアクセス部310から取得する。オブジェクト呼び
出し部220−aは、オブジェクトデータ530を用
い、オブジェクトコード520の中のメソッドを実行す
る。具体的には、オブジェクトコード520の中のメソ
ッドがオブジェクトデータ530中のメンバを参照、更
新しながら計算を行う。オブジェクトコード520中の
メソッドは、オブジェクトデータ530を更新する可能
性があるため、オブジェクトデータ530の更新をオブ
ジェクトアクセス部310に依頼する。
用計算機300のオブジェクトの取得の流れを示す。
311は、サーバ側計算機200−aのオブジェクト制
御部222−aからオブジェクトコード識別子710、
オブジェクトデータ識別子720、メソッド名称730
を受信する(5001)。コード取得部312は、オブ
ジェクトコード表800から当該オブジェクトコード識
別子810のオブジェクトコード840、及び、状態8
30を取得する(5002)。オブジェクトコード84
0を取得できて、かつ、状態830が“ON”であるか
を判断する(5003)。判断が偽の場合、エラーであ
り、当該オブジェクトは開始していないことを意味する
(5004)。データ取得部313は、オブジェクトデ
ータ表900から当該オブジェクトデータ識別子910
のオブジェクトデータ940と使用フラグ930を取得
する。オブジェクトデータを取得できたかを判断する
(5006)。判断が偽の場合、エラーであり、当該オ
ブジェクトは開始していないことを意味する(500
4)。データ取得部313は、当該メソッド名称の属性
A522が“同期”であるかを判断する(5007)。
この属性A522が“同期”である場合、当該オブジェ
クトデータ識別子910の使用フラグ930が“未使
用”であるかを判断する(5008)。使用フラグ93
0が“使用”の場合、データ取得部313は、“未使
用”になるまで待ち状態に入る(5009)。使用フラ
グ930が“未使用”の場合、データ取得部313は、
使用フラグ930を“使用”に変更する(5010)。
オブジェクト取得部311は、取得したオブジェクトコ
ード、オブジェクトデータをサーバ側計算機200−a
のオブジェクト制御部222−aに受け渡す(501
1)。メソッドの属性A522が“非同期”の場合も同
様である(5011)。
オブジェクトアクセス部310は、サーバ側計算機20
0−aのオブジェクト呼び出し部220―aからオブジ
ェクトデータ940、オブジェクトコード840の取得
依頼を受け取り、それらをオブジェクトコード表80
0、オブジェクトデータ表900から取得してオブジェ
クト呼び出し部220−aに受け渡す。ただし、同期メ
ソッドを実行するための取得依頼の場合、オブジェクト
アクセス部310はオブジェクトデータをオブジェクト
データ表900から取得する部分をシリアライズする。
この結果、クライアント側計算機100から同じオブジ
ェクトの同期メソッドに対し、同時に複数の遠隔オブジ
ェクト呼び出しがある場合、サーバ側計算機200−
a、または、200−bにおけるオブジェクトの呼び出
し(メソッドの実行)はシリアライズされる。
用計算機300のオブジェクトの更新の流れを示す。
トデータ識別子910、メソッド実行後のオブジェクト
データ940、メソッド名称730を受け取る(600
1)。データ更新部315は、オブジェクトデータ表9
00の、当該オブジェクトデータ識別子910のオブジ
ェクトデータ940をメソッド実行後のオブジェクトデ
ータに更新する(6002)。データ更新部315は、
当該オブジェクトデータ識別子910の使用フラグ93
0を“未使用”に変更する(6003)。このように管
理用計算機300において、オブジェクトアクセス部3
10は、オブジェクト呼び出し部220―aからメソッ
ド実行後のオブジェクトデータ940の更新依頼を受け
取り、それをオブジェクトデータ表900に更新する。
て詳細に説明する。第2の実施例である分散オブジェク
トシステムの構成図は、図1、図2、図3、及び、図4
を用いる。データ構造については、図6、図7、図8、
及び、図9を用いるが、実行可能形式オブジェクト50
0の構造は第1の実施例から変更になる。
形式オブジェクトのデータ構造を示す。図5の実行可能
形式オブジェクト500にメソッド毎の属性B524が
追加されている。属性B524が“参照”とは、そのメ
ソッドの実行中にオブジェクトデータは変更されないこ
とを意味する。属性B524が“更新”とは、そのメソ
ッド実行中にオブジェクトデータは更新されることを意
味する。
始、停止、またクライアント側計算機100の動作は、
第1の実施例と同じである。
の動作の流れは、第1の実施例の図13のステップ40
08までは同じである。図18を参照して、ステップ4
008以降の、サーバ側計算機200−aの動作の流れ
を示す。
制御部222−aは、オブジェクトコード520、オブ
ジェクトデータ530をオブジェクト取得部311から
受け取り、それらと要求メッセージ700から取り出し
た情報をオブジェクト実行部223−aに受け渡す(7
008)。オブジェクト実行部223−aは、受け渡さ
れたオブジェクトコード520、オブジェクトデータ5
30を用い、当該メソッドを実行する(7009)。オ
ブジェクト制御部222−aは、 メソッド実行後のオ
ブジェクトデータを受け取る。その後、オブジェクトコ
ード520から当該メソッド名称の属性A522、属性
B524を取得し、最初に属性B524が“参照”であ
るかを判断する(7010)。属性B524が“更新”
の場合、当該オブジェクトデータ識別子910、メソッ
ド実行後のオブジェクトデータ940、及び、メソッド
名称730を管理用計算機300のオブジェクト更新部
314に受け渡す(7011)。属性B524が“参
照”の場合、次に、属性A522が“同期”ではないこ
とを判断する(7012)。属性A522が“同期”の
場合、当該オブジェクトデータ識別子、空のオブジェク
トデータ、メソッド名称をオブジェクト更新部314に
受け渡す(7013)。サーバ側計算機200−aの応
答部224−aは、オブジェクト実行部223−aから
メソッドの実行結果を受け取り、クライアント側計算機
100の送受信部122に送信する(7014)。
おけるオブジェクトの取得の流れは、第1の実施例と同
じである。
おけるオブジェクトの更新の流れを示す。
314は、オブジェクトデータ識別子910、オブジェ
クトデータ940、及び、メソッド名称730を受け取
る(8001)。データ更新部315は当該メソッド名
称の属性B524が“更新”であるか判断する(800
2)。属性B524が“更新”である場合、データ更新
部315は、オブジェクトデータ表900の、当該オブ
ジェクトデータ識別子910のオブジェクトデータ94
0をメソッド実行後のオブジェクトデータで更新する
(8003)。データ更新部315は、当該オブジェク
トデータ識別子910の使用フラグ930を“未使用”
に変更する(8004)。属性B524が“参照”であ
る場合も同様である(8004)。
−aで、参照、かつ、同期メソッドを実行した場合、オ
ブジェクトコード中のメソッドは、オブジェクトデータ
中のメンバを更新しないため、オブジェクトデータの更
新をオブジェクトアクセス部310に依頼せず、オブジ
ェクトデータを取得する時に“使用”に変更された使用
フラグを“未使用”に戻すことのみ依頼する。またサー
バ側計算機200−aで、参照、かつ、非同期メソッド
を実行した場合も、オブジェクトコード中のメソッド
は、オブジェクトデータ中のメンバを更新することはな
いため、オブジェクトデータの更新をオブジェクトアク
セス部310に依頼しない。さらに当該オブジェクトデ
ータの使用フラグも用いないため、使用フラグ930の
変更さえも依頼しない。この結果、メソッド毎の属性B
524を用い、メソッドを“参照”、または、“更新”
に分類することで、サーバ側計算機200−aと管理用
計算機300間の通信コストを低減することができる。
て、トラフィック急増に対するシステム拡張について説
明する。
計算機200−a、または、200−bへのアクセス量
が急増し、サーバ側計算機200−a、または、200
−bの計算能力が不足した場合、新たなサーバ側計算機
をシステムに追加する必要がある。このような場合、負
荷均衡部とオブジェクト呼び出し部を備えた新しいサー
バ側計算機をネットワーク10に接続し、負荷均衡部2
10−a、または、220−bが要求メッセージを新し
いサーバ側計算機の負荷均衡部にも送信する、もしく
は、新しいサーバ側計算機の負荷均衡部が要求メッセー
ジを負荷均衡部210−a、または、220−bにも送
信するように変更することで、システムを拡張できる。
従来の分散オブジェクトシステムでは、オブジェクトを
新たなサーバ側計算機に導入し開始する必要があった。
一方、本発明では、オブジェクトを管理用計算機300
でのみ開始し、クライアント側計算機100上からの遠
隔オブジェクト呼び出しに対し、新しいサーバ側計算機
のオブジェクト呼び出し部が、当該オブジェクトのオブ
ジェクトコード、及び、オブジェクトデータを管理用計
算機300のオブジェクトアクセス部310から取得し
てメソッドを実行するため、オブジェクトを新たなサー
バ側計算機に導入し開始するといった作業を実施する必
要はない。
において、サービス変更要求に対するシステム変更につ
いて説明する。
供するサービスを変更するといったシステム変更の要求
がある場合、開始中のオブジェクトを仕様変更済みのオ
ブジェクトに入れ替える必要がある。この時、管理用計
算機300において、当該オブジェクトを停止し、仕様
変更済みのオブジェクトの実行可能形式オブジェクト3
60に入れ替え、当該オブジェクトを開始することで、
システムを変更できる。従来の分散オブジェクトシステ
ムでは、複数のサーバ側計算機から構成される場合、各
サーバ側計算機のオブジェクトを停止し、仕様変更済み
のオブジェクトの実行可能形式オブジェクトに入れ替
え、各サーバ側計算機上でオブジェクトを開始する必要
があった。一方、本発明では、オブジェクトを管理用計
算機300でのみ開始し、クライアント側計算機100
上からの遠隔オブジェクト呼び出しに対し、オブジェク
ト呼び出し部220−a、または、220−bが、当該
オブジェクトのオブジェクトコード、及び、オブジェク
トデータを管理用計算機300のオブジェクトアクセス
部310から取得してメソッドを実行するため、サーバ
側計算機200−a、及び、200−bのオブジェクト
を停止し、仕様変更済みのオブジェクトの実行可能形式
オブジェクトに入れ替え、サーバ側計算機200−a、
及び、200−b上でオブジェクトを開始するといった
一連の作業を実施する必要はない。
る。
ショッピングシステムについて、図1の分散オブジェク
トシステムの構成図を参照しながら説明する。
00は、WWWブラウザとHTML形式ファイルから構
成される。WWWブラウザは、遠隔オブジェクト呼び出
し部120に相当し、HTML形式ファイルはユーザプ
ログラム110に相当する。また、このHTML形式フ
ァイル上のリンクには、オブジェクトコード識別子、オ
ブジェクトデータ識別子、メソッド名称、及び、メソッ
ドの引数が埋め込まれている。ユーザがWWWブラウザ
上に表示されているHTML形式ファイルのリンクを選
択し、システムへのアクセス結果である他のHTML形
式ファイルを取得要求することは、ユーザプログラム1
10が、メソッド名称を指定して遠隔オブジェクト呼び
出しを遠隔オブジェクト呼び出し部120に依頼しメソ
ッド実行結果を要求することに相当する。
a、または、200−bは、WWWサーバとオブジェク
ト呼び出し部220−a、または、200−bから構成
される。また、本適用例では、クライアント側計算機1
00とサーバ側計算機200−a、または、200−b
の間に、図示しない負荷均衡機能付きルータが配置され
る。この負荷均衡機能付きルータは、WWWブラウザか
らのHTML形式ファイル取得の要求メッセージ700
を受信し、ラウンドロビンの規則、または、負荷状況に
応じて、サーバ側計算機200−a、または、200−
bにその要求メッセージ700を送信する。WWWサー
バと負荷均衡機能付きルータの組み合わせが、負荷均衡
部210−a、または、210−bに相当する。WWW
サーバが要求メッセージを受信し、オブジェクト呼び出
し部220−a、または、220−bに受け渡す方法は
特に規定しないが、WWWサーバと外部プログラム間の
インタフェースの代表例としてCGI(Common
Gateway Interface)がある。
オブジェクトアクセス部310、オブジェクト管理部3
20、ユーザ管理プログラム330、オブジェクトデー
タ表340、オブジェクトコード表350、及び、実行
可能形式オブジェクト360から構成される。実行可能
形式オブジェクト360は、カタログオブジェクトの実
行可能形式オブジェクトと、カートオブジェクトの実行
可能形式オブジェクトの2つから成る。
ジェクト360は、ショッピングシステムにおける商品
の一覧を生成するlistメソッド(非同期、参照)、
WWWブラウザに対応するカートオブジェクトを開始す
るstartメソッド(非同期、参照)、カートオブジ
ェクトを停止するendメソッド(非同期、参照)の3
つのメソッドを持つ。
ステムにおいて、1つだけ開始される。ユーザがWWW
ブラウザ上のHTML形式ファイルのリンクを選択する
と、唯一のカタログオブジェクトの、当該リンクと対応
するメソッドが実行される。listメソッドは、商品
一覧等の商品情報をデータベースから取得し、HTML
形式ファイルに整形して、それをメソッド実行結果とし
て応答する。startメソッドは、ネットワーク経由
でカートオブジェクト用のユーザ管理プログラム330
を起動し、当該WWWブラウザに割り当てられるカート
オブジェクトを開始する。その後、開始したカートオブ
ジェクトのオブジェクトコード識別子、オブジェクトデ
ータ識別子をHTML形式ファイルに埋め込んで、それ
をメソッド実行結果として応答する。endメソッド
は、当該WWWブラウザに割り当てられたカートオブジ
ェクトのオブジェクトコード識別子、オブジェクトデー
タ識別子を引数として受け取り、ネットワーク経由でカ
ートオブジェクト用のユーザ管理プログラム330を起
動し、カートオブジェクトを停止する。
ェクト360は、商品識別子を引数とし、その商品識別
子をカートオブジェクトのメンバに追加するputメソ
ッド(同期、更新)、カートオブジェクトが保持してい
る商品識別子に従い、購入を決定するbuyメソッド
(同期、更新)の2つのメソッドを持つ。また商品識別
子の列を保持するためのメンバを持つ。カートオブジェ
クトが開始した時、そのメンバに保持されている商品識
別子はない。
トのstartメソッドを実行すると開始され、当該W
WWブラウザに割り当てられる。またカタログオブジェ
クトのendメソッドを実行する、当該WWWブラウザ
に割り当てられたカートオブジェクトは停止される。ユ
ーザがWWWブラウザ上のHTML形式ファイルのリン
クを選択すると、当該WWWブラウザに割り当てられた
カタログオブジェクトの、当該リンクと対応するメソッ
ドが実行される。putメソッドは、商品識別子を引数
として受け取り、その商品識別子を保持するためメンバ
に保持する。buyメソッドは、メンバに保持されてい
る商品識別子の列をデータベースに追加し、購入決定さ
れた商品情報を保存する。
オブジェクト用のユーザ管理プログラム、及び、カート
オブジェクト用のユーザ管理プログラムの2つから成
る。
グラム330は、ショッピングシステム全体を開始する
ときに実行され、カタログオブジェクトを1つ開始す
る。また、ショッピングシステム全体を停止する時に実
行され、開始中のカタログオブジェクトを停止する。
ラム330は、WWWブラウザからの要求メッセージに
対し、カタログオブジェクトのstartメソッドがサ
ーバ側計算機200−a、または、200−b上で実行
された時、その実行の延長上で、ネットワーク10経由
で起動、実行され、そのWWWブラウザに対応するカー
トオブジェクトを追加で開始する。また、WWWブラウ
ザからの要求メッセージ700に対し、カタログオブジ
ェクトのendメソッドがサーバ側計算機200−a、
または、200−b上で実行された時、その実行の延長
上で、ネットワーク経由で起動、実行され、WWWブラ
ウザに対応するカートオブジェクトを停止する。
ジェクトコード表350には、カタログオブジェクトの
オブジェクトコード、及び、カートオブジェクトのオブ
ジェクトコードが設定される。また、オブジェクトデー
タ表340には、カタログオブジェクトのオブジェクト
データが1つ設定され、ショッピングを開始したWWW
ブラウザ単位、つまり、ショッピング中のWWWブラウ
ザ数のカートオブジェクトのオブジェクトデータが設定
される。
ータベース用計算機がネットワーク10に接続されてい
る。このデータベース用計算機には、ショッピングシス
テムの商品一覧等の商品情報が格納されている領域と、
ユーザが商品の購入を決定した場合に、購入する商品情
報を格納する領域が用意されている。データベース用計
算機は、ショッピングシステムを構築する上でカタログ
オブジェクト、カートオブジェクトが利用するものであ
る。具体的には、カタログオブジェクトのlistメソ
ッドが、商品一覧等の商品情報をデータベース用計算機
のデータベースから参照する。また、カートオブジェク
トのbuyメソッドが、購入決定された商品情報をデー
タベース用計算機のデータベースに追加する。
のリンクの選択によりWWWブラウザからWWWサーバ
へ送信された要求メッセージに対して、オブジェクトの
メソッドがプログラムコードを実行し、実行結果をHT
ML形式ファイルに整形しWWWブラウザに応答するこ
とが、ユーザプログラム110からの遠隔オブジェクト
呼び出しに対し、オブジェクトのメソッドがプログラム
コードを実行しメソッド実行結果をユーザプログラム1
10へ応答することに相当する。
タログオブジェクト、または、カートオブジェクトのメ
ソッドの関係について説明する。クライアント側計算機
100のWWWブラウザ上には、カタログオブジェク
ト、または、カートオブジェクトのメソッドに対するリ
ンクを持つHTML形式ファイルが表示されている。ユ
ーザがリンクを選択すると、サーバ側計算機200−
a、または、200−bでは、選択されたリンクに対応
するメソッドが実行される。当該メソッドは、メソッド
のプログラムコードを実行し、実行結果をHTML形式
ファイルに整形し応答する。WWWブラウザは、応答し
たHTML形式ファイルを表示する。本適用例では、リ
ンクを選択することによるHTML形式ファイル間の遷
移や各HTML形式ファイルにおけるリンクの構成につ
いては、特に規定しない。以下に簡単な例を示す。第1
のHTML形式ファイルには、listメソッド用のリ
ンクが含まれている。listメソッド用のリンクによ
り商品一覧とstartメソッド用のリンクを含む第2
のHTML形式ファイルに遷移する。第2のHTML形
式ファイルのstartメソッド用のリンクにより、ユ
ーザが商品識別子を入力可能なputメソッド用リン
ク、または、フォームと、buyメソッド用リンクを含
む第3のHTML形式ファイルに遷移する。第3のHT
ML形式ファイルにおいて、buyメソッド用のリンク
を選択するまで繰り返しputメソッド用のリンクを選
択できるように、putメソッドのリンクにより、同じ
第3のHTML形式ファイルに遷移する。第3のbuy
メソッド用のリンクにより、購入決定が行われたことを
通知するメッセージとendメソッドのリンクを含む第
4のHTML形式ファイルに遷移する。第4のHTML
形式ファイルのendメソッド用のリンクにより、第1
のHTML形式ファイルに遷移する。
テムの開始、停止について説明する。ショッピングシス
テムを開始する場合、管理用計算機300でカタログオ
ブジェクト用のユーザ管理プログラム330を実行す
る。カタログオブジェクト用のユーザ管理プログラム3
30は、オブジェクト管理部320に1つのカタログオ
ブジェクトを開始するように依頼する。オブジェクト管
理部320は、カタログオブジェクト用の実行可能形式
オブジェクト360を参照し、オブジェクトコード表3
50、及び、オブジェクトデータ表340にオブジェク
トコード、及び、オブジェクトデータを設定し、カタロ
グオブジェクトを開始する。一方、ショッピングを停止
する場合、ショッピングシステムの開始と同様に、カタ
ログオブジェクト用のユーザ管理プログラム330がカ
タログオブジェクトを停止する。
覧、具体的には、カタログオブジェクトのlistメソ
ッドの実行を説明する。WWWブラウザ上には、カタロ
グオブジェクトのオブジェクトコード識別子、オブジェ
クトデータ識別子、メソッド名称listが埋め込まれ
たリンクを持つHTML形式ファイルが表示されてい
る。ユーザが当該リンクを選択すると、このオブジェク
トコード識別子等の情報から構成される要求メッセージ
が、WWWブラウザから図示しない負荷均衡機能付きル
ータに送信される。負荷均衡機能付きルータが要求メッ
セージを受信し、ラウンドロビンの規則、または、負荷
状況に応じて、サーバ側計算機200−a、または、2
00−bに送信する。ここでは、サーバ側計算機200
−aが選択されたものとする。
は、要求メッセージを受信しオブジェクト呼び出し部2
20−aに受け渡す。オブジェクト呼び出し部220−
aは、管理用計算機300のオブジェクトアクセス部3
10からカタログオブジェクトを取得し、listメソ
ッドを実行する。listメソッドは、データベースか
ら商品一覧等の商品情報を取得し、HTML形式ファイ
ルに整形し、クライアント側計算機100のWWWブラ
ウザに応答する。この時、listメソッドは、非同
期、参照メソッドなので、メソッドを実行した後、オブ
ジェクトデータの更新を管理用計算機300のオブジェ
クトアクセス部310に依頼しない。また、複数のWW
Wブラウザが同時にlistメソッドの実行を要求した
場合、listメソッドは非同期、参照メソッドなの
で、その実行はシリアライズされず、複数のサーバ側計
算機上で並行に行われる。
の開始、及び、停止、具体的には、カタログオブジェク
トのstartメソッド、及び、endメソッドの実行
を説明する。WWWブラウザからカタログオブジェクト
のstartメソッドを実行するところまでは、WWW
ブラウザからの商品一覧の閲覧と同様である。star
tメソッドは、ネットワーク10経由で管理用計算機3
00をアクセスし、カートオブジェクト用のユーザ管理
プログラム330を起動する。カートオブジェクト用の
ユーザ管理プログラム330は、オブジェクト管理部3
20にカートオブジェクトを追加で開始するように依頼
する。オブジェクト管理部320は、カートオブジェク
ト用の実行可能形式オブジェクト360を参照し、カー
トオブジェクトを追加で開始する。startメソッド
は、ネットワーク10経由で、開始されたカートオブジ
ェクトのオブジェクトデータ識別子を取得し、カートオ
ブジェクトのオブジェクトコード識別子、開始されたカ
ートオブジェクトのオブジェクトデータ識別子、メソッ
ド名称put、buy等が埋め込まれたHTML形式フ
ァイルを生成し、WWWブラウザに応答する。この時、
開始されたカートオブジェクトは、WWWブラウザに対
応するものである。一方、ショッピングを停止する場
合、startメソッドの実行と同様で、endメソッ
ドはそのWWWブラウザに対応するカートオブジェクト
を停止する。
グ、具体的には、カートオブジェクトのputメソッ
ド,buyメソッドの実行を説明する。WWWブラウザ
上には、ユーザが商品識別子を入力できる商品のリンク
(本来、ユーザがデータ入力できるリンクとはHTML
形式ファイルでのフォームのことであるが、ここでは、
ユーザがデータを入力できるリンクと表現する)と購入
のリンクが含まれたHTML形式ファイルが表示されて
いる。この商品のリンクには、カートオブジェクトのオ
ブジェクトコード識別子、当該WWWブラウザに割り当
てられているカートオブジェクトのオブジェクトデータ
識別子、メソッド名称putが埋め込まれており、ユー
ザが入力した商品識別子がメソッドの引数として用いら
れるようになっている。ユーザが商品識別子を入力し、
そのリンクを選択することは、入力した商品を選ぶこと
を意味する。また、購入のリンクには、カートオブジェ
クトのオブジェクトコード識別子、当該WWWブラウザ
に割り当てられているカートオブジェクトのオブジェク
トデータ識別子、メソッド名称buyが埋め込まれてい
る。ユーザがこのリンクを選択することは、その時点ま
でに選んだ商品を購入決定することを意味する。
入力し商品のリンクを選択した場合、オブジェクトデー
タ識別子やメソッド引数としての商品識別子から成る要
求メッセージが生成される。WWWブラウザからの商品
一覧の閲覧と同様に、要求メッセージは、サーバ側計算
機200−aのオブジェクト呼び出し部220−aまで
受け渡される。オブジェクト呼び出し部220−aは、
管理用計算機300のオブジェクトアクセス部310か
らカートオブジェクトを取得し、putメソッドを実行
する。putメソッドは、メソッドの引数で渡された商
品識別子を当該カートオブジェクトのメンバに追加す
る、つまり、オブジェクトデータが変更される。put
メソッドは同期、更新メソッドなので、その後、オブジ
ェクト呼び出し部220−aは、当該カートオブジェク
トのオブジェクトデータの更新を、管理用計算機300
のオブジェクトアクセス部310に依頼する。これによ
り、オブジェクトデータ表340中の当該カートオブジ
ェクトのオブジェクトデータは、商品識別子が追加され
たオブジェクトデータに更新されるので、それ以降、当
該オブジェクトのメソッドは追加された商品識別子を参
照することができる。またユーザがWWWブラウザで他
の商品識別子を入力して商品のリンクを選択し、再度、
当該カートオブジェクトのputメソッドが実行された
場合、前回の商品識別子の後に追加されるという形で、
今回の商品識別子もメンバに追加される。
サーバ側計算機によっては、1回目の遠隔オブジェクト
呼び出しの時、サーバ側計算機200−aでputメソ
ッドが実行され、2回目の遠隔オブジェクト呼びだしの
時、サーバ側計算機200−bでputメソッドが実行
されることもある。さらにユーザがWWWブラウザの表
示画面分割等を行い、それぞれのWWWブラウザの表示
画面で別の商品識別子を入力し商品のリンクを同時に選
択した場合、putメソッドは同期、更新メソッドであ
るため、実行はシリアライズされる。
を選択した場合は、buyメソッドの実行と同様であ
る。buyメソッドは、当該カートオブジェクトのメン
バに追加されている商品識別子をデータベースに保存す
る。
増に対するシステム拡張について説明する。ショッピン
グシステムへのアクセス量が急増し、サーバ側計算機が
不足した場合、新たな計算機をサーバ側のシステムに追
加する必要がある。このような場合、WWWサーバとオ
ブジェクト呼び出し部を備えた新しい計算機をネットワ
ークに接続し、負荷均衡機能付きルータが要求メッセー
ジを新たな計算機にも送信するように変更することで、
システムを拡張できる。
要求に対するシステム変更について説明する。例えば、
商品一覧の表示形式を変更する場合、カタログオブジェ
クトのlistメソッドの仕様を変更する必要がある。
この時、管理用計算機300において、カタログオブジ
ェクトを停止し、仕様変更済みのカタログオブジェクト
の実行可能形式オブジェクト360に入れ替え、カタロ
グオブジェクトを開始することで、システムを変更でき
る。
オブジェクトをサーバ側計算機で開始せず、クライアン
ト側計算機からの遠隔オブジェクト呼び出しに対し、オ
ブジェクトコード、オブジェクトデータを管理用計算機
から取得し、サーバ側計算機でメソッドを実行し、さら
にオブジェクトデータの更新を管理用計算機に依頼した
ものであり、従って、サーバ側計算機が不足し計算機を
システムに追加する場合、新たな計算機上に予めオブジ
ェクトを開始する必要がなく、容易にシステムを拡張で
きる。つまり、従来の方法では、新たな計算機をサーバ
側のシステムに追加する場合、オブジェクトを新たな計
算機上に導入し、オブジェクトを開始する必要があっ
た。一方、本実施例では、オブジェクトは管理用計算機
でのみ導入、開始されているため、新たな計算機上で導
入、開始される必要がなく、システムの拡張が容易であ
る。
機上でオブジェクトの開始、または、停止を行わず、管
理用計算機のみで行うようにしたので、オブジェクトの
入れ替え時には、管理用計算機上でオブジェクトを停止
し、オブジェクトを入れ替えて、再度、オブジェクトを
開始するだけでよく、容易にシステムを変更できる。つ
まり、従来の方法では、サーバ側のシステムが提供する
サービスを変更するために複数のサーバ側計算機上で開
始しているオブジェクトを入れ替える場合、各々のサー
バ側計算機上でオブジェクトを停止し、オブジェクトを
入れ替えて、再度、オブジェクトを開始する必要があっ
た。
用計算機でのみ導入、開始されているため、各サーバ側
計算機でオブジェクトの入れ替えを行う必要がなく、管
理用計算機でのみオブジェクトを停止し、オブジェクト
を入れ替えて、再度、オブジェクトを開始すればよく、
システムの変更が容易である。
システムに追加する場合、新たな計算機上に予めオブジ
ェクトを開始しないでよく、システムの拡張が容易であ
るという効果がある。
提供するサービスを変更する場合、管理用計算機でのみ
オブジェクトを停止し、オブジェクトを入れ替えて、再
度、オブジェクトを開始すればよく、システムの変更が
容易であるという効果がある。
を示す全体システム構成図である。
である。
る。
である。
る。
る。
る。
ローチャートである。
ローチャートである。
示すフローチャートである。
フローチャートである。
フローチャートであり、図13の続きである。
ローチャートである。
ローチャートである。
説明するための図である。
フローチャートである。
ローチャートである。
Claims (10)
- 【請求項1】クライアント側計算機と、サーバ側計算機
と、管理用計算機とを備えた分散オブジェクトシステム
において、前記サーバ側計算機に負荷均衡機能を有し、
前記クライアント側計算機からの遠隔オブジェクト呼び
出しに対し、オブジェクトコード、オブジェクトデータ
を前記管理用計算機から取得し、前記サーバ側計算機で
メソッドを実行し、さらにオブジェクトデータの更新を
前記管理用計算機で行うことを特徴とする分散オブジェ
クトシステム。 - 【請求項2】請求項1の分散オブジェクトシステムにお
いて、前記管理用計算機でのみオブジェクトの開始、ま
たは、停止を行うことを特徴とする分散オブジェクトシ
ステム。 - 【請求項3】請求項1の分散オブジェクトシステムにお
いて、同じオブジェクトの同期メソッドに対し、前記ク
ライアント側計算機から複数の遠隔オブジェクト呼び出
しがある場合、前記サーバ側計算機におけるオブジェク
ト呼び出し、または、メソッドの実行をシリアライズす
ることを特徴とする分散オブジェクトシステム。 - 【請求項4】請求項1の分散オブジェクトシステムにお
いて、同じオブジェクトの非同期メソッドに対し、前記
クライアント側計算機から複数の遠隔オブジェクト呼び
出しがある場合、前記サーバ側計算機におけるオブジェ
クト呼び出し、または、メソッドの実行を並行に行うこ
とを特徴とする分散オブジェクトシステム。 - 【請求項5】請求項1の分散オブジェクトシステムにお
いて、前記サーバ側計算機で更新メソッドを実行した場
合、オブジェクトデータの更新とオブジェクトデータの
使用フラグの変更を前記管理用計算機に依頼することを
特徴とする分散オブジェクトシステム。 - 【請求項6】請求項1の分散オブジェクトシステムにお
いて、前記サーバ側計算機で参照、かつ、非同期メソッ
ドを実行した場合、オブジェクトデータの更新もオブジ
ェクトデータの使用フラグの変更も前記サーバ側計算機
で行うことを特徴とする分散オブジェクトシステム。 - 【請求項7】請求項1の分散オブジェクトシステムにお
いて、前記サーバ側計算機で参照、かつ、同期メソッド
を実行した場合、オブジェクトデータの使用フラグの更
新のみ前記管理用計算機に依頼することを特徴とする分
散オブジェクトシステム。 - 【請求項8】請求項1の分散オブジェクトシステムにお
いて、オブジェクトデータは、カタログオブジェクト
と、カートオブジェクトから成ることを特徴とする分散
オブジェクトシステム。 - 【請求項9】要求メッセージを受信し、負荷状況に応じ
てメソッドを実行するサーバ側計算機を選択し、要求メ
ッセージを、選択された前記サーバ側計算機のオブジェ
クト呼び出し部に送信する負荷均衡部と、前記負荷均衡
部から要求メッセージを受信し、オブジェクトコード、
及び、オブジェクトデータの取得依頼を管理用計算機に
送信し、オブジェクトコード、及び、オブジェクトデー
タを前記管理用計算機から受信し、メソッドを実行し、
メソッド実行後のオブジェクトデータと更新依頼を前記
管理用計算機に送信するオブジェクト呼び出し部を備え
ることを特徴とするサーバ側計算機。 - 【請求項10】オブジェクトコード、及び、オブジェク
トデータの取得依頼をサーバ側計算機から受信し、オブ
ジェクトコード表、及び、オブジェクトデータ表からオ
ブジェクトコード、及び、オブジェクトデータを取得
し、これらを前記サーバ側計算機に送信し、及び、メソ
ッド実行後のオブジェクトデータと更新依頼を受信し、
メソッド実行後のオブジェクトデータをオブジェクトデ
ータ表に設定するオブジェクトアクセス部と、オブジェ
クトの開始指示をユーザ管理プログラムから受け取り、
実行可能形式オブジェクトを参照し、オブジェクトコー
ドをオブジェクトコード表に、オブジェクトデータをオ
ブジェクトデータ表に設定するオブジェクト管理部と、
オブジェクトコードを格納するオブジェクトコード表
と、オブジェクトデータを格納するオブジェクトデータ
表と、オブジェクトの開始指示、及び、停止指示を前記
オブジェクト管理部に受け渡すユーザ管理プログラム
と、オブジェクトを実行可能なプログラムとして表現し
た実行可能形式オブジェクトを備えることを特徴とする
管理用計算機。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000122372A JP2001306537A (ja) | 2000-04-18 | 2000-04-18 | 分散オブジェクトシステム |
US09/772,294 US6701323B2 (en) | 2000-04-18 | 2001-01-29 | Object management system and method for distributed object system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000122372A JP2001306537A (ja) | 2000-04-18 | 2000-04-18 | 分散オブジェクトシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001306537A true JP2001306537A (ja) | 2001-11-02 |
JP2001306537A5 JP2001306537A5 (ja) | 2005-02-24 |
Family
ID=18632855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000122372A Withdrawn JP2001306537A (ja) | 2000-04-18 | 2000-04-18 | 分散オブジェクトシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US6701323B2 (ja) |
JP (1) | JP2001306537A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205687A (ja) * | 2001-06-11 | 2009-09-10 | Microsoft Corp | 複数装置管理の方法およびシステム |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7610289B2 (en) | 2000-10-04 | 2009-10-27 | Google Inc. | System and method for monitoring and analyzing internet traffic |
US7325047B2 (en) * | 2001-05-23 | 2008-01-29 | International Business Machines Corporation | Dynamic undeployment of services in a computing network |
DE10129371B4 (de) * | 2001-06-20 | 2006-06-14 | T-Mobile Deutschland Gmbh | Verfahren zur automatischen Wegesteuerung von Informationen |
JP3901982B2 (ja) * | 2001-10-18 | 2007-04-04 | 富士通株式会社 | ネットワークプロセッサの負荷分散装置 |
US7213065B2 (en) * | 2001-11-08 | 2007-05-01 | Racemi, Inc. | System and method for dynamic server allocation and provisioning |
WO2003073266A1 (en) * | 2002-02-21 | 2003-09-04 | Bea Systems, Inc. | System and method for object activation |
US20030182550A1 (en) * | 2002-02-21 | 2003-09-25 | Michael Chen | System and method for dynamic activation of enterprise Java beans |
US20050063524A1 (en) * | 2002-12-11 | 2005-03-24 | Leader Technologies, Inc. | Communication system and method |
US20070127400A1 (en) * | 2002-12-11 | 2007-06-07 | Leader Technologies, Inc. | Professional Services Communications Architecture |
US8195714B2 (en) | 2002-12-11 | 2012-06-05 | Leaper Technologies, Inc. | Context instantiated application protocol |
US7925246B2 (en) | 2002-12-11 | 2011-04-12 | Leader Technologies, Inc. | Radio/telephony interoperability system |
JP2005301436A (ja) * | 2004-04-07 | 2005-10-27 | Hitachi Ltd | クラスタシステムおよびクラスタシステムにおける障害回復方法 |
JP2007257180A (ja) * | 2006-03-22 | 2007-10-04 | Hitachi Ltd | ネットワークノード、スイッチ及びネットワーク障害回復方法 |
US8209437B2 (en) | 2008-09-25 | 2012-06-26 | Rockliffe Systems, Inc. | Personal information management data synchronization |
CN103294548B (zh) * | 2013-05-13 | 2016-04-13 | 华中科技大学 | 一种基于分布式文件系统的io请求调度方法和系统 |
US10985967B1 (en) * | 2017-03-10 | 2021-04-20 | Loop Commerce, Inc. | Cross-network differential determination |
US10467126B2 (en) * | 2017-03-31 | 2019-11-05 | Microsoft Technology Licensing, Llc | Scenarios based fault injection |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05210612A (ja) | 1992-01-30 | 1993-08-20 | Nec Corp | 遠隔手続き呼び出し方式 |
US5566302A (en) * | 1992-12-21 | 1996-10-15 | Sun Microsystems, Inc. | Method for executing operation call from client application using shared memory region and establishing shared memory region when the shared memory region does not exist |
JPH06332830A (ja) | 1993-05-21 | 1994-12-02 | Matsushita Electric Ind Co Ltd | アプリケーション管理装置および遠隔手続呼び出しシス テム |
JPH09167097A (ja) | 1995-12-15 | 1997-06-24 | Mitsubishi Electric Corp | リモート・プロシジャ・コールシステム |
JPH1040118A (ja) | 1996-07-26 | 1998-02-13 | Nec Corp | クライアント/サーバシステム及びクライアント端末装置 |
US6105069A (en) * | 1997-01-22 | 2000-08-15 | Novell, Inc. | Licensing controller using network directory services |
US6209018B1 (en) * | 1997-11-13 | 2001-03-27 | Sun Microsystems, Inc. | Service framework for a distributed object network system |
US5987471A (en) * | 1997-11-13 | 1999-11-16 | Novell, Inc. | Sub-foldering system in a directory-service-based launcher |
JPH11327876A (ja) | 1998-05-15 | 1999-11-30 | Hitachi Ltd | 分散オブジェクトシステム構築・保守・解体方式 |
US6591272B1 (en) * | 1999-02-25 | 2003-07-08 | Tricoron Networks, Inc. | Method and apparatus to make and transmit objects from a database on a server computer to a client computer |
US6289382B1 (en) * | 1999-08-31 | 2001-09-11 | Andersen Consulting, Llp | System, method and article of manufacture for a globally addressable interface in a communication services patterns environment |
US6578068B1 (en) * | 1999-08-31 | 2003-06-10 | Accenture Llp | Load balancer in environment services patterns |
US6615253B1 (en) * | 1999-08-31 | 2003-09-02 | Accenture Llp | Efficient server side data retrieval for execution of client side applications |
-
2000
- 2000-04-18 JP JP2000122372A patent/JP2001306537A/ja not_active Withdrawn
-
2001
- 2001-01-29 US US09/772,294 patent/US6701323B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205687A (ja) * | 2001-06-11 | 2009-09-10 | Microsoft Corp | 複数装置管理の方法およびシステム |
Also Published As
Publication number | Publication date |
---|---|
US6701323B2 (en) | 2004-03-02 |
US20010032239A1 (en) | 2001-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001306537A (ja) | 分散オブジェクトシステム | |
JP4456485B2 (ja) | ポータル・サーバにおいてポートレットの集合を管理する方法および装置 | |
US6356933B2 (en) | Methods and apparatus for efficiently transmitting interactive application data between a client and a server using markup language | |
US7359953B2 (en) | Methods and apparatus for making a hypermedium interactive | |
JP4218759B2 (ja) | ポータル・サーバからセッション情報を中継する方法および装置 | |
US20030101211A1 (en) | Execution of dynamically configured application service in access method-independent exchange | |
CN108139935A (zh) | 业务定义容器的资源约束的扩展 | |
JP2006526828A (ja) | 均一な装置無依存型グラフィカル・ユーザー・インターフェースの生成方法およびターミナル | |
JP2006501558A (ja) | ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法 | |
JP2001056810A (ja) | データベースアクセスシステム | |
CN111444088B (zh) | 一种接口测试的测试用例调用方法和装置 | |
JP3469828B2 (ja) | 対話式協調動作を行うためのシステム及び方法 | |
JP2002259259A (ja) | 画像データ通信システム、画像データ通信方法および記憶媒体 | |
JPH11338907A (ja) | ネットワークを利用したcadシステム | |
JP4689867B2 (ja) | サーバシステム,クライアントシステムおよび差分更新システムならびに差分更新プログラム | |
JPH08147257A (ja) | データ独立型コンピュータシステムにおける機器接続定義の自動生成方式 | |
JP6947129B2 (ja) | 管理装置およびネットワーク管理方法 | |
KR20020064053A (ko) | 엑스엠엘 구조를 이용한 데이터베이스 통합 및 인터페이스제공 방법 | |
JP2002215551A (ja) | データ通信方法、データ通信管理サーバおよびデータ通信ソフトウェア | |
JP3671715B2 (ja) | Wwwサーバ・クライアント・システムにおけるデータベース・セッション管理方法およびこれを用いるサーバ・クライアント・システム | |
JP2994299B2 (ja) | プログラム実行の依頼と結果通知方法 | |
JPH11212931A (ja) | プログラム連携方法 | |
JP2002041293A (ja) | プログラム制御方法及びプログラム制御システム | |
JP2002024015A (ja) | クライアントサーバシステム構築方法 | |
JP2003303108A (ja) | Corba分散処理システムおよびcorba分散処理システムの優先度マップ管理方法およびcorba分散プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040319 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040319 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060417 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060509 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20060609 |