JPH11312153A - オブジェクト・サ―バ間の作業負荷管理方法および装置 - Google Patents
オブジェクト・サ―バ間の作業負荷管理方法および装置Info
- Publication number
- JPH11312153A JPH11312153A JP11032483A JP3248399A JPH11312153A JP H11312153 A JPH11312153 A JP H11312153A JP 11032483 A JP11032483 A JP 11032483A JP 3248399 A JP3248399 A JP 3248399A JP H11312153 A JPH11312153 A JP H11312153A
- Authority
- JP
- Japan
- Prior art keywords
- server
- group
- client
- workload management
- request
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1006—Server selection for load balancing with static server selection, e.g. the same server being selected for a specific client
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1038—Load balancing arrangements to avoid a single path through a load balancer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】
【課題】 サーバ・グループの資源にクライアントが効
率的にアクセスできる方法および装置を提供する。 【解決手段】 グループが、何らかの作業を行うために
グループを呼出したい可能性のあるクライアントにオブ
ジェクト参照をエクスポートする、作業負荷管理のため
に構成されたオブジェクト・サーバのグループであり、
オブジェクト参照は、インターネット・プロトコル(I
P)レベルでグループ内の作業負荷管理を行う作業負荷
管理ユニットを指すフィールドを有する。
率的にアクセスできる方法および装置を提供する。 【解決手段】 グループが、何らかの作業を行うために
グループを呼出したい可能性のあるクライアントにオブ
ジェクト参照をエクスポートする、作業負荷管理のため
に構成されたオブジェクト・サーバのグループであり、
オブジェクト参照は、インターネット・プロトコル(I
P)レベルでグループ内の作業負荷管理を行う作業負荷
管理ユニットを指すフィールドを有する。
Description
【0001】
【発明の属する技術分野】本発明は、たとえば1つの計
算装置(「クライアント」)が他の計算装置(「サー
バ」)にクライアントの作業の一部を実行するように要
求する、クライアント/サーバ(「分散」とも呼ぶ)コ
ンピューティングの分野に関する。
算装置(「クライアント」)が他の計算装置(「サー
バ」)にクライアントの作業の一部を実行するように要
求する、クライアント/サーバ(「分散」とも呼ぶ)コ
ンピューティングの分野に関する。
【0002】
【従来の技術】情報技術の世界では、クライアント/サ
ーバ・コンピューティングがここ数年ますます重要にな
っている。このタイプの分散コンピューティングでは、
1つの計算機で実行されているプロセス(「クライアン
ト」)がその作業の一部を、別の計算機上で実行されて
いる、たとえばその作業を実行するのにより適している
と考えられる他のプロセス(「サーバ」)に代行させる
ことができる。クライアントとサーバは、同じ物理計算
機上で実行されている2つのプロセスであってもよい。
ーバ・コンピューティングがここ数年ますます重要にな
っている。このタイプの分散コンピューティングでは、
1つの計算機で実行されているプロセス(「クライアン
ト」)がその作業の一部を、別の計算機上で実行されて
いる、たとえばその作業を実行するのにより適している
と考えられる他のプロセス(「サーバ」)に代行させる
ことができる。クライアントとサーバは、同じ物理計算
機上で実行されている2つのプロセスであってもよい。
【0003】クライアント/サーバ・コンピューティン
グの利点は、オブジェクト指向プログラミング(OO
P)と呼ばれる周知のコンピュータ・プログラミング技
法の使用によってさらに強化され、これによってクライ
アントとサーバを異なる(異種)「プラットフォーム」
上に配置することが可能になる。プラットフォームと
は、計算機がその作業を行うために使用する特定のハー
ドウェア/ソフトウェア/オペレーティング・システム
/通信プロトコルの組合せである。OOPによって、ク
ライアント・アプリケーション・プログラムとサーバ・
アプリケーション・プログラムは、クライアント・アプ
リケーションの作業要求がどのように伝達され、サーバ
・アプリケーションによって受け入れられるかを気にせ
ずに、それぞれ独自のプラットフォーム上で動作するこ
とができる。同様に、サーバ・アプリケーションは、O
OPシステムがサーバ・アプリケーションの処理結果を
どのように受け取り、変換し、要求側クライアント・ア
プリケーションに送り返すかを気にする必要がない。
グの利点は、オブジェクト指向プログラミング(OO
P)と呼ばれる周知のコンピュータ・プログラミング技
法の使用によってさらに強化され、これによってクライ
アントとサーバを異なる(異種)「プラットフォーム」
上に配置することが可能になる。プラットフォームと
は、計算機がその作業を行うために使用する特定のハー
ドウェア/ソフトウェア/オペレーティング・システム
/通信プロトコルの組合せである。OOPによって、ク
ライアント・アプリケーション・プログラムとサーバ・
アプリケーション・プログラムは、クライアント・アプ
リケーションの作業要求がどのように伝達され、サーバ
・アプリケーションによって受け入れられるかを気にせ
ずに、それぞれ独自のプラットフォーム上で動作するこ
とができる。同様に、サーバ・アプリケーションは、O
OPシステムがサーバ・アプリケーションの処理結果を
どのように受け取り、変換し、要求側クライアント・ア
プリケーションに送り返すかを気にする必要がない。
【0004】OOP技法が異種クライアント/サーバ・
システムにどのように組み込まれているかに関する詳細
は、米国特許第5440744号および欧州特許出願公
告EP0677943A2号に記載されている。両刊行
物を参照により本明細書に合体する。しかし、本発明の
環境の背景がわかるように、基本アーキテクチャの一例
を以下に示す。この例では、クライアントとサーバは異
なる計算機上にあるが、同じ計算機上にある場合でもこ
れと同じソフトウェア・アーキテクチャが適用される。
システムにどのように組み込まれているかに関する詳細
は、米国特許第5440744号および欧州特許出願公
告EP0677943A2号に記載されている。両刊行
物を参照により本明細書に合体する。しかし、本発明の
環境の背景がわかるように、基本アーキテクチャの一例
を以下に示す。この例では、クライアントとサーバは異
なる計算機上にあるが、同じ計算機上にある場合でもこ
れと同じソフトウェア・アーキテクチャが適用される。
【0005】図1に示すように、クライアント・コンピ
ュータ10(たとえばIBM OS/2オペレーティン
グ・システムがインストールされているパーソナル・コ
ンピュータとすることができる)は、そのオペレーティ
ング・システム上で稼働するアプリケーション・プログ
ラム40を有する(「IBM」および「OS/2」はイ
ンターナショナル・ビジネス・マシーンズ・コーポレイ
ションの商標である)。アプリケーション・プログラム
40は周期的に、サーバ・コンピュータ20上で作業を
実行するように要求したり、または後でアプリケーショ
ン・プログラム40が使用するためにサーバ20からデ
ータが返されることを要求したりする。サーバ・コンピ
ュータ20はたとえばIBMのMVSオペレーティング
・システム上で稼働する高性能メインフレーム・コンピ
ュータとすることができる(「MVS」もIBMコーポ
レイションの商標である)。本発明では、通信サービス
をサーバによって行うように求める要求が第1のアプリ
ケーション・プログラム40とのユーザ対話によって起
こされるか、またはアプリケーション・プログラム40
がユーザ対話とは独立して動作し、プログラムの実行中
にその要求を自動的に行うかは問わない。
ュータ10(たとえばIBM OS/2オペレーティン
グ・システムがインストールされているパーソナル・コ
ンピュータとすることができる)は、そのオペレーティ
ング・システム上で稼働するアプリケーション・プログ
ラム40を有する(「IBM」および「OS/2」はイ
ンターナショナル・ビジネス・マシーンズ・コーポレイ
ションの商標である)。アプリケーション・プログラム
40は周期的に、サーバ・コンピュータ20上で作業を
実行するように要求したり、または後でアプリケーショ
ン・プログラム40が使用するためにサーバ20からデ
ータが返されることを要求したりする。サーバ・コンピ
ュータ20はたとえばIBMのMVSオペレーティング
・システム上で稼働する高性能メインフレーム・コンピ
ュータとすることができる(「MVS」もIBMコーポ
レイションの商標である)。本発明では、通信サービス
をサーバによって行うように求める要求が第1のアプリ
ケーション・プログラム40とのユーザ対話によって起
こされるか、またはアプリケーション・プログラム40
がユーザ対話とは独立して動作し、プログラムの実行中
にその要求を自動的に行うかは問わない。
【0006】クライアント・コンピュータ10がサーバ
・コンピュータ20のサービスを求める要求を行いたい
場合、第1のアプリケーション・プログラム40は第1
の論理手段50に必要なサービスを通知する。これはた
とえば、第1の論理手段がリモート・プロシージャの名
前を入出力パラメータのリストと共に送ることによって
行うことができる。次に、第1の論理手段50は記憶装
置60に記憶されている使用可能な通信サービスの定義
を参照し、第2のコンピュータ20との間の必要な通信
を見つけて確立するタスクを行う。可能なサービスはす
べてオブジェクト・クラス70のまとまりのある枠組み
として定義されている。このプロセス中に、第1の論理
手段は、サーバ・コンピュータ20を識別する1つの構
成要素(サーバ・アドレス)とサーバ・コンピュータ2
0上にある特定のサーバ・オブジェクトを識別するもう
一つの構成要素(オブジェクト・キー)とを有するオブ
ジェクト参照を判断する。このようにしてサービスを定
義することにより、パフォーマンスと再使用可能性の点
で多くの利点が得られる。
・コンピュータ20のサービスを求める要求を行いたい
場合、第1のアプリケーション・プログラム40は第1
の論理手段50に必要なサービスを通知する。これはた
とえば、第1の論理手段がリモート・プロシージャの名
前を入出力パラメータのリストと共に送ることによって
行うことができる。次に、第1の論理手段50は記憶装
置60に記憶されている使用可能な通信サービスの定義
を参照し、第2のコンピュータ20との間の必要な通信
を見つけて確立するタスクを行う。可能なサービスはす
べてオブジェクト・クラス70のまとまりのある枠組み
として定義されている。このプロセス中に、第1の論理
手段は、サーバ・コンピュータ20を識別する1つの構
成要素(サーバ・アドレス)とサーバ・コンピュータ2
0上にある特定のサーバ・オブジェクトを識別するもう
一つの構成要素(オブジェクト・キー)とを有するオブ
ジェクト参照を判断する。このようにしてサービスを定
義することにより、パフォーマンスと再使用可能性の点
で多くの利点が得られる。
【0007】サーバ20との必要な通信を確立するため
に、第1の論理手段50は枠組み内のどのオブジェクト
・クラスを使用する必要があるかを判断し、次に、その
オブジェクトのインスタンスを作成し、そのオブジェク
トにメッセージが送られ、それによってそのオブジェク
トがそのオブジェクトのメソッドの1つを呼び出す。こ
れによって、接続手段80を介してサーバ・コンピュー
タ20との接続が確立され、その後、第2の論理手段9
0に要求が送られる。
に、第1の論理手段50は枠組み内のどのオブジェクト
・クラスを使用する必要があるかを判断し、次に、その
オブジェクトのインスタンスを作成し、そのオブジェク
トにメッセージが送られ、それによってそのオブジェク
トがそのオブジェクトのメソッドの1つを呼び出す。こ
れによって、接続手段80を介してサーバ・コンピュー
タ20との接続が確立され、その後、第2の論理手段9
0に要求が送られる。
【0008】次に第2の論理手段90が、その要求をサ
ーバ・コンピュータ20上で実行されている第2のアプ
リケーション・プログラム100(以下、サービス・ア
プリケーションと呼ぶ)に渡し、それによってサービス
・アプリケーション100が、データ取り出しプロシー
ジャなど、その要求に必要な特定のタスクを実行するこ
とができる。このタスクが完了すると、サービス・アプ
リケーションは第1のコンピュータ10に結果を返送す
る必要がある場合がある。サービス・アプリケーション
100は、要求されたタスクの実行中と、結果を第1の
コンピュータ10に返送するときに、第2の論理手段9
0と対話する。第2の論理手段90は、オブジェクトの
インスタンスを確立し、サービス・アプリケーション1
00が必要とするときに、それらのオブジェクトの適切
なメソッドを呼び出し、記憶装置110に記憶されてい
るオブジェクト・クラスのまとまりのある枠組みからオ
ブジェクト・インスタンスが作成される。
ーバ・コンピュータ20上で実行されている第2のアプ
リケーション・プログラム100(以下、サービス・ア
プリケーションと呼ぶ)に渡し、それによってサービス
・アプリケーション100が、データ取り出しプロシー
ジャなど、その要求に必要な特定のタスクを実行するこ
とができる。このタスクが完了すると、サービス・アプ
リケーションは第1のコンピュータ10に結果を返送す
る必要がある場合がある。サービス・アプリケーション
100は、要求されたタスクの実行中と、結果を第1の
コンピュータ10に返送するときに、第2の論理手段9
0と対話する。第2の論理手段90は、オブジェクトの
インスタンスを確立し、サービス・アプリケーション1
00が必要とするときに、それらのオブジェクトの適切
なメソッドを呼び出し、記憶装置110に記憶されてい
るオブジェクト・クラスのまとまりのある枠組みからオ
ブジェクト・インスタンスが作成される。
【0009】上述の技法を使用すると、クライアント・
アプリケーション・プログラム40は通信アーキテクチ
ャに対しては露出されない。さらに、サービス・アプリ
ケーション100はその環境の標準機構を介して呼び出
され、リモートから呼び出されていることはわからな
い。
アプリケーション・プログラム40は通信アーキテクチ
ャに対しては露出されない。さらに、サービス・アプリ
ケーション100はその環境の標準機構を介して呼び出
され、リモートから呼び出されていることはわからな
い。
【0010】「オブジェクト管理グループ(OMG)」
は、図1に示すような異種プラットフォーム上のクライ
アント/サーバ・コンピューティングの様々な局面に関
与する組織の国際コンソーシアムである。OMGは、ク
ライアント(たとえば10)が(OOPの形で)サーバ
(たとえば20)と通信するための標準を発表してい
る。それらの標準の一部として、「オブジェクト要求ブ
ローカ」が規定されており(共通オブジェクト要求ブロ
ーカ・アーキテクチャ、または略してCORBAと呼ば
れる)、クライアントとサーバの間にオブジェクト指向
ブリッジを設ける。ORBは、クライアント・アプリケ
ーションとサーバ・アプリケーションをオブジェクト指
向実現の詳細から切り離し、第1および第2の論理手段
50および90と接続手段80の作業の少なくとも一部
を実行する。
は、図1に示すような異種プラットフォーム上のクライ
アント/サーバ・コンピューティングの様々な局面に関
与する組織の国際コンソーシアムである。OMGは、ク
ライアント(たとえば10)が(OOPの形で)サーバ
(たとえば20)と通信するための標準を発表してい
る。それらの標準の一部として、「オブジェクト要求ブ
ローカ」が規定されており(共通オブジェクト要求ブロ
ーカ・アーキテクチャ、または略してCORBAと呼ば
れる)、クライアントとサーバの間にオブジェクト指向
ブリッジを設ける。ORBは、クライアント・アプリケ
ーションとサーバ・アプリケーションをオブジェクト指
向実現の詳細から切り離し、第1および第2の論理手段
50および90と接続手段80の作業の少なくとも一部
を実行する。
【0011】多くの場合、サーバ資源の(複数サーバの
形での)複製を設けて「サーバ」が多数の同時クライア
ント要求を処理できるようにし、フォールト・トレラン
ト機能を備えることができるようにする(1つのサーバ
に障害がある場合に別のサーバが「介入」して引き継ぐ
ことができる)。クライアントは、単一の「サーバ」と
通信していると思っているが、実は複数のサーバ(また
はサーバのグループ)が要求を実際に処理している(こ
れらのサーバは別々の計算機上にあってもよく、同じ計
算機上で実行されている別々のプロセスであってもよ
い)。この環境では、「サーバ」に宛てられたクライア
ント要求は、(「サーバ」を構成するすべてのサーバ機
に共通の)中央ゲートウェイに宛てて送られ、中央ゲー
トウェイが作業負荷管理と負荷バランスを行い、各サー
バに順に要求を割り当てるラウンド・ロビン方式などの
周知の作業負荷バランス方式(または複数の方式の組合
せ)に従ってクライアント要求をグループ内の様々なサ
ーバに分配する。グループ内の各サーバの現行作業負荷
も、新規要求をスケジュールする際に使用される共通要
因である(すなわち現行作業負荷が低いサーバに新規要
求が割り当てられる)。使用する1つまたは複数のバラ
ンス方式の特定の詳細は、「サーバ」システム・アーキ
テクチャを構成する者、一般にはシステム管理者が選択
する。
形での)複製を設けて「サーバ」が多数の同時クライア
ント要求を処理できるようにし、フォールト・トレラン
ト機能を備えることができるようにする(1つのサーバ
に障害がある場合に別のサーバが「介入」して引き継ぐ
ことができる)。クライアントは、単一の「サーバ」と
通信していると思っているが、実は複数のサーバ(また
はサーバのグループ)が要求を実際に処理している(こ
れらのサーバは別々の計算機上にあってもよく、同じ計
算機上で実行されている別々のプロセスであってもよ
い)。この環境では、「サーバ」に宛てられたクライア
ント要求は、(「サーバ」を構成するすべてのサーバ機
に共通の)中央ゲートウェイに宛てて送られ、中央ゲー
トウェイが作業負荷管理と負荷バランスを行い、各サー
バに順に要求を割り当てるラウンド・ロビン方式などの
周知の作業負荷バランス方式(または複数の方式の組合
せ)に従ってクライアント要求をグループ内の様々なサ
ーバに分配する。グループ内の各サーバの現行作業負荷
も、新規要求をスケジュールする際に使用される共通要
因である(すなわち現行作業負荷が低いサーバに新規要
求が割り当てられる)。使用する1つまたは複数のバラ
ンス方式の特定の詳細は、「サーバ」システム・アーキ
テクチャを構成する者、一般にはシステム管理者が選択
する。
【0012】CORBA標準の一部として、汎用ORB
間プロトコル(GIOP)と呼ばれるORB間の通信用
のプロトコルが規定されている。このプロトコルは、基
本的にはクライアントORBとサーバORBが互いに送
り合うメッセージのリストである。クライアントORB
とサーバORBの間のトランスポート媒体としてインタ
ーネットを使用する場合、GIOPから(インターネッ
ト通信の基礎である)TCP/IPレベルへのマッピン
グが必要である。このマッピングをインターネット・イ
ンタフェースORBプロトコル(IIOP)と呼ぶ。
間プロトコル(GIOP)と呼ばれるORB間の通信用
のプロトコルが規定されている。このプロトコルは、基
本的にはクライアントORBとサーバORBが互いに送
り合うメッセージのリストである。クライアントORB
とサーバORBの間のトランスポート媒体としてインタ
ーネットを使用する場合、GIOPから(インターネッ
ト通信の基礎である)TCP/IPレベルへのマッピン
グが必要である。このマッピングをインターネット・イ
ンタフェースORBプロトコル(IIOP)と呼ぶ。
【0013】従来、上述のゲートウェイなどの周知の作
業負荷管理ゲートウェイはすべて、作業負荷管理方式を
IIOPレベルで行ってきた。すなわち、IIOPゲー
トウェイはクライアントORBからクライアント要求を
受け取ってから、すべてIIOPレベルで、その要求に
サーバ・グループ内のサーバを割り当てる処理に取りか
かる。IIOPゲートウェイはグループ内のサーバを選
択した後、その要求を選択したサーバに転送するために
別のIIOP要求を形成しなければならない。したがっ
て、IIOPゲートウェイは、着信クライアント要求を
選択されたサーバにリダイレクトするために各クライア
ント要求に含まれるパラメータ・リストのマーシャル
(marshall)とデマーシャル(demarshall)を行わなけれ
ばならず、したがってゲートウェイで高水準の作業が必
要になる。このため、全体的なシステム・パフォーマン
スが低下し、その結果、非効率的な設計になる。
業負荷管理ゲートウェイはすべて、作業負荷管理方式を
IIOPレベルで行ってきた。すなわち、IIOPゲー
トウェイはクライアントORBからクライアント要求を
受け取ってから、すべてIIOPレベルで、その要求に
サーバ・グループ内のサーバを割り当てる処理に取りか
かる。IIOPゲートウェイはグループ内のサーバを選
択した後、その要求を選択したサーバに転送するために
別のIIOP要求を形成しなければならない。したがっ
て、IIOPゲートウェイは、着信クライアント要求を
選択されたサーバにリダイレクトするために各クライア
ント要求に含まれるパラメータ・リストのマーシャル
(marshall)とデマーシャル(demarshall)を行わなけれ
ばならず、したがってゲートウェイで高水準の作業が必
要になる。このため、全体的なシステム・パフォーマン
スが低下し、その結果、非効率的な設計になる。
【0014】1997年9月に発表されたIBMのコン
ポーネント・ブローカ・シリーズ(IBMの商標)製品
は、オブジェクト・サーバのグループ内で作業負荷管理
を行えるようにするためにクライアントORBに特別な
機能を追加し、それによって追加機能を備えるクライア
ントが要求をゲートウェイ・ルータを通さなくても済む
ようにする必要があった。1997年5月8日出願の米
国特許出願番号853102号を参照されたい。しか
し、この手法は、この追加機能が導入されているクライ
アントしか使用できず、したがって広範囲なクライアン
トが関与する環境では使用することができない。このI
BM製品では、追加機能のないクライアントは依然とし
て要求をIIOPルータを介して送らなければならな
い。
ポーネント・ブローカ・シリーズ(IBMの商標)製品
は、オブジェクト・サーバのグループ内で作業負荷管理
を行えるようにするためにクライアントORBに特別な
機能を追加し、それによって追加機能を備えるクライア
ントが要求をゲートウェイ・ルータを通さなくても済む
ようにする必要があった。1997年5月8日出願の米
国特許出願番号853102号を参照されたい。しか
し、この手法は、この追加機能が導入されているクライ
アントしか使用できず、したがって広範囲なクライアン
トが関与する環境では使用することができない。このI
BM製品では、追加機能のないクライアントは依然とし
て要求をIIOPルータを介して送らなければならな
い。
【0015】
【発明が解決しようとする課題】したがって、従来の技
術では作業負荷管理されているサーバ・グループの資源
に広範囲なクライアントがより効率的な方法でアクセス
することができるようにする方法が必要である。
術では作業負荷管理されているサーバ・グループの資源
に広範囲なクライアントがより効率的な方法でアクセス
することができるようにする方法が必要である。
【0016】
【課題を解決するための手段】第1の態様によると、本
発明はオブジェクト指向クライアント/サーバ・コンピ
ューティング環境内でサーバ・オブジェクトのグループ
内の作業負荷管理を行う方法であって、クライアント要
求を受け取るステップと、サーバのグループによって前
もってエクスポートされた、作業負荷管理ユニットを指
すポインタにアクセスするステップと、前記グループの
うちの前記クライアント要求を満たすために使用すべき
サーバを選択するために、前記クライアント要求時に前
記作業負荷管理ユニットを使用してインターネット・プ
ロトコル(IP)レベルで行われる作業負荷管理を行う
ステップと、前記選択されたサーバに前記クライアント
要求を転送するステップとを含む方法を提供する。
発明はオブジェクト指向クライアント/サーバ・コンピ
ューティング環境内でサーバ・オブジェクトのグループ
内の作業負荷管理を行う方法であって、クライアント要
求を受け取るステップと、サーバのグループによって前
もってエクスポートされた、作業負荷管理ユニットを指
すポインタにアクセスするステップと、前記グループの
うちの前記クライアント要求を満たすために使用すべき
サーバを選択するために、前記クライアント要求時に前
記作業負荷管理ユニットを使用してインターネット・プ
ロトコル(IP)レベルで行われる作業負荷管理を行う
ステップと、前記選択されたサーバに前記クライアント
要求を転送するステップとを含む方法を提供する。
【0017】好ましい特徴は以下の通りである。ポイン
タは、作業負荷管理ユニットとして機能するIPルータ
の名前またはIPアドレスが入ったホスト名フィールド
を有するオブジェクト参照である。あるいは、ポインタ
は、作業負荷管理ユニットとして機能する動的ドメイン
名サーバによって認識される、サーバのグループを識別
する識別子が入ったホスト名フィールドを有するオブジ
ェクト参照である。
タは、作業負荷管理ユニットとして機能するIPルータ
の名前またはIPアドレスが入ったホスト名フィールド
を有するオブジェクト参照である。あるいは、ポインタ
は、作業負荷管理ユニットとして機能する動的ドメイン
名サーバによって認識される、サーバのグループを識別
する識別子が入ったホスト名フィールドを有するオブジ
ェクト参照である。
【0018】第2の態様によると、本発明は、オブジェ
クト参照がインターネット・プロトコル(IP)レベル
でグループ内の作業負荷管理を行う作業負荷管理ユニッ
トを指すフィールドを有し、オブジェクト・サーバのグ
ループが、何らかの作業を行うために前記グループを呼
び出したい可能性のあるクライアントに前記オブジェク
ト参照をエクスポートする、作業負荷管理のために構成
されたオブジェクト・サーバのグループを提供する。
クト参照がインターネット・プロトコル(IP)レベル
でグループ内の作業負荷管理を行う作業負荷管理ユニッ
トを指すフィールドを有し、オブジェクト・サーバのグ
ループが、何らかの作業を行うために前記グループを呼
び出したい可能性のあるクライアントに前記オブジェク
ト参照をエクスポートする、作業負荷管理のために構成
されたオブジェクト・サーバのグループを提供する。
【0019】第3の態様によると、本発明は、コンピュ
ータ上で実行されると、前述の第1の態様による方法を
行う、コンピュータ可読記憶媒体上に記憶されたコンピ
ュータ・プログラム製品を提供する。
ータ上で実行されると、前述の第1の態様による方法を
行う、コンピュータ可読記憶媒体上に記憶されたコンピ
ュータ・プログラム製品を提供する。
【0020】第4の態様によると、本発明は、オブジェ
クト指向クライアント/サーバ・コンピューティング環
境内でオブジェクト・サーバのグループ内の作業負荷管
理を行う装置であって、クライアント要求を受け取る手
段と、作業負荷管理ユニットを指す、サーバの前記グル
ープによって前もってエクスポートされたポインタにア
クセスする手段と、前記要求を満たすために使用すべき
前記グループのサーバを選択するために、前記クライア
ント要求時に前記作業負荷管理ユニットを使用して、イ
ンターネット・プロトコル(IP)レベルで行われる作
業負荷管理を行う手段と、前記選択されたサーバに前記
クライアント要求を転送する手段とを含む装置を提供す
る。
クト指向クライアント/サーバ・コンピューティング環
境内でオブジェクト・サーバのグループ内の作業負荷管
理を行う装置であって、クライアント要求を受け取る手
段と、作業負荷管理ユニットを指す、サーバの前記グル
ープによって前もってエクスポートされたポインタにア
クセスする手段と、前記要求を満たすために使用すべき
前記グループのサーバを選択するために、前記クライア
ント要求時に前記作業負荷管理ユニットを使用して、イ
ンターネット・プロトコル(IP)レベルで行われる作
業負荷管理を行う手段と、前記選択されたサーバに前記
クライアント要求を転送する手段とを含む装置を提供す
る。
【0021】IPレベルで作業負荷管理を行うことによ
って、各クライアント要求内のパラメータ・リストのマ
ーシャルとデマーシャルに要する処理量が最低限にとど
められるため、サーバ・グループ内の選択されたオブジ
ェクト・サーバに要求を極めて迅速かつ効率的に送るこ
とができる。さらに、このような効率的な作業負荷管理
を行うためにクライアントに特別なソフトウェアを追加
する必要がない。
って、各クライアント要求内のパラメータ・リストのマ
ーシャルとデマーシャルに要する処理量が最低限にとど
められるため、サーバ・グループ内の選択されたオブジ
ェクト・サーバに要求を極めて迅速かつ効率的に送るこ
とができる。さらに、このような効率的な作業負荷管理
を行うためにクライアントに特別なソフトウェアを追加
する必要がない。
【0022】
【発明の実施の形態】図2の第1の好ましい実施形態の
サーバ・グループ23は、各オブジェクト・サーバが前
述のようにクライアント要求を処理するように備えられ
た複数のオブジェクト・サーバ23a〜23cを含む。
図2のクライアント21a、21b、および21cは、
各クライアントがアプリケーション層とプロキシ・オブ
ジェクト層とORB層とを有する点で、図1に示すクラ
イアントと類似している(後の2つの要素は図1の要素
50、60、70、および80に対応する)。図1のこ
の従来技術の構成では、第1のアプリケーション・プロ
グラム40がサーバにその作業の一部を行わせたい場
合、行わせたい作業を指定したメッセージをプロキシ・
オブジェクトに送る。プロキシ・オブジェクトはその要
求から(サーバから前もってエクスポートされた)オブ
ジェクト参照を見つけ出し、そのオブジェクト参照を、
サーバに要求をルーティングするためにそのオブジェク
ト参照に含まれるサーバ・アドレスを使用したORBに
渡す。オブジェクト参照には、そのクライアント要求を
処理するためにサーバがどのオブジェクトを呼び出すべ
きかを示すオブジェクト・キーも含まれる。
サーバ・グループ23は、各オブジェクト・サーバが前
述のようにクライアント要求を処理するように備えられ
た複数のオブジェクト・サーバ23a〜23cを含む。
図2のクライアント21a、21b、および21cは、
各クライアントがアプリケーション層とプロキシ・オブ
ジェクト層とORB層とを有する点で、図1に示すクラ
イアントと類似している(後の2つの要素は図1の要素
50、60、70、および80に対応する)。図1のこ
の従来技術の構成では、第1のアプリケーション・プロ
グラム40がサーバにその作業の一部を行わせたい場
合、行わせたい作業を指定したメッセージをプロキシ・
オブジェクトに送る。プロキシ・オブジェクトはその要
求から(サーバから前もってエクスポートされた)オブ
ジェクト参照を見つけ出し、そのオブジェクト参照を、
サーバに要求をルーティングするためにそのオブジェク
ト参照に含まれるサーバ・アドレスを使用したORBに
渡す。オブジェクト参照には、そのクライアント要求を
処理するためにサーバがどのオブジェクトを呼び出すべ
きかを示すオブジェクト・キーも含まれる。
【0023】図2で、オブジェクト・サーバ23a〜2
3cのグループが作業負荷管理のためのオブジェクトの
グループとして扱われる場合、作業負荷バランス属性が
クラスに関連づけられ、そのクラスをサーバにインスト
ールするときに記録される。この属性は、そのクラスの
オブジェクトが作業負荷バランスに適合するかどうかを
判断するブール値である。たとえば、IDL(インタフ
ェース定義言語)インタフェースWorkloadBa
lancedを定義し、作業負荷バランスされなければ
ならないオブジェクトのクラスはこれを継承しなければ
ならないようにすることができる。オブジェクト参照が
サーバORBからクライアントORBにエクスポートさ
れるとき、サーバORBは関連づけられたオブジェクト
が、作業負荷管理(バランス)に適合するものとして構
成されているクラスに属するかどうかを調べる。属さな
い場合、そのオブジェクト参照は通常の手続きに従って
エクスポートされる。しかし、そのようなクラスに属す
る場合、オブジェクト参照は後述するように特定のフィ
ールドに特定の値が入ったIIOPプロファイルと共に
エクスポートされなければならない。
3cのグループが作業負荷管理のためのオブジェクトの
グループとして扱われる場合、作業負荷バランス属性が
クラスに関連づけられ、そのクラスをサーバにインスト
ールするときに記録される。この属性は、そのクラスの
オブジェクトが作業負荷バランスに適合するかどうかを
判断するブール値である。たとえば、IDL(インタフ
ェース定義言語)インタフェースWorkloadBa
lancedを定義し、作業負荷バランスされなければ
ならないオブジェクトのクラスはこれを継承しなければ
ならないようにすることができる。オブジェクト参照が
サーバORBからクライアントORBにエクスポートさ
れるとき、サーバORBは関連づけられたオブジェクト
が、作業負荷管理(バランス)に適合するものとして構
成されているクラスに属するかどうかを調べる。属さな
い場合、そのオブジェクト参照は通常の手続きに従って
エクスポートされる。しかし、そのようなクラスに属す
る場合、オブジェクト参照は後述するように特定のフィ
ールドに特定の値が入ったIIOPプロファイルと共に
エクスポートされなければならない。
【0024】図2で、サーバ・グループ23は相互運用
可能オブジェクト参照(IOR)を各クライアント21
a〜21cにエクスポートし、それによってクライアン
トは要求を行うためにサーバ・グループに接触する方法
がわかるようにする。図4に示すように、エクスポート
されたIORにはIIOPプロファイル41が含まれ、
このIIOPプロファイルは、IPルータ22(一般に
IPスプレイヤと呼ばれる)を含むサーバ・プロセスの
IPアドレスを含むホスト名フィールド411を有す
る。あるいは、ホスト名フィールド411には、サーバ
・グループ(たとえばSG1.1)の名前を入れること
もでき、その場合、クライアントは標準ドメイン・ネー
ム・サーバ(DNS)にアクセスすることによってそれ
を解釈し、IPルータ22のIPアドレスにする。II
OPプロファイル41にはポート番号フィールド412
もあり、IPルータ22はこれを「監視」してIIOP
要求が着信していないか調べる。さらに、IIOPプロ
ファイル41は、サーバ・グループを識別する識別子を
含むオブジェクト・キー・フィールド413を有する
(それによってサーバ・グループは前もってエクスポー
トしたオブジェクト・キーを認識することができ、した
がって他のサーバ・グループによってエクスポートされ
たオブジェクトのプロキシを作成するのではなくそのグ
ループのローカル・オブジェクトを作成することができ
る)。
可能オブジェクト参照(IOR)を各クライアント21
a〜21cにエクスポートし、それによってクライアン
トは要求を行うためにサーバ・グループに接触する方法
がわかるようにする。図4に示すように、エクスポート
されたIORにはIIOPプロファイル41が含まれ、
このIIOPプロファイルは、IPルータ22(一般に
IPスプレイヤと呼ばれる)を含むサーバ・プロセスの
IPアドレスを含むホスト名フィールド411を有す
る。あるいは、ホスト名フィールド411には、サーバ
・グループ(たとえばSG1.1)の名前を入れること
もでき、その場合、クライアントは標準ドメイン・ネー
ム・サーバ(DNS)にアクセスすることによってそれ
を解釈し、IPルータ22のIPアドレスにする。II
OPプロファイル41にはポート番号フィールド412
もあり、IPルータ22はこれを「監視」してIIOP
要求が着信していないか調べる。さらに、IIOPプロ
ファイル41は、サーバ・グループを識別する識別子を
含むオブジェクト・キー・フィールド413を有する
(それによってサーバ・グループは前もってエクスポー
トしたオブジェクト・キーを認識することができ、した
がって他のサーバ・グループによってエクスポートされ
たオブジェクトのプロキシを作成するのではなくそのグ
ループのローカル・オブジェクトを作成することができ
る)。
【0025】次に、クライアント21bのORBがサー
バ・グループ23に対して要求を行うとき、そのクライ
アントORBはまず、IPRにあるIPルータ22を含
むサーバ・プロセスに接触する(これがオブジェクト参
照によって指示されたサーバ・プロセスであるため)。
IPルータ22は次に(前述のように)作業負荷管理方
式を使用して、この特定のクライアント要求を処理する
ためにグループ内のどのオブジェクト・サーバを選択す
べきかを決定する。この作業負荷管理の決定は、TCP
/IPレベルで行われる。すなわち、IPルータ22は
IPアドレス(IP1〜IPn)でサーバ・グループ23
内の各オブジェクト・サーバ1〜nを調べ、サーバ・グ
ループ内の特定オブジェクト・サーバを選択する作業負
荷管理決定を行い、次に単にその要求をIPRから選択
されたオブジェクト・サーバのIPアドレスに転送する
だけである。ルータ22は、サーバ・グループ23内の
様々なオブジェクト・サーバのIPアドレスの間で作業
負荷バランスを行う。
バ・グループ23に対して要求を行うとき、そのクライ
アントORBはまず、IPRにあるIPルータ22を含
むサーバ・プロセスに接触する(これがオブジェクト参
照によって指示されたサーバ・プロセスであるため)。
IPルータ22は次に(前述のように)作業負荷管理方
式を使用して、この特定のクライアント要求を処理する
ためにグループ内のどのオブジェクト・サーバを選択す
べきかを決定する。この作業負荷管理の決定は、TCP
/IPレベルで行われる。すなわち、IPルータ22は
IPアドレス(IP1〜IPn)でサーバ・グループ23
内の各オブジェクト・サーバ1〜nを調べ、サーバ・グ
ループ内の特定オブジェクト・サーバを選択する作業負
荷管理決定を行い、次に単にその要求をIPRから選択
されたオブジェクト・サーバのIPアドレスに転送する
だけである。ルータ22は、サーバ・グループ23内の
様々なオブジェクト・サーバのIPアドレスの間で作業
負荷バランスを行う。
【0026】IPルータ22には、IBMの対話式ネッ
トワーク・ディスパッチャ(「Interactive Network Di
spatcher User's Guide」(IBM出版資料GC31−
8496−00に記載されている)のネットワーク・デ
ィスパッチャ機能を、ISS(対話式セッション・サポ
ート)作業負荷監視エージェントによって提供されるサ
ーバ・グループ内の各オブジェクト・サーバに関する作
業負荷情報と共に使用することができる。ISS作業負
荷監視エージェントは、オブジェクト・サーバを含む各
計算機上で実行することができる。このエージェント
は、構成可能コマンドを出して計算機の作業負荷を判断
する。たとえば、エージェントはそのエージェントが稼
働している計算機のCPU使用率や、そのサーバに対し
て行われた長期存続接続数を判断することができる。I
Pルータ22は、特定の時点でグループ内のどのオブジ
ェクト・サーバを選択するかに関する決定を行うために
この収集作業負荷データを使用する。さらに、対話式ネ
ットワークディスパッチャのIPルータは、所与のクラ
イアントIPアドレスからのすべての要求が同じサーバ
にリダイレクトされるように、「固定」ポートを持つよ
うに構成することができる。
トワーク・ディスパッチャ(「Interactive Network Di
spatcher User's Guide」(IBM出版資料GC31−
8496−00に記載されている)のネットワーク・デ
ィスパッチャ機能を、ISS(対話式セッション・サポ
ート)作業負荷監視エージェントによって提供されるサ
ーバ・グループ内の各オブジェクト・サーバに関する作
業負荷情報と共に使用することができる。ISS作業負
荷監視エージェントは、オブジェクト・サーバを含む各
計算機上で実行することができる。このエージェント
は、構成可能コマンドを出して計算機の作業負荷を判断
する。たとえば、エージェントはそのエージェントが稼
働している計算機のCPU使用率や、そのサーバに対し
て行われた長期存続接続数を判断することができる。I
Pルータ22は、特定の時点でグループ内のどのオブジ
ェクト・サーバを選択するかに関する決定を行うために
この収集作業負荷データを使用する。さらに、対話式ネ
ットワークディスパッチャのIPルータは、所与のクラ
イアントIPアドレスからのすべての要求が同じサーバ
にリダイレクトされるように、「固定」ポートを持つよ
うに構成することができる。
【0027】サーバ・オブジェクトのグループ内の作業
負荷管理を行うのに必要なステップについて、図5のフ
ローチャートを参照しながら以下に説明する。この例で
は、クライアント21bがサーバ・グループ23に対し
て要求を行う。
負荷管理を行うのに必要なステップについて、図5のフ
ローチャートを参照しながら以下に説明する。この例で
は、クライアント21bがサーバ・グループ23に対し
て要求を行う。
【0028】ステップ51で、クライアント21bのO
RBが、サーバ・グループ23によって前もってクライ
アント21bにエクスポートされたIORのIIOPプ
ロファイル41にアクセスする。クライアント21bの
ORBはこのIIOPプロファイル41のフィールド4
11で、IPルータ22がIPアドレスIPRにあるこ
とと、IPルータ22がPORTRでIIOP要求の着
信を監視していることを判断する。したがって、クライ
アント21のORBはIIOP要求を形成し、それを、
IIOPプロファイル41から得たこのTCP/IP接
続情報を使用してIPルータ22に送る。
RBが、サーバ・グループ23によって前もってクライ
アント21bにエクスポートされたIORのIIOPプ
ロファイル41にアクセスする。クライアント21bの
ORBはこのIIOPプロファイル41のフィールド4
11で、IPルータ22がIPアドレスIPRにあるこ
とと、IPルータ22がPORTRでIIOP要求の着
信を監視していることを判断する。したがって、クライ
アント21のORBはIIOP要求を形成し、それを、
IIOPプロファイル41から得たこのTCP/IP接
続情報を使用してIPルータ22に送る。
【0029】IPルータ22はこの要求を受け取ると、
作業負荷管理データを使用してグループ23内のオブジ
ェクト・サーバ23a〜23cのうちの1つを選択する
(ステップ52)。次に、IPルータ22はクライアン
ト21bのIIOP要求を選択されたオブジェクト・サ
ーバのIPアドレスにリダイレクトする(ステップ5
3)。選択されたオブジェクト・サーバは、その選択さ
れたオブジェクト・サーバ上で呼び出す特定のオブジェ
クト(これは図4に示すオブジェクト参照をエクスポー
トしたグループ23のメンバーである当該オブジェクト
・サーバ上のオブジェクトである)を識別するためにオ
ブジェクト・キー・フィールド413内のオブジェクト
・キーOK23を使用することになる。
作業負荷管理データを使用してグループ23内のオブジ
ェクト・サーバ23a〜23cのうちの1つを選択する
(ステップ52)。次に、IPルータ22はクライアン
ト21bのIIOP要求を選択されたオブジェクト・サ
ーバのIPアドレスにリダイレクトする(ステップ5
3)。選択されたオブジェクト・サーバは、その選択さ
れたオブジェクト・サーバ上で呼び出す特定のオブジェ
クト(これは図4に示すオブジェクト参照をエクスポー
トしたグループ23のメンバーである当該オブジェクト
・サーバ上のオブジェクトである)を識別するためにオ
ブジェクト・キー・フィールド413内のオブジェクト
・キーOK23を使用することになる。
【0030】オブジェクト・キーに作業負荷管理可能な
オブジェクトのグループのサーバ・グループ識別子が含
まれているため、選択されたサーバはオブジェクトがサ
ーバ・グループのメンバによってエクスポートされたこ
とを判断することができ、したがってリモート・オブジ
ェクトのプロキシではなくローカル・オブジェクトを作
成またはアクティブ化することができる。
オブジェクトのグループのサーバ・グループ識別子が含
まれているため、選択されたサーバはオブジェクトがサ
ーバ・グループのメンバによってエクスポートされたこ
とを判断することができ、したがってリモート・オブジ
ェクトのプロキシではなくローカル・オブジェクトを作
成またはアクティブ化することができる。
【0031】この第1の実施形態では、IPルータ22
がサーバ・グループ23内のサーバの1つを選択した後
は、IPルータ22は要求を選択されたサーバに転送す
るためにIIOPレベルで要求を形成する必要がないこ
とに留意されたい。IPルータ22は単にクライアント
要求を選択されたサーバのIPアドレスにリダイレクト
するだけでよく、要求をさらに処理してIIOPレベル
にしなくても済む。IPルータ22と選択されたサーバ
との間の通信はIPレベルである。その結果、着信II
OPクライアント要求がきわめて迅速かつ効率的に転送
される。選択されたサーバとの接続が確立された後は、
接続の存続期間の間、IIOP要求はそのサーバにリダ
イレクトされる。
がサーバ・グループ23内のサーバの1つを選択した後
は、IPルータ22は要求を選択されたサーバに転送す
るためにIIOPレベルで要求を形成する必要がないこ
とに留意されたい。IPルータ22は単にクライアント
要求を選択されたサーバのIPアドレスにリダイレクト
するだけでよく、要求をさらに処理してIIOPレベル
にしなくても済む。IPルータ22と選択されたサーバ
との間の通信はIPレベルである。その結果、着信II
OPクライアント要求がきわめて迅速かつ効率的に転送
される。選択されたサーバとの接続が確立された後は、
接続の存続期間の間、IIOP要求はそのサーバにリダ
イレクトされる。
【0032】図3の第2の実施形態では、サーバ・グル
ープのORBが作業負荷管理が必要なIORをエクスポ
ートする場合、要求側クライアントはIORによって動
的ドメイン・ネーム・サーバ(DNS)32を指示さ
れ、DNS32が作業負荷管理を行うことになる。
ープのORBが作業負荷管理が必要なIORをエクスポ
ートする場合、要求側クライアントはIORによって動
的ドメイン・ネーム・サーバ(DNS)32を指示さ
れ、DNS32が作業負荷管理を行うことになる。
【0033】具体的には、図6のIORのIIOPプロ
ファイル61は、フィールド611内のサーバ・グルー
プを識別するホスト名(たとえばSG1.1)と、サー
バとの接続中に使用するポート番号を指定するポート番
号フィールド612と、オブジェクト・キー・フィール
ド613とを含む。クライアント31cのORBがサー
バ・グループ33に要求を送りたい場合、図6のIOR
がアクセスされる。フィールド611に(IPアドレス
ではなく)ホスト名が格納されているため、ORBによ
ってホスト名SG1.1が動的DNS32に送られる
(第2の好ましい実施形態の動作を示す図7のフローチ
ャートのステップ71)。動的DNS32はサーバ・グ
ループ33のホスト名を受け取り、それを解釈してサー
バ・グループ33内のオブジェクト・サーバのうちの1
つのオブジェクト・サーバのIPアドレス(IP1〜I
Pn)のうちの動的に選択された1つのIPアドレスに
する(ステップ72)。すなわち、サーバ・グループ3
3内の各オブジェクト・サーバのIPアドレスを検討
し、動的DNS32内で、そのうちの1つを選択するこ
とによって作業負荷管理が行われる。
ファイル61は、フィールド611内のサーバ・グルー
プを識別するホスト名(たとえばSG1.1)と、サー
バとの接続中に使用するポート番号を指定するポート番
号フィールド612と、オブジェクト・キー・フィール
ド613とを含む。クライアント31cのORBがサー
バ・グループ33に要求を送りたい場合、図6のIOR
がアクセスされる。フィールド611に(IPアドレス
ではなく)ホスト名が格納されているため、ORBによ
ってホスト名SG1.1が動的DNS32に送られる
(第2の好ましい実施形態の動作を示す図7のフローチ
ャートのステップ71)。動的DNS32はサーバ・グ
ループ33のホスト名を受け取り、それを解釈してサー
バ・グループ33内のオブジェクト・サーバのうちの1
つのオブジェクト・サーバのIPアドレス(IP1〜I
Pn)のうちの動的に選択された1つのIPアドレスに
する(ステップ72)。すなわち、サーバ・グループ3
3内の各オブジェクト・サーバのIPアドレスを検討
し、動的DNS32内で、そのうちの1つを選択するこ
とによって作業負荷管理が行われる。
【0034】さらに具体的には、通常のDNSは入力デ
ータとしてホスト名を受け入れ、常に同じIPアドレス
を出力データとして出力する。しかし、動的DNSは入
力データとしてホスト名を受け取り、そのホスト名のも
とに格納されている複数のIPアドレス(サーバ・グル
ープ内の各サーバごとに1つのIPアドレス)を見つけ
出す。動的DNSは、これらのIPアドレスのそれぞれ
を検討し、選定された1つまたは複数の作業負荷方式に
従って、IPアドレスのうちの1つを選択し、クライア
ント31cのORBに出力して返す。動的DNSとして
IBMの対話式ネットワーク・ディスパッチャの対話式
セッション・サポート(ISS)機能を使用することが
できる。
ータとしてホスト名を受け入れ、常に同じIPアドレス
を出力データとして出力する。しかし、動的DNSは入
力データとしてホスト名を受け取り、そのホスト名のも
とに格納されている複数のIPアドレス(サーバ・グル
ープ内の各サーバごとに1つのIPアドレス)を見つけ
出す。動的DNSは、これらのIPアドレスのそれぞれ
を検討し、選定された1つまたは複数の作業負荷方式に
従って、IPアドレスのうちの1つを選択し、クライア
ント31cのORBに出力して返す。動的DNSとして
IBMの対話式ネットワーク・ディスパッチャの対話式
セッション・サポート(ISS)機能を使用することが
できる。
【0035】クライアント31cのORBが選択された
サーバ33bのIPアドレスを受け取ると、クライアン
ト31cはIIOP要求を形成し、IORのIIOPプ
ロファイルのフィールド612に指定されているポート
番号PORT1.1を使用してそれをオブジェクト・サー
バ33bに送る(ステップ73)。選択されたオブジェ
クト・サーバは、オブジェクト・キー・フィールド61
3内のオブジェクト・キーOK33を使用して、その選択
されたオブジェクト・サーバ上で呼び出す特定のオブジ
ェクト(これは図6に示すオブジェクト参照をエクスポ
ートしたグループ33のメンバーである当該オブジェク
ト・サーバ上のオブジェクトである)を識別する。
サーバ33bのIPアドレスを受け取ると、クライアン
ト31cはIIOP要求を形成し、IORのIIOPプ
ロファイルのフィールド612に指定されているポート
番号PORT1.1を使用してそれをオブジェクト・サー
バ33bに送る(ステップ73)。選択されたオブジェ
クト・サーバは、オブジェクト・キー・フィールド61
3内のオブジェクト・キーOK33を使用して、その選択
されたオブジェクト・サーバ上で呼び出す特定のオブジ
ェクト(これは図6に示すオブジェクト参照をエクスポ
ートしたグループ33のメンバーである当該オブジェク
ト・サーバ上のオブジェクトである)を識別する。
【0036】この第2の実施形態では、IIOPレベル
で行わなければならない要求の流れは1つしかなく、そ
れはクライアント31cからサーバ33bまでの要求の
流れである。動的DNS32とクライアント31cとの
間の通信はIPレベルである。その結果、クライアント
要求はサーバ・グループ内のサーバのうちの選択された
作業負荷バランス・サーバに極めて迅速かつ効率的に割
り当てられる。選択されたサーバとの接続が確立された
後は、IIOP要求はその接続の存続期間の間、当該サ
ーバにリダイレクトされる。
で行わなければならない要求の流れは1つしかなく、そ
れはクライアント31cからサーバ33bまでの要求の
流れである。動的DNS32とクライアント31cとの
間の通信はIPレベルである。その結果、クライアント
要求はサーバ・グループ内のサーバのうちの選択された
作業負荷バランス・サーバに極めて迅速かつ効率的に割
り当てられる。選択されたサーバとの接続が確立された
後は、IIOP要求はその接続の存続期間の間、当該サ
ーバにリダイレクトされる。
【0037】動的DNSの後ろに複数のIPルータを配
置することによって、上述の2つの実施形態を組み合わ
せることもできる。さらに、これらのIPルータは共通
の1組のバックエンド・サーバの前に配置されることに
なる。
置することによって、上述の2つの実施形態を組み合わ
せることもできる。さらに、これらのIPルータは共通
の1組のバックエンド・サーバの前に配置されることに
なる。
【0038】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0039】(1)オブジェクト指向クライアント/サ
ーバ・コンピューティング環境内でオブジェクト・サー
バのグループ内の作業負荷管理を行う方法であって、ク
ライアント要求を受け取るステップと、前記サーバ・グ
ループによって前もってエクスポートされた、作業負荷
管理ユニットを指すポインタにアクセスするステップ
と、前記サーバ・グループのうちの前記クライアント要
求を満たすために使用すべきサーバを選択するために、
前記クライアント要求時に前記作業負荷管理ユニットを
使用してインターネット・プロトコル(IP)レベルで
行われる作業負荷管理を行うステップと、前記クライア
ント要求を前記選択されたサーバに転送するステップと
を含む方法。 (2)前記ポインタがオブジェクト参照である、上記
(1)に記載の方法。 (3)前記オブジェクト参照がIPルータの名前または
IPアドレスを含むホスト名フィールドを有する、上記
(2)に記載の方法。 (4)前記オブジェクト参照が、前記サーバ・グループ
を識別する識別子を含むホスト名フィールドを有する、
上記(2)に記載の方法。 (5)前記作業負荷管理ユニットがIPルータである、
上記(1)に記載の方法。 (6)前記作業負荷管理ユニットが動的ドメイン・ネー
ム・サーバである、上記(1)に記載の方法。 (7)オブジェクト・サーバのグループが、何らかの作
業を行うためにグ前記グループを呼び出したい可能性の
あるクライアントに、インターネット・プロトコル(I
P)レベルで前記グループ内の作業負荷管理を行う作業
負荷管理ユニットを指すフィールドを有するオブジェク
ト参照をエクスポートする、作業負荷管理のために構成
されたオブジェクト・サーバのグループ。 (8)前記オブジェクト参照がIPルータの名前または
IPアドレスを含むホスト名フィールドを有する、上記
(7)に記載のオブジェクト・サーバのグループ。 (9)前記オブジェクト参照が前記サーバ・グループを
識別する識別子を含むホスト名フィールドを有する、上
記(7)に記載のオブジェクト・サーバのグループ。 (10)前記作業負荷管理ユニットが動的ドメイン・ネ
ーム・サーバである、上記(7)に記載のオブジェクト
・サーバのグループ。 (11)コンピュータ上で実行されると、オブジェクト
指向クライアント/サーバ・コンピューティング環境内
でオブジェクト・サーバのグループ内の作業負荷管理を
行う方法を実行する、コンピュータ可読記憶媒体上に記
憶されたコンピュータ・プログラム製品であって、前記
方法が、クライアント要求を受け取るステップと、前記
サーバ・グループによって前もってエクスポートされ、
作業負荷管理ユニットを指すポインタにアクセスするス
テップと、前記サーバ・グループのうちの前記クライア
ント要求を満たすために使用すべきサーバを選択するた
めに、前記クライアント要求時に前記作業負荷管理ユニ
ットを使用してインターネット・プロトコル(IP)レ
ベルで行われる作業負荷管理を行うステップと、前記ク
ライアント要求を前記選択されたサーバに転送するステ
ップとを含むコンピュータ・プログラム製品。 (12)オブジェクト指向クライアント/サーバ・コン
ピューティング環境内でオブジェクト・サーバのグルー
プ内の作業負荷管理を行う装置であって、クライアント
要求を受け取る手段と、作業負荷管理ユニットを指す、
サーバの前記グループによって前もってエクスポートさ
れたポインタにアクセスする手段と、前記要求を満たす
ために使用すべき前記グループのサーバを選択するため
に、前記クライアント要求時に前記作業負荷管理ユニッ
トを使用して、インターネット・プロトコル(IP)レ
ベルで行われる作業負荷管理を行う手段と、前記選択さ
れたサーバに前記クライアント要求を転送する手段とを
含む装置。
ーバ・コンピューティング環境内でオブジェクト・サー
バのグループ内の作業負荷管理を行う方法であって、ク
ライアント要求を受け取るステップと、前記サーバ・グ
ループによって前もってエクスポートされた、作業負荷
管理ユニットを指すポインタにアクセスするステップ
と、前記サーバ・グループのうちの前記クライアント要
求を満たすために使用すべきサーバを選択するために、
前記クライアント要求時に前記作業負荷管理ユニットを
使用してインターネット・プロトコル(IP)レベルで
行われる作業負荷管理を行うステップと、前記クライア
ント要求を前記選択されたサーバに転送するステップと
を含む方法。 (2)前記ポインタがオブジェクト参照である、上記
(1)に記載の方法。 (3)前記オブジェクト参照がIPルータの名前または
IPアドレスを含むホスト名フィールドを有する、上記
(2)に記載の方法。 (4)前記オブジェクト参照が、前記サーバ・グループ
を識別する識別子を含むホスト名フィールドを有する、
上記(2)に記載の方法。 (5)前記作業負荷管理ユニットがIPルータである、
上記(1)に記載の方法。 (6)前記作業負荷管理ユニットが動的ドメイン・ネー
ム・サーバである、上記(1)に記載の方法。 (7)オブジェクト・サーバのグループが、何らかの作
業を行うためにグ前記グループを呼び出したい可能性の
あるクライアントに、インターネット・プロトコル(I
P)レベルで前記グループ内の作業負荷管理を行う作業
負荷管理ユニットを指すフィールドを有するオブジェク
ト参照をエクスポートする、作業負荷管理のために構成
されたオブジェクト・サーバのグループ。 (8)前記オブジェクト参照がIPルータの名前または
IPアドレスを含むホスト名フィールドを有する、上記
(7)に記載のオブジェクト・サーバのグループ。 (9)前記オブジェクト参照が前記サーバ・グループを
識別する識別子を含むホスト名フィールドを有する、上
記(7)に記載のオブジェクト・サーバのグループ。 (10)前記作業負荷管理ユニットが動的ドメイン・ネ
ーム・サーバである、上記(7)に記載のオブジェクト
・サーバのグループ。 (11)コンピュータ上で実行されると、オブジェクト
指向クライアント/サーバ・コンピューティング環境内
でオブジェクト・サーバのグループ内の作業負荷管理を
行う方法を実行する、コンピュータ可読記憶媒体上に記
憶されたコンピュータ・プログラム製品であって、前記
方法が、クライアント要求を受け取るステップと、前記
サーバ・グループによって前もってエクスポートされ、
作業負荷管理ユニットを指すポインタにアクセスするス
テップと、前記サーバ・グループのうちの前記クライア
ント要求を満たすために使用すべきサーバを選択するた
めに、前記クライアント要求時に前記作業負荷管理ユニ
ットを使用してインターネット・プロトコル(IP)レ
ベルで行われる作業負荷管理を行うステップと、前記ク
ライアント要求を前記選択されたサーバに転送するステ
ップとを含むコンピュータ・プログラム製品。 (12)オブジェクト指向クライアント/サーバ・コン
ピューティング環境内でオブジェクト・サーバのグルー
プ内の作業負荷管理を行う装置であって、クライアント
要求を受け取る手段と、作業負荷管理ユニットを指す、
サーバの前記グループによって前もってエクスポートさ
れたポインタにアクセスする手段と、前記要求を満たす
ために使用すべき前記グループのサーバを選択するため
に、前記クライアント要求時に前記作業負荷管理ユニッ
トを使用して、インターネット・プロトコル(IP)レ
ベルで行われる作業負荷管理を行う手段と、前記選択さ
れたサーバに前記クライアント要求を転送する手段とを
含む装置。
【図1】本発明を適用することができる環境における、
オブジェクト技法を使用する周知の異種クライアント・
サーバ・アーキテクチャを示すブロック図である。
オブジェクト技法を使用する周知の異種クライアント・
サーバ・アーキテクチャを示すブロック図である。
【図2】本発明の第1の好ましい実施形態のソフトウェ
ア要素を示すブロック図である。
ア要素を示すブロック図である。
【図3】本発明の第2の好ましい実施形態のソフトウェ
ア要素を示すブロック図である。
ア要素を示すブロック図である。
【図4】図2の第1の好ましい実施形態によるオブジェ
クト参照のIIOPプロファイルの一部のフィールドを
示す図である。
クト参照のIIOPプロファイルの一部のフィールドを
示す図である。
【図5】図2および図4の第1の実施形態の動作中に行
われるステップを示すフローチャートである。
われるステップを示すフローチャートである。
【図6】図3の第2の実施形態によるオブジェクト参照
のIIOPプロファイルの一部のフィールドを示す図で
ある。
のIIOPプロファイルの一部のフィールドを示す図で
ある。
【図7】図3および図6の第2の好ましい実施形態の動
作中に行われるステップを示すフローチャートである。
作中に行われるステップを示すフローチャートである。
10 クライアント・コンピュータ 20 サーバ・コンピュータ 30 インタフェース 40 第1のアプリケーション・プログラム 50 第1の論理手段 60 記憶装置 70 オブジェクト・クラスの枠組み 80 接続手段 90 第2の論理手段 100 サービス・アプリケーション・プログラム 110 記憶装置 120 オブジェクト・クラスの枠組み 21a クライアント 22 IPルータ 23 サーバ・グループ 23a オブジェクト・サーバ 31a クライアント 32 動的DNS 33 サーバ・グループ 33a オブジェクト・サーバ
フロントページの続き (72)発明者 ドナ・エンガー・ティン・ディレンバーガ ー アメリカ合衆国10598 ニューヨーク州ヨ ークタウン・ハイツ モーニング・ビュ ー・ドライブ 1747 (72)発明者 グリン・ノーミントン イギリス SO23 7ES ハンプシャー 州 ウィンチェスター コリー・クローズ 18
Claims (12)
- 【請求項1】オブジェクト指向クライアント/サーバ・
コンピューティング環境内でオブジェクト・サーバのグ
ループ内の作業負荷管理を行う方法であって、 クライアント要求を受け取るステップと、 前記サーバ・グループによって前もってエクスポートさ
れた、作業負荷管理ユニットを指すポインタにアクセス
するステップと、 前記サーバ・グループのうちの前記クライアント要求を
満たすために使用すべきサーバを選択するために、前記
クライアント要求時に前記作業負荷管理ユニットを使用
してインターネット・プロトコル(IP)レベルで行わ
れる作業負荷管理を行うステップと、 前記クライアント要求を前記選択されたサーバに転送す
るステップとを含む方法。 - 【請求項2】前記ポインタがオブジェクト参照である、
請求項1に記載の方法。 - 【請求項3】前記オブジェクト参照がIPルータの名前
またはIPアドレスを含むホスト名フィールドを有す
る、請求項2に記載の方法。 - 【請求項4】前記オブジェクト参照が、前記サーバ・グ
ループを識別する識別子を含むホスト名フィールドを有
する、請求項2に記載の方法。 - 【請求項5】前記作業負荷管理ユニットがIPルータで
ある、請求項1に記載の方法。 - 【請求項6】前記作業負荷管理ユニットが動的ドメイン
・ネーム・サーバである、請求項1に記載の方法。 - 【請求項7】オブジェクト・サーバのグループが、何ら
かの作業を行うために前記グループを呼び出したい可能
性のあるクライアントに、インターネット・プロトコル
(IP)レベルで前記グループ内の作業負荷管理を行う
作業負荷管理ユニットを指すフィールドを有するオブジ
ェクト参照をエクスポートする、作業負荷管理のために
構成されたオブジェクト・サーバのグループ。 - 【請求項8】前記オブジェクト参照がIPルータの名前
またはIPアドレスを含むホスト名フィールドを有す
る、請求項7に記載のオブジェクト・サーバのグルー
プ。 - 【請求項9】前記オブジェクト参照が前記サーバ・グル
ープを識別する識別子を含むホスト名フィールドを有す
る、請求項7に記載のオブジェクト・サーバのグルー
プ。 - 【請求項10】前記作業負荷管理ユニットが動的ドメイ
ン・ネーム・サーバである、請求項7に記載のオブジェ
クト・サーバのグループ。 - 【請求項11】コンピュータ上で実行されると、オブジ
ェクト指向クライアント/サーバ・コンピューティング
環境内でオブジェクト・サーバのグループ内の作業負荷
管理を行う方法を実行する、コンピュータ可読記憶媒体
上に記憶されたコンピュータ・プログラム製品であっ
て、前記方法が、 クライアント要求を受け取るステップと、 前記サーバ・グループによって前もってエクスポートさ
れ、作業負荷管理ユニットを指すポインタにアクセスす
るステップと、 前記サーバ・グループのうちの前記クライアント要求を
満たすために使用すべきサーバを選択するために、前記
クライアント要求時に前記作業負荷管理ユニットを使用
してインターネット・プロトコル(IP)レベルで行わ
れる作業負荷管理を行うステップと、 前記クライアント要求を前記選択されたサーバに転送す
るステップとを含むコンピュータ・プログラム製品。 - 【請求項12】オブジェクト指向クライアント/サーバ
・コンピューティング環境内でオブジェクト・サーバの
グループ内の作業負荷管理を行う装置であって、 クライアント要求を受け取る手段と、 作業負荷管理ユニットを指す、サーバの前記グループに
よって前もってエクスポートされたポインタにアクセス
する手段と、 前記要求を満たすために使用すべき前記グループのサー
バを選択するために、前記クライアント要求時に前記作
業負荷管理ユニットを使用して、インターネット・プロ
トコル(IP)レベルで行われる作業負荷管理を行う手
段と、 前記選択されたサーバに前記クライアント要求を転送す
る手段とを含む装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/025904 | 1998-02-19 | ||
US09/025,904 US6003083A (en) | 1998-02-19 | 1998-02-19 | Workload management amongst server objects in a client/server network with distributed objects |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11312153A true JPH11312153A (ja) | 1999-11-09 |
Family
ID=21828691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11032483A Pending JPH11312153A (ja) | 1998-02-19 | 1999-02-10 | オブジェクト・サ―バ間の作業負荷管理方法および装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6003083A (ja) |
JP (1) | JPH11312153A (ja) |
KR (1) | KR100330936B1 (ja) |
CN (1) | CN1205565C (ja) |
GB (1) | GB2334604B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010057769A (ko) * | 1999-12-23 | 2001-07-05 | 오길록 | 웹 환경에서 자바 서블릿을 이용한 동질 자바 응용서버들의 부하 분산방법 |
JP2002269059A (ja) * | 2001-03-08 | 2002-09-20 | Ntt Comware Corp | クライアントサーバシステム、中継サーバ、クライアント端末装置の接続先サーバ決定方法 |
Families Citing this family (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3494562B2 (ja) * | 1997-10-15 | 2004-02-09 | 株式会社東芝 | ネットワーク管理システム |
US6088805A (en) * | 1998-02-13 | 2000-07-11 | International Business Machines Corporation | Systems, methods and computer program products for authenticating client requests with client certificate information |
US6339826B2 (en) * | 1998-05-05 | 2002-01-15 | International Business Machines Corp. | Client-server system for maintaining a user desktop consistent with server application user access permissions |
US6163810A (en) * | 1998-06-02 | 2000-12-19 | At&T Corp. | System and method for managing the exchange of information between multicast and unicast hosts |
JP3786328B2 (ja) * | 1998-07-27 | 2006-06-14 | 株式会社日立製作所 | サーバおよび通信制御方法 |
US6397203B1 (en) * | 1998-09-30 | 2002-05-28 | International Business Machines Corporation | Defining object classes to match corresponding specialized data types in a relational database |
EP1129401A1 (en) * | 1998-10-16 | 2001-09-05 | Objectera, Inc. | Connection concentrator for distributed object systems |
US6731627B1 (en) * | 1998-11-17 | 2004-05-04 | Cisco Technology, Inc. | Virtual loop carrier system |
US6907609B1 (en) * | 1999-02-01 | 2005-06-14 | Iona Technologies Plc. | Object request dispatch using matching of a segmented object key |
DE60040846D1 (de) * | 1999-02-26 | 2009-01-02 | Henry Haugland | Massenerzeugung individualer virtueller servern, vertueller webseiten sowie virtueller webobjekten |
KR100609552B1 (ko) * | 1999-10-11 | 2006-08-04 | 엘지엔시스(주) | 금융업무 분산처리장치 및 분산처리방법 |
US6985940B1 (en) * | 1999-11-12 | 2006-01-10 | International Business Machines Corporation | Performance testing of server systems |
US7062556B1 (en) * | 1999-11-22 | 2006-06-13 | Motorola, Inc. | Load balancing method in a communication network |
US6970932B1 (en) | 1999-12-14 | 2005-11-29 | Microsoft Corporation | Non-delegable client requests to servers storing local information only |
US6668275B1 (en) * | 1999-12-17 | 2003-12-23 | Honeywell International Inc. | System and method for multiprocessor management |
US7076650B1 (en) * | 1999-12-24 | 2006-07-11 | Mcafee, Inc. | System and method for selective communication scanning at a firewall and a network node |
CN1115839C (zh) * | 2000-01-28 | 2003-07-23 | 国际商业机器公司 | 均衡镜象服务器负载的方法及装置 |
USRE42153E1 (en) * | 2000-03-30 | 2011-02-15 | Hubbard Edward A | Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures |
US7254607B2 (en) * | 2000-03-30 | 2007-08-07 | United Devices, Inc. | Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures |
US8010703B2 (en) | 2000-03-30 | 2011-08-30 | Prashtama Wireless Llc | Data conversion services and associated distributed processing system |
US7209959B1 (en) | 2000-04-04 | 2007-04-24 | Wk Networks, Inc. | Apparatus, system, and method for communicating to a network through a virtual domain providing anonymity to a client communicating on the network |
US7062541B1 (en) | 2000-04-27 | 2006-06-13 | International Business Machines Corporation | System and method for transferring related data objects in a distributed data storage environment |
JP4292693B2 (ja) * | 2000-07-07 | 2009-07-08 | 株式会社日立製作所 | 計算機資源分割装置および資源分割方法 |
CN1249576C (zh) * | 2000-07-27 | 2006-04-05 | Bea系统公司 | 用于对请求进行集中和负载均衡的系统和方法 |
US20020042839A1 (en) * | 2000-10-10 | 2002-04-11 | Christopher Peiffer | HTTP multiplexor/demultiplexor |
US7383355B1 (en) * | 2000-11-01 | 2008-06-03 | Sun Microsystems, Inc. | Systems and methods for providing centralized management of heterogeneous distributed enterprise application integration objects |
US8583745B2 (en) * | 2000-11-16 | 2013-11-12 | Opendesign, Inc. | Application platform |
US7543304B2 (en) * | 2000-12-14 | 2009-06-02 | Borland Software Corporation | Method for efficient location of corba objects based on an unmarshaled object key in a request |
US6961939B2 (en) * | 2001-02-05 | 2005-11-01 | Sun Microsystems, Inc. | Techniques for transmission of message fragments between object request brokers |
US7809854B2 (en) * | 2002-02-12 | 2010-10-05 | Open Design, Inc. | Logical routing system |
US20030055969A1 (en) * | 2001-09-17 | 2003-03-20 | International Business Machines Corporation | System and method for performing power management on a distributed system |
US7065047B2 (en) * | 2001-10-22 | 2006-06-20 | Pctel, Inc. | System and method of providing computer networking |
CA2372092C (en) * | 2002-02-15 | 2010-04-06 | Cognos Incorporated | A queuing model for a plurality of servers |
US7099816B2 (en) * | 2002-06-17 | 2006-08-29 | International Business Machines Corporation | Method, system and article of manufacture for an analytic modeling technique for handling multiple objectives |
US20040006622A1 (en) * | 2002-07-03 | 2004-01-08 | Burkes Don L. | Optimized process for balancing load for data mirroring |
US20040122950A1 (en) * | 2002-12-20 | 2004-06-24 | Morgan Stephen Paul | Method for managing workloads in an autonomic computer system for improved performance |
KR20040074752A (ko) * | 2003-02-18 | 2004-08-26 | 엘지엔시스(주) | 금융업무 서버시스템의 부하 분산장치 및 분산방법 |
US20040260745A1 (en) * | 2003-06-18 | 2004-12-23 | Gage Christopher A. S. | Load balancer performance using affinity modification |
US7475108B2 (en) * | 2003-06-26 | 2009-01-06 | International Business Machines Corporation | Slow-dynamic load balancing method |
US7580905B2 (en) * | 2003-12-15 | 2009-08-25 | Intel Corporation | Adaptive configuration of platform |
US20050216908A1 (en) * | 2004-03-25 | 2005-09-29 | Keohane Susann M | Assigning computational processes in a computer system to workload management classes |
CA2561100A1 (en) * | 2004-03-26 | 2005-10-20 | Siemens Medical Solutions Health Services Corporation | A system supporting exchange of medical data and images between different executable applications |
CN1728133B (zh) * | 2004-07-27 | 2010-04-28 | 武征 | 面向对象的信息服务器、其制作方法及浏览器 |
US8321573B2 (en) * | 2004-09-17 | 2012-11-27 | Sanyo Electric Co., Ltd. | Communications terminal with optimum send interval |
US8019636B2 (en) * | 2004-09-28 | 2011-09-13 | International Business Machines Corporation | Method, system and program product for planning and managing a call center study |
US8311822B2 (en) | 2004-11-02 | 2012-11-13 | Nuance Communications, Inc. | Method and system of enabling intelligent and lightweight speech to text transcription through distributed environment |
US7636325B2 (en) * | 2004-12-07 | 2009-12-22 | Hewlett-Packard Development Company, L.P. | Determining highest workloads for nodes in an overlay network |
US9160792B2 (en) * | 2005-04-05 | 2015-10-13 | International Business Machines Corporation | On-demand global server load balancing system and method of use |
KR100654391B1 (ko) * | 2005-04-22 | 2006-12-06 | 이광훈 | 클러스터 시스템 제어 방법 및 상기 제어 방법을 수행하는컴퓨터 판독 가능한 기록 매체를 포함하는 클러스터 시스템 |
CN100421399C (zh) * | 2005-05-27 | 2008-09-24 | 腾讯科技(深圳)有限公司 | 一种分布式群组通信管理系统以及创建群组的方法 |
US8539075B2 (en) | 2006-04-21 | 2013-09-17 | International Business Machines Corporation | On-demand global server load balancing system and method of use |
US7756973B2 (en) * | 2006-04-27 | 2010-07-13 | International Business Machines Corporation | Identifying a configuration for an application in a production environment |
US9846846B2 (en) | 2006-11-14 | 2017-12-19 | International Business Machines Corporation | Method and system for analyzing contact studies |
KR100825963B1 (ko) * | 2006-12-08 | 2008-04-29 | 주식회사 타오네트웍스 | 분산 흐름 제어 시스템 |
US8332520B2 (en) | 2007-01-19 | 2012-12-11 | International Business Machines Corporation | Web server for managing session and method thereof |
JP4722973B2 (ja) * | 2008-08-12 | 2011-07-13 | 株式会社日立製作所 | リクエスト処理方法及び計算機システム |
US8687639B2 (en) * | 2009-06-04 | 2014-04-01 | Nvidia Corporation | Method and system for ordering posted packets and non-posted packets transfer |
US20110063306A1 (en) * | 2009-09-16 | 2011-03-17 | Nvidia Corporation | CO-PROCESSING TECHNIQUES ON HETEROGENEOUS GPUs INCLUDING IDENTIFYING ONE GPU AS A NON-GRAPHICS DEVICE |
US8532098B2 (en) * | 2009-11-30 | 2013-09-10 | Nvidia Corporation | System and method for virtual channel communication |
US9176909B2 (en) * | 2009-12-11 | 2015-11-03 | Nvidia Corporation | Aggregating unoccupied PCI-e links to provide greater bandwidth |
US9331869B2 (en) * | 2010-03-04 | 2016-05-03 | Nvidia Corporation | Input/output request packet handling techniques by a device specific kernel mode driver |
US8726284B2 (en) * | 2010-06-10 | 2014-05-13 | Microsoft Corporation | Managing requests based on request groups |
US9171350B2 (en) | 2010-10-28 | 2015-10-27 | Nvidia Corporation | Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up |
US9330031B2 (en) | 2011-12-09 | 2016-05-03 | Nvidia Corporation | System and method for calibration of serial links using a serial-to-parallel loopback |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU628753B2 (en) * | 1990-08-14 | 1992-09-17 | Digital Equipment Corporation | Method and apparatus for implementing server functions in a distributed heterogeneous environment |
GB2288477A (en) * | 1994-04-05 | 1995-10-18 | Ibm | Communications system for exchanging data between computers in a network. |
GB2305270A (en) * | 1995-09-15 | 1997-04-02 | Ibm | Bridge for a client-server environment |
US5799149A (en) * | 1996-06-17 | 1998-08-25 | International Business Machines Corporation | System partitioning for massively parallel processors |
GB2320594A (en) * | 1996-12-20 | 1998-06-24 | Ibm | Dispatching client method calls to parallel execution threads within a server |
US5790425A (en) * | 1997-02-19 | 1998-08-04 | Sun Microsystems, Inc. | Generic server benchmarking framework in a client-server environment |
-
1998
- 1998-02-19 US US09/025,904 patent/US6003083A/en not_active Expired - Lifetime
- 1998-11-26 CN CNB981228070A patent/CN1205565C/zh not_active Expired - Lifetime
- 1998-12-10 GB GB9827100A patent/GB2334604B/en not_active Expired - Lifetime
-
1999
- 1999-01-15 KR KR1019990001028A patent/KR100330936B1/ko not_active IP Right Cessation
- 1999-02-10 JP JP11032483A patent/JPH11312153A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010057769A (ko) * | 1999-12-23 | 2001-07-05 | 오길록 | 웹 환경에서 자바 서블릿을 이용한 동질 자바 응용서버들의 부하 분산방법 |
JP2002269059A (ja) * | 2001-03-08 | 2002-09-20 | Ntt Comware Corp | クライアントサーバシステム、中継サーバ、クライアント端末装置の接続先サーバ決定方法 |
Also Published As
Publication number | Publication date |
---|---|
KR100330936B1 (ko) | 2002-04-01 |
KR19990072264A (ko) | 1999-09-27 |
CN1226702A (zh) | 1999-08-25 |
GB2334604A (en) | 1999-08-25 |
CN1205565C (zh) | 2005-06-08 |
US6003083A (en) | 1999-12-14 |
GB9827100D0 (en) | 1999-02-03 |
GB2334604B (en) | 2002-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH11312153A (ja) | オブジェクト・サ―バ間の作業負荷管理方法および装置 | |
US6014700A (en) | Workload management in a client-server network with distributed objects | |
JP3853593B2 (ja) | ウェブアプリケーションサーバにおいて拡張可能な認証機構を実現するための方法および装置 | |
US8424026B1 (en) | Execution of applications distributed across a plurality of computing devices | |
US11848998B2 (en) | Cross-cloud workload identity virtualization | |
US6950874B2 (en) | Method and system for management of resource leases in an application framework system | |
US7647523B2 (en) | Dynamic binding and fail-over of comparable web service instances in a services grid | |
US7747451B2 (en) | Dynamic grid paths | |
US20060048157A1 (en) | Dynamic grid job distribution from any resource within a grid environment | |
US20020156900A1 (en) | Protocol independent control module | |
US20030126196A1 (en) | System for optimizing the invocation of computer-based services deployed in a distributed computing environment | |
WO2004031975A1 (en) | A translating switch and method | |
JPH0962523A (ja) | 分散演算環境におけるイベント管理方法及びシステム | |
AU7679396A (en) | Registry communications middleware | |
JPH04230567A (ja) | 計算システムのための分散型構成プロフィル | |
US9848060B2 (en) | Combining disparate applications into a single workload group | |
US9479599B2 (en) | Reroute of a web service in a web based application | |
Yang et al. | Design and Implementation of an Administration System for Distributed Web Server. | |
CN115516842A (zh) | 编排代理服务 | |
US20240223674A1 (en) | Data Streaming Service with Virtualized Broker Clusters | |
Sommers et al. | Cluster-based computing with active, persistent objects on the web | |
Newhouse et al. | Resource-controlled remote execution to enhance wireless network applications | |
Mukhopadhyay | An approach to realizing interoperability using APPC | |
US20020178269A1 (en) | Method for a distributed system for the provision of at least one service, and client, client-service management module and database for the same | |
Newhouse et al. | Wireless Network Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060414 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060420 |