JPH1153326A - 分散処理システム、クライアントノード、サーバノードおよび分散処理方法 - Google Patents
分散処理システム、クライアントノード、サーバノードおよび分散処理方法Info
- Publication number
- JPH1153326A JPH1153326A JP9204144A JP20414497A JPH1153326A JP H1153326 A JPH1153326 A JP H1153326A JP 9204144 A JP9204144 A JP 9204144A JP 20414497 A JP20414497 A JP 20414497A JP H1153326 A JPH1153326 A JP H1153326A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- node
- client
- server node
- predetermined
- 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
-
- 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
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/509—Offload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/549—Remote execution
Abstract
(57)【要約】
【課題】クライアント・サーバシステムにおいて、クラ
イアントノードとサーバノートとの間で適切に負荷分散
を行なう。 【解決手段】クライアントノードは、ユーザーの操作に
応じて、サーバノードに対して処理要求信号を送信す
る。サーバノードは、処理要求信号を受信すると、オペ
レーションシステムからCPU使用率を取得し、CPU
使用率が設定値以下である場合には、要求された処理を
行い、処理結果をクライアントノードに対して送信す
る。逆に、CPU使用率が設定値以上である場合には、
サーバノードは、要求された処理をクライアントノード
に実行させる旨の応答信号を送信する。応答信号に対し
て、クライアントノードがアプリケーションプログラム
の送信を要求すると、サーバノードは、要求された処理
を行うためのアプリケーションプログラムをクライアン
トノードに送信する。クライアントノードは、アプリケ
ーションプログラムを実行して処理結果を得る。
イアントノードとサーバノートとの間で適切に負荷分散
を行なう。 【解決手段】クライアントノードは、ユーザーの操作に
応じて、サーバノードに対して処理要求信号を送信す
る。サーバノードは、処理要求信号を受信すると、オペ
レーションシステムからCPU使用率を取得し、CPU
使用率が設定値以下である場合には、要求された処理を
行い、処理結果をクライアントノードに対して送信す
る。逆に、CPU使用率が設定値以上である場合には、
サーバノードは、要求された処理をクライアントノード
に実行させる旨の応答信号を送信する。応答信号に対し
て、クライアントノードがアプリケーションプログラム
の送信を要求すると、サーバノードは、要求された処理
を行うためのアプリケーションプログラムをクライアン
トノードに送信する。クライアントノードは、アプリケ
ーションプログラムを実行して処理結果を得る。
Description
【0001】
【産業上の利用分野】本発明は、それぞれ1台以上のク
ライアントマシン(クライアントノード)とサーバマシ
ン(サーバノード)とがネットワークを介して接続され
た分散処理システムと、この分散処理システムを構成す
るクライアントノードおよびサーバノードと、この分散
処理システムにおける分散処理方法とに関する。
ライアントマシン(クライアントノード)とサーバマシ
ン(サーバノード)とがネットワークを介して接続され
た分散処理システムと、この分散処理システムを構成す
るクライアントノードおよびサーバノードと、この分散
処理システムにおける分散処理方法とに関する。
【0002】
【従来の技術】インターネット等のネットワークを介し
てサーバノードとクライアントノードと(これらを総称
して単にノードとも記す)を接続し、分散処理を行なう
クライアント・サーバシステムが用いられている。
てサーバノードとクライアントノードと(これらを総称
して単にノードとも記す)を接続し、分散処理を行なう
クライアント・サーバシステムが用いられている。
【0003】このようなクライアント・サーバシステム
において、サーバノードがクライアントノードに対して
処理(タスク)を依頼し、処理結果を得るためには、例
えば、全ての処理をサーバノード側で実行し、処理結果
をクライアントノードに返す方法(第1の方法)と、サ
ーバノードからクライアントノードにネットワークを介
して処理用のプログラム(アプリケーションプログラ
ム)を送り、クライアントノード側でアプリケーション
プログラムを実行して処理結果を得る方法(第2の方
法)とがある。
において、サーバノードがクライアントノードに対して
処理(タスク)を依頼し、処理結果を得るためには、例
えば、全ての処理をサーバノード側で実行し、処理結果
をクライアントノードに返す方法(第1の方法)と、サ
ーバノードからクライアントノードにネットワークを介
して処理用のプログラム(アプリケーションプログラ
ム)を送り、クライアントノード側でアプリケーション
プログラムを実行して処理結果を得る方法(第2の方
法)とがある。
【0004】しかしながら、第1の方法をとると、全て
の処理をサーバノード側で行なう必要があるので、サー
バノードの処理負荷が過大になり、クライアントノード
に処理結果を返すまでの応答時間が長くなってしまう。
一方、第2の方法をとると、一般にクライアントノード
のハードウェア的およびソフトウェア的な処理能力は、
サーバノードの処理能力に比べて低いために、やはり、
処理結果を得るまでの応答時間が長くなってしまう。
の処理をサーバノード側で行なう必要があるので、サー
バノードの処理負荷が過大になり、クライアントノード
に処理結果を返すまでの応答時間が長くなってしまう。
一方、第2の方法をとると、一般にクライアントノード
のハードウェア的およびソフトウェア的な処理能力は、
サーバノードの処理能力に比べて低いために、やはり、
処理結果を得るまでの応答時間が長くなってしまう。
【0005】かかる不具合を回避するためには、ノード
間で処理負荷の分散を図る必要がある。かかるクライア
ント・サーバシステムにおける処理負荷の分散のために
は、例えば、特開平4−80858号公報(文献1)、
特開平5−128029号公報(文献2)および特開平
9−91231号公報(文献3)に開示された負荷分散
方法がある。
間で処理負荷の分散を図る必要がある。かかるクライア
ント・サーバシステムにおける処理負荷の分散のために
は、例えば、特開平4−80858号公報(文献1)、
特開平5−128029号公報(文献2)および特開平
9−91231号公報(文献3)に開示された負荷分散
方法がある。
【0006】しかしながら、文献1に開示された負荷分
散方法は、単に、メモリ上に必要な作業領域を確保して
からアプリケーションプログラムをサーバノードからク
ライアントノードに転送し、実行するだけなので、上記
第2の方法をとった場合と同様な不具合が生じてしま
う。
散方法は、単に、メモリ上に必要な作業領域を確保して
からアプリケーションプログラムをサーバノードからク
ライアントノードに転送し、実行するだけなので、上記
第2の方法をとった場合と同様な不具合が生じてしま
う。
【0007】また、文献2に開示された負荷分散方法
は、複数のクライアントノードの内、アプリケーション
プログラムの実行に最適な1つを選択し、選択したクラ
イアントノードにアプリケーションプログラムを転送し
て実行させるので、文献1に開示された負荷分散方法と
同様に、上記第2の方法をとった場合と同様な不具合が
生じてしまう。
は、複数のクライアントノードの内、アプリケーション
プログラムの実行に最適な1つを選択し、選択したクラ
イアントノードにアプリケーションプログラムを転送し
て実行させるので、文献1に開示された負荷分散方法と
同様に、上記第2の方法をとった場合と同様な不具合が
生じてしまう。
【0008】また、文献3に開示された負荷分散方法に
おいては、アプリケーションプログラムそれぞれを実行
可能なノードを予め登録しておく必要があるので、既存
のクライアント・サーバシステム応用する場合に、大幅
なシステム変更が必要になり、多くの投資が必要になっ
てしまう。
おいては、アプリケーションプログラムそれぞれを実行
可能なノードを予め登録しておく必要があるので、既存
のクライアント・サーバシステム応用する場合に、大幅
なシステム変更が必要になり、多くの投資が必要になっ
てしまう。
【0009】
【発明が解決しようとする課題】本発明は、上述した従
来技術の問題点に鑑みてなされたものであり、クライア
ントノードとサーバノードとがネットワークを介して通
信を行なうクライアント・サーバシステムにおいて、ク
ライアントノードとサーバノートとの間で適切に負荷分
散を行なうことにより、システム全体としてクライアン
トノードが処理要求を出してから処理結果を得るまでの
応答時間を最短にすることができる分散処理システム
と、かかる分散処理システムにおいて用いられるクライ
アントノード、サーバノードおよび分散処理方法とを提
供することを目的とする。
来技術の問題点に鑑みてなされたものであり、クライア
ントノードとサーバノードとがネットワークを介して通
信を行なうクライアント・サーバシステムにおいて、ク
ライアントノードとサーバノートとの間で適切に負荷分
散を行なうことにより、システム全体としてクライアン
トノードが処理要求を出してから処理結果を得るまでの
応答時間を最短にすることができる分散処理システム
と、かかる分散処理システムにおいて用いられるクライ
アントノード、サーバノードおよび分散処理方法とを提
供することを目的とする。
【0010】また、本発明は、大幅なシステム変更およ
び多額の投資なしに、既存のクライアント・サーバシス
テムに適応することができ、しかも、応答時間の短縮効
果が大きい分散処理システムと、かかる分散処理システ
ムにおいて用いられるクライアントノード、サーバノー
ドおよび分散処理方法とを提供することを目的とする。
び多額の投資なしに、既存のクライアント・サーバシス
テムに適応することができ、しかも、応答時間の短縮効
果が大きい分散処理システムと、かかる分散処理システ
ムにおいて用いられるクライアントノード、サーバノー
ドおよび分散処理方法とを提供することを目的とする。
【0011】
【課題を達成するための手段】上記目的を達成するため
に、本発明にかかる分散処理システムは、相互に通信を
行なうクライアントノードとサーバノードとをそれぞれ
1つ以上、含む分散処理システムであって、前記クライ
アントノードはそれぞれ、前記サーバノードに対して所
定の処理を要求する処理要求手段と、前記所定の処理の
要求に応じて前記サーバノードから返された応答信号の
内容に従って、要求した前記所定の処理用のプログラム
を前記サーバノードから受け入れて実行する処理プログ
ラム実行手段と、前記サーバノードから受け入れた前記
プログラムの実行結果、または、前記サーバノードによ
る前記所定の処理の結果を受け入れて、前記所定の処理
の結果を取得する処理結果取得手段とを有し、前記サー
バノードそれぞれは、当該サーバノードの処理量を測定
する処理量測定手段と、測定した当該サーバノードの処
理量に応じて、前記所定の処理を要求した前記クライア
ントノードそれぞれに対して、少なくとも、前記所定の
処理を実行させる前記応答信号を返す応答手段と、前記
所定の処理を要求した前記クライアントノードそれぞれ
に前記所定の処理を実行させる場合に、前記所定の処理
用のプログラムを前記クライアントノードそれぞれに送
信するプログラム送信手段と、前記所定の処理を要求し
た前記クライアントノードそれぞれに前記所定の処理用
を実行させない場合に、要求された前記所定の処理を実
行し、実行結果を前記クライアントノードそれぞれに送
信する処理実行手段とを有する。
に、本発明にかかる分散処理システムは、相互に通信を
行なうクライアントノードとサーバノードとをそれぞれ
1つ以上、含む分散処理システムであって、前記クライ
アントノードはそれぞれ、前記サーバノードに対して所
定の処理を要求する処理要求手段と、前記所定の処理の
要求に応じて前記サーバノードから返された応答信号の
内容に従って、要求した前記所定の処理用のプログラム
を前記サーバノードから受け入れて実行する処理プログ
ラム実行手段と、前記サーバノードから受け入れた前記
プログラムの実行結果、または、前記サーバノードによ
る前記所定の処理の結果を受け入れて、前記所定の処理
の結果を取得する処理結果取得手段とを有し、前記サー
バノードそれぞれは、当該サーバノードの処理量を測定
する処理量測定手段と、測定した当該サーバノードの処
理量に応じて、前記所定の処理を要求した前記クライア
ントノードそれぞれに対して、少なくとも、前記所定の
処理を実行させる前記応答信号を返す応答手段と、前記
所定の処理を要求した前記クライアントノードそれぞれ
に前記所定の処理を実行させる場合に、前記所定の処理
用のプログラムを前記クライアントノードそれぞれに送
信するプログラム送信手段と、前記所定の処理を要求し
た前記クライアントノードそれぞれに前記所定の処理用
を実行させない場合に、要求された前記所定の処理を実
行し、実行結果を前記クライアントノードそれぞれに送
信する処理実行手段とを有する。
【0012】好適には、前記サーバノードそれぞれにお
いて、測定した当該サーバノードの処理量が所定の設定
値より多い場合に、前記応答手段は、前記所定の処理を
要求した前記クライアントノードそれぞれに対して、前
記所定の処理を実行させる前記応答信号を返し、前記プ
ログラム送信手段は、前記所定の処理用のプログラムを
前記クライアントノードそれぞれに送信する。
いて、測定した当該サーバノードの処理量が所定の設定
値より多い場合に、前記応答手段は、前記所定の処理を
要求した前記クライアントノードそれぞれに対して、前
記所定の処理を実行させる前記応答信号を返し、前記プ
ログラム送信手段は、前記所定の処理用のプログラムを
前記クライアントノードそれぞれに送信する。
【0013】好適には、前記サーバノードそれぞれにお
いて、測定した当該サーバノードの処理量が所定の設定
値より少ない場合に、前記処理実行手段は、要求された
前記所定の処理を実行し、実行結果を前記クライアント
ノードそれぞれに送信する。 #d 本発明にかかる分散処理システムにおいて、クライアン
トノードは、インターネット等のネットワークを介して
サーバノードと接続されており、それぞれサーバノード
との間で通信を行ない、それぞれ、サーバノードに対し
て処理を要求する。
いて、測定した当該サーバノードの処理量が所定の設定
値より少ない場合に、前記処理実行手段は、要求された
前記所定の処理を実行し、実行結果を前記クライアント
ノードそれぞれに送信する。 #d 本発明にかかる分散処理システムにおいて、クライアン
トノードは、インターネット等のネットワークを介して
サーバノードと接続されており、それぞれサーバノード
との間で通信を行ない、それぞれ、サーバノードに対し
て処理を要求する。
【0014】処理の要求を受けたサーバノードは、例え
ば、オペレーションシステム(OS)からサーバノード
のCPU等の使用率(処理量)を取得し、CPU等の使
用率が予め設定された値よりも低い場合には、要求され
た処理を実行して、処理を要求したクライアントノード
それぞれに処理結果を返し、逆に、CPU等の使用率が
設定値よりも高い場合には、要求された処理を実現する
プログラム(アプリケーションプログラム)をクライア
ントノードそれぞれに送信し、実行させることにより、
サーバノードとクライアントノードとの間で負荷を分散
する。
ば、オペレーションシステム(OS)からサーバノード
のCPU等の使用率(処理量)を取得し、CPU等の使
用率が予め設定された値よりも低い場合には、要求され
た処理を実行して、処理を要求したクライアントノード
それぞれに処理結果を返し、逆に、CPU等の使用率が
設定値よりも高い場合には、要求された処理を実現する
プログラム(アプリケーションプログラム)をクライア
ントノードそれぞれに送信し、実行させることにより、
サーバノードとクライアントノードとの間で負荷を分散
する。
【0015】クライアントノードそれぞれにおいて、処
理要求手段は、例えば、ユーザーの操作に応じて、デー
タベース(DB)検索、トランザクション処理あるいは
ファイル入出力(I/O)処理等の処理を要求する処理
要求信号を、ネットワークを介してサーバノードに送信
する。処理プログラム実行手段は、例えば、クライアン
トノードのWWWブラウザにおいて、Java言語で記
述されたアプリケーションプログラムを実行するJav
a仮想マシン(Java VM)である。上記処理要求
信号に応じて、サーバノードからクライアントノードに
返される応答信号が、クライアントノード側に上記デー
タベース検索処理を行なわせる旨の内容である場合に、
処理プログラム実行手段は、サーバノードから上記デー
タベース検索処理を実現するJava言語のアプリケー
ションプログラムが転送されると、転送されたアプリケ
ーションプログラムを実行し、サーバノードの処理負荷
を軽減する。
理要求手段は、例えば、ユーザーの操作に応じて、デー
タベース(DB)検索、トランザクション処理あるいは
ファイル入出力(I/O)処理等の処理を要求する処理
要求信号を、ネットワークを介してサーバノードに送信
する。処理プログラム実行手段は、例えば、クライアン
トノードのWWWブラウザにおいて、Java言語で記
述されたアプリケーションプログラムを実行するJav
a仮想マシン(Java VM)である。上記処理要求
信号に応じて、サーバノードからクライアントノードに
返される応答信号が、クライアントノード側に上記デー
タベース検索処理を行なわせる旨の内容である場合に、
処理プログラム実行手段は、サーバノードから上記デー
タベース検索処理を実現するJava言語のアプリケー
ションプログラムが転送されると、転送されたアプリケ
ーションプログラムを実行し、サーバノードの処理負荷
を軽減する。
【0016】処理結果取得手段は、クライアントノード
側で上記データベース検索処理を行なった場合には、処
理プログラム実行手段によるアプリケーションプログラ
ムの実行結果を最終的な処理結果として取得し、逆に、
サーバノード側が上記データベース検索処理を行なった
場合には、ネットワークを介して送られてくるサーバノ
ードによる上記データベース検索処理の結果を最終的な
処理結果として取得する。取得された処理結果は、例え
ば、モニタ装置に表示され、あるいは、記録媒体に記録
される。
側で上記データベース検索処理を行なった場合には、処
理プログラム実行手段によるアプリケーションプログラ
ムの実行結果を最終的な処理結果として取得し、逆に、
サーバノード側が上記データベース検索処理を行なった
場合には、ネットワークを介して送られてくるサーバノ
ードによる上記データベース検索処理の結果を最終的な
処理結果として取得する。取得された処理結果は、例え
ば、モニタ装置に表示され、あるいは、記録媒体に記録
される。
【0017】サーバノードそれぞれにおいて、処理量測
定手段は、例えば、オペレーションシステム(OS)の
サービスコールであって、サーバノードの処理量として
CP等の使用率を測定する。応答手段は、処理量測定手
段が測定したCPU等の使用率が、予め設定された値以
上である場合には、サーバーノードの処理負荷が大きい
と判断し、上記データベース検索処理を要求したクライ
アントノードに対して、クライアントノードに上記デー
タベース検索処理を行なわせる旨の応答信号をネットワ
ークを介して送信する。
定手段は、例えば、オペレーションシステム(OS)の
サービスコールであって、サーバノードの処理量として
CP等の使用率を測定する。応答手段は、処理量測定手
段が測定したCPU等の使用率が、予め設定された値以
上である場合には、サーバーノードの処理負荷が大きい
と判断し、上記データベース検索処理を要求したクライ
アントノードに対して、クライアントノードに上記デー
タベース検索処理を行なわせる旨の応答信号をネットワ
ークを介して送信する。
【0018】プログラム送信手段は、クライアントノー
ドに上記データベース検索処理を行なわせる場合に、処
理を要求したクライアントノードに対して、データベー
ス検索処理を実現するアプリケーションプログラムをネ
ットワークを介して送信する。処理実行手段は、処理を
要求したクライアントノードにデータベース検索処理を
実行させない場合、つまり、サーバノードがデータベー
ス検索処理を行なう場合に、要求されたデータベース検
索処理を実行し、実行結果を処理を要求したクライアン
トノードに送信することにより、クライアントノードよ
りも高性能なサーバノードの資源の有効利用を図る。
ドに上記データベース検索処理を行なわせる場合に、処
理を要求したクライアントノードに対して、データベー
ス検索処理を実現するアプリケーションプログラムをネ
ットワークを介して送信する。処理実行手段は、処理を
要求したクライアントノードにデータベース検索処理を
実行させない場合、つまり、サーバノードがデータベー
ス検索処理を行なう場合に、要求されたデータベース検
索処理を実行し、実行結果を処理を要求したクライアン
トノードに送信することにより、クライアントノードよ
りも高性能なサーバノードの資源の有効利用を図る。
【0019】また、本発明にかかるクライアントノード
は、相互に通信を行なうクライアントノードとサーバノ
ードとをそれぞれ1つ以上、含む分散処理システムにお
いて、前記サーバノードに対して所定の処理を要求する
処理要求手段と、前記所定の処理の要求に応じて前記サ
ーバノードから返された応答信号の内容に従って、要求
した前記所定の処理用のプログラムを前記サーバノード
から受け入れて実行する処理プログラム実行手段と、前
記サーバノードから受け入れた前記プログラムの実行結
果、または、前記サーバノードによる前記所定の処理の
結果を受け入れて、前記所定の処理の結果を取得する処
理結果取得手段とを有する。
は、相互に通信を行なうクライアントノードとサーバノ
ードとをそれぞれ1つ以上、含む分散処理システムにお
いて、前記サーバノードに対して所定の処理を要求する
処理要求手段と、前記所定の処理の要求に応じて前記サ
ーバノードから返された応答信号の内容に従って、要求
した前記所定の処理用のプログラムを前記サーバノード
から受け入れて実行する処理プログラム実行手段と、前
記サーバノードから受け入れた前記プログラムの実行結
果、または、前記サーバノードによる前記所定の処理の
結果を受け入れて、前記所定の処理の結果を取得する処
理結果取得手段とを有する。
【0020】また、本発明にかかるサーバノードは、相
互に通信を行なうクライアントノードとサーバノードと
をそれぞれ1つ以上、含む分散処理システムにおいて、
当該サーバノードの処理量を測定する処理量測定手段
と、測定した当該サーバノードの処理量に応じて、所定
の処理を要求した前記クライアントノードそれぞれに対
して、少なくとも、前記所定の処理を実行させる応答信
号を返す応答手段と、前記所定の処理を要求した前記ク
ライアントノードそれぞれに前記所定の処理を実行させ
る場合に、前記所定の処理用のプログラムを前記クライ
アントノードそれぞれに送信するプログラム送信手段
と、前記所定の処理を要求した前記クライアントノード
それぞれに前記所定の処理用を実行させない場合に、要
求された前記所定の処理を実行し、実行結果を前記クラ
イアントノードそれぞれに送信する処理実行手段とを有
する。
互に通信を行なうクライアントノードとサーバノードと
をそれぞれ1つ以上、含む分散処理システムにおいて、
当該サーバノードの処理量を測定する処理量測定手段
と、測定した当該サーバノードの処理量に応じて、所定
の処理を要求した前記クライアントノードそれぞれに対
して、少なくとも、前記所定の処理を実行させる応答信
号を返す応答手段と、前記所定の処理を要求した前記ク
ライアントノードそれぞれに前記所定の処理を実行させ
る場合に、前記所定の処理用のプログラムを前記クライ
アントノードそれぞれに送信するプログラム送信手段
と、前記所定の処理を要求した前記クライアントノード
それぞれに前記所定の処理用を実行させない場合に、要
求された前記所定の処理を実行し、実行結果を前記クラ
イアントノードそれぞれに送信する処理実行手段とを有
する。
【0021】また、本発明にかかる分散処理方法は、相
互に通信を行なうクライアントノードとサーバノードと
をそれぞれ1つ以上、含む分散処理システムにおいて、
前記クライアントノードはそれぞれ、前記サーバノード
に対して所定の処理を要求し、前記所定の処理の要求に
応じて前記サーバノードから返された応答信号の内容に
従って、要求した前記所定の処理用のプログラムを前記
サーバノードから受け入れて実行し、前記サーバノード
から受け入れた前記プログラムの実行結果、または、前
記サーバノードによる前記所定の処理の結果を受け入れ
て、前記所定の処理の結果を取得し、前記サーバノード
それぞれは、当該サーバノードの処理量を測定し、測定
した当該サーバノードの処理量に応じて、前記所定の処
理を要求した前記クライアントノードそれぞれに対し
て、少なくとも、前記所定の処理を実行させる前記応答
信号を返し、前記所定の処理を要求した前記クライアン
トノードそれぞれに前記所定の処理を実行させる場合
に、前記所定の処理用のプログラムを前記クライアント
ノードそれぞれに送信し、前記所定の処理を要求した前
記クライアントノードそれぞれに前記所定の処理用を実
行させない場合に、要求された前記所定の処理を実行
し、実行結果を前記クライアントノードそれぞれに送信
する。
互に通信を行なうクライアントノードとサーバノードと
をそれぞれ1つ以上、含む分散処理システムにおいて、
前記クライアントノードはそれぞれ、前記サーバノード
に対して所定の処理を要求し、前記所定の処理の要求に
応じて前記サーバノードから返された応答信号の内容に
従って、要求した前記所定の処理用のプログラムを前記
サーバノードから受け入れて実行し、前記サーバノード
から受け入れた前記プログラムの実行結果、または、前
記サーバノードによる前記所定の処理の結果を受け入れ
て、前記所定の処理の結果を取得し、前記サーバノード
それぞれは、当該サーバノードの処理量を測定し、測定
した当該サーバノードの処理量に応じて、前記所定の処
理を要求した前記クライアントノードそれぞれに対し
て、少なくとも、前記所定の処理を実行させる前記応答
信号を返し、前記所定の処理を要求した前記クライアン
トノードそれぞれに前記所定の処理を実行させる場合
に、前記所定の処理用のプログラムを前記クライアント
ノードそれぞれに送信し、前記所定の処理を要求した前
記クライアントノードそれぞれに前記所定の処理用を実
行させない場合に、要求された前記所定の処理を実行
し、実行結果を前記クライアントノードそれぞれに送信
する。
【0022】
【発明の実施の形態】以下、本発明の実施形態を説明す
る。
る。
【0023】[インターネット1の構成]図1は、本発
明にかかる分散処理方法が適応されるインターネット1
の構成を例示する図である。図1に示すように、インタ
ーネット1は、k個のネットワークシステム10a〜1
0k(10a,10b;図1においてはk=2の場合を
例示)から構成される。
明にかかる分散処理方法が適応されるインターネット1
の構成を例示する図である。図1に示すように、インタ
ーネット1は、k個のネットワークシステム10a〜1
0k(10a,10b;図1においてはk=2の場合を
例示)から構成される。
【0024】ネットワークシステム10aにおいては、
例えば、1台以上のサーバノード12(図1は、サーバ
ノード12が1台の場合を例示)およびm台のクライア
ントノード14a−1〜14a−m(14a−1〜14
a−6;図1はm=6の場合を例示)が、ISDN網、
データ通信網、LANあるいは電話網といったデータ伝
送可能なネットワーク(ネットワークA)16aを介し
て、同一ネットワーク内あるいは他のネットワーク内の
他のノード(以下、サーバノードおよびクライアントノ
ードを総称する場合には、単にノードとも記す)と互い
にデータ通信可能に接続される。
例えば、1台以上のサーバノード12(図1は、サーバ
ノード12が1台の場合を例示)およびm台のクライア
ントノード14a−1〜14a−m(14a−1〜14
a−6;図1はm=6の場合を例示)が、ISDN網、
データ通信網、LANあるいは電話網といったデータ伝
送可能なネットワーク(ネットワークA)16aを介し
て、同一ネットワーク内あるいは他のネットワーク内の
他のノード(以下、サーバノードおよびクライアントノ
ードを総称する場合には、単にノードとも記す)と互い
にデータ通信可能に接続される。
【0025】ネットワークシステム10bにおいては、
例えば、n台のクライアントノード14b−1〜14b
−n(14b−1〜14b−6;図1はn=6の場合を
例示)が、ネットワーク16aと同様なネットワーク
(ネットワークB)16bを介して、同一ネットワーク
内あるいは他のネットワーク内の他のノードと互いにデ
ータ通信可能に接続される。なお、ネットワークシステ
ム10bがサーバノード12を含んでいてもよいことは
いうまでもない。
例えば、n台のクライアントノード14b−1〜14b
−n(14b−1〜14b−6;図1はn=6の場合を
例示)が、ネットワーク16aと同様なネットワーク
(ネットワークB)16bを介して、同一ネットワーク
内あるいは他のネットワーク内の他のノードと互いにデ
ータ通信可能に接続される。なお、ネットワークシステ
ム10bがサーバノード12を含んでいてもよいことは
いうまでもない。
【0026】[サーバノード12]図2は、図1に示し
たサーバノード12のソフトウェア構成を例示する図で
ある。以下、サーバノード12の構成および各構成部分
を説明する。サーバノード12は、例えば、クライアン
トノード14(クライアントノード14a−1〜14b
−nのいずれかを特定せずに示す場合にはクライアント
ノード14と略記する)よりも処理能力が高いCPU、
および、大きい容量のメモリ(図示せず)等の資源を有
し、Java言語で記述されたプログラムを実行可能な
コンピュータである。サーバノード12は、図2に示す
ように、ソフトウェアとして、オペレーションシステム
(OS)120、受信処理部122、処理制御部12
4、HTML作成部126、データベース(DB)12
8、アプリケーションプログラム送信部130、処理実
行部132および送信処理部134を含み、処理制御部
124〜送信処理部134は全体として、CGI(commo
n gateway interface)、あるいは、Java言語で記述
されたservletと呼ばれるプログラムを構成す
る。
たサーバノード12のソフトウェア構成を例示する図で
ある。以下、サーバノード12の構成および各構成部分
を説明する。サーバノード12は、例えば、クライアン
トノード14(クライアントノード14a−1〜14b
−nのいずれかを特定せずに示す場合にはクライアント
ノード14と略記する)よりも処理能力が高いCPU、
および、大きい容量のメモリ(図示せず)等の資源を有
し、Java言語で記述されたプログラムを実行可能な
コンピュータである。サーバノード12は、図2に示す
ように、ソフトウェアとして、オペレーションシステム
(OS)120、受信処理部122、処理制御部12
4、HTML作成部126、データベース(DB)12
8、アプリケーションプログラム送信部130、処理実
行部132および送信処理部134を含み、処理制御部
124〜送信処理部134は全体として、CGI(commo
n gateway interface)、あるいは、Java言語で記述
されたservletと呼ばれるプログラムを構成す
る。
【0027】[サーバノード12の構成部分]以下、サ
ーバノード12の各構成部分を説明する。
ーバノード12の各構成部分を説明する。
【0028】[オペレーションシステム120]サーバ
ノード12において、オペレーションシステム120
は、図2に示した各ソフトウェアの動作を制御するとと
もに、サーバノード12の処理量として各資源の使用率
ORを測定し、測定した使用率ORの値を、サービスコ
ールに応じて、処理制御部124に対して出力する。な
お、各資源の使用率ORには、例えば、サーバノード1
2のCPUの総使用率OR−1、処理(タスク)別のC
PU使用率OR−2(ある時間間隔における総CPUカ
ウント数に対して、あるタスクに使用されたCPUカウ
ントの総数)およびメモリ使用率OR−3(ある時点に
おいて、あるタスクに占有されているメモリ量の割合)
等が含まれる。なお、OR−1は、下式1に示すように
定義される。
ノード12において、オペレーションシステム120
は、図2に示した各ソフトウェアの動作を制御するとと
もに、サーバノード12の処理量として各資源の使用率
ORを測定し、測定した使用率ORの値を、サービスコ
ールに応じて、処理制御部124に対して出力する。な
お、各資源の使用率ORには、例えば、サーバノード1
2のCPUの総使用率OR−1、処理(タスク)別のC
PU使用率OR−2(ある時間間隔における総CPUカ
ウント数に対して、あるタスクに使用されたCPUカウ
ントの総数)およびメモリ使用率OR−3(ある時点に
おいて、あるタスクに占有されているメモリ量の割合)
等が含まれる。なお、OR−1は、下式1に示すように
定義される。
【0029】
【数1】 OR-1 = 1 - (It1 - It2) / (Ct1 - Ct2) (1) ただし、I はアイドルカウント、C は総CPUカウン
ト、t1,t2はある時刻を示す。
ト、t1,t2はある時刻を示す。
【0030】[受信処理部122]受信処理部122
は、ネットワーク16a,16bを介して各クライアン
トノード14からの受信データを受信し、受信データを
解析して、クライアントノード14から受信データが処
理プログラム要求信号である場合にはアプリケーション
プログラム送信部130に対して出力し、処理要求信号
である場合には処理制御部124に対して出力する。
は、ネットワーク16a,16bを介して各クライアン
トノード14からの受信データを受信し、受信データを
解析して、クライアントノード14から受信データが処
理プログラム要求信号である場合にはアプリケーション
プログラム送信部130に対して出力し、処理要求信号
である場合には処理制御部124に対して出力する。
【0031】なお、受信処理部122の機能の一部また
は全部を、オペレーションシステム120に含めること
も可能である。また、サーバノード12が受信する受信
データには、送信元のクライアントノード14の識別子
が含まれており、サーバノード12の各ソフトウェア
は、必要に応じて受信データに含まれる識別子を用いて
クライアントノード14の識別を行なうことができる。
は全部を、オペレーションシステム120に含めること
も可能である。また、サーバノード12が受信する受信
データには、送信元のクライアントノード14の識別子
が含まれており、サーバノード12の各ソフトウェア
は、必要に応じて受信データに含まれる識別子を用いて
クライアントノード14の識別を行なうことができる。
【0032】[処理制御部124]処理制御部124
は、クライアントノード14から、例えば、データベー
ス検索処理(この処理に限らず、他にトランザクション
処理等であってもよい)を要求する処理要求信号が入力
された場合に、オペレーションシステム120に対して
サービスコールを発行し、サーバノード12のCPU等
の使用率OR(OR−1,OR−2,OR−3、ただ
し、本実施形態においてはOR−1のみを使用する)を
取得する。また、サーバノード12のCPUの総使用率
OR−1の値が、予め設定される設定値TH[TH=0
〜100%、例えばTH=0%の場合には、サーバノー
ドは、必ず、応答信号(HTML)を送信する]以上で
ある場合には、処理制御部124は、HTML作成部1
26を制御して、クライアントノード14側でデータベ
ース検索処理を実行すべき旨を内容とする応答信号を、
データベース検索処理を要求したクライアントノード1
4に対して送信させ、サーバノード12の処理負荷を軽
減させる。また、処理制御部124は、HTML作成部
126を制御して、クライアントノードが処理を実行す
べき旨を内容とする応答信号を、送信処理部134を介
してデータベース検索処理を要求したクライアントノー
ド14に対して送信させる。
は、クライアントノード14から、例えば、データベー
ス検索処理(この処理に限らず、他にトランザクション
処理等であってもよい)を要求する処理要求信号が入力
された場合に、オペレーションシステム120に対して
サービスコールを発行し、サーバノード12のCPU等
の使用率OR(OR−1,OR−2,OR−3、ただ
し、本実施形態においてはOR−1のみを使用する)を
取得する。また、サーバノード12のCPUの総使用率
OR−1の値が、予め設定される設定値TH[TH=0
〜100%、例えばTH=0%の場合には、サーバノー
ドは、必ず、応答信号(HTML)を送信する]以上で
ある場合には、処理制御部124は、HTML作成部1
26を制御して、クライアントノード14側でデータベ
ース検索処理を実行すべき旨を内容とする応答信号を、
データベース検索処理を要求したクライアントノード1
4に対して送信させ、サーバノード12の処理負荷を軽
減させる。また、処理制御部124は、HTML作成部
126を制御して、クライアントノードが処理を実行す
べき旨を内容とする応答信号を、送信処理部134を介
してデータベース検索処理を要求したクライアントノー
ド14に対して送信させる。
【0033】また、処理制御部124は、アプリケーシ
ョンプログラム送信部130を制御して、データベース
検索処理を実現するアプリケーションプログラム(例え
ば、Java言語で記述され、Javaコンパチブルの
WWWブラウザで動作可能なAppletと呼ばれるプ
ログラム)を、データベース検索処理を要求したクライ
アントノード14に対して送信させる。
ョンプログラム送信部130を制御して、データベース
検索処理を実現するアプリケーションプログラム(例え
ば、Java言語で記述され、Javaコンパチブルの
WWWブラウザで動作可能なAppletと呼ばれるプ
ログラム)を、データベース検索処理を要求したクライ
アントノード14に対して送信させる。
【0034】また、サーバノード12のCPUの総使用
率OR−1の値が、予め設定される設定値TH以下であ
る場合には、処理制御部124は、処理実行部132を
制御して、要求されたデータベース検索処理を実行さ
せ、データベース検索処理を要求したクライアントノー
ド14に対して処理の結果を送信させる。
率OR−1の値が、予め設定される設定値TH以下であ
る場合には、処理制御部124は、処理実行部132を
制御して、要求されたデータベース検索処理を実行さ
せ、データベース検索処理を要求したクライアントノー
ド14に対して処理の結果を送信させる。
【0035】[HTML作成部126]HTML作成部
126は、処理制御部124の制御に従って、クライア
ントノード14側でデータベース検索処理を実行すべき
旨の内容を、例えばHTMLにより記述した応答信号を
作成し、送信処理部134に対して出力する。なお、H
TML作成部126は、アプリケーションプログラムと
して上記Appletを送信する場合には、送信するA
ppletを、応答信号(HTML)のAppletタ
グに指定する。具体的には、例えば、応答信号(HTM
L;test.html)のファイル内にApplet
タグ<applet code = testapplet></applet>が定義され
ている場合に、処理制御部124は、サーバーノード1
2の処理量が大きいと判断すると、応答信号(HTM
L;test.html)を、処理を要求したクライア
ントノード14に送信する。クライアントノード12
は、受信した応答信号(HTML;test.htm
l)を解釈し、testappletという名前のアプリケーショ
ンプログラム(Applet)を、サーバノード14か
らダウンロードして、実行する。このように、サーバノ
ード14からアプリケーションプログラム(Apple
t)をダウンロードし、実行するという動作は、既存の
WebサーバとWebクライアント間のHTTP(hyper
text transfer protocol)を利用して実現される。なお
必要に応じて、クライアントノード14は、応答信号
(HTML)を受信した場合、ユーザーに、例えば、
「アプレットによる処理を開始しました」といったメッ
セージを表示してもよい。
126は、処理制御部124の制御に従って、クライア
ントノード14側でデータベース検索処理を実行すべき
旨の内容を、例えばHTMLにより記述した応答信号を
作成し、送信処理部134に対して出力する。なお、H
TML作成部126は、アプリケーションプログラムと
して上記Appletを送信する場合には、送信するA
ppletを、応答信号(HTML)のAppletタ
グに指定する。具体的には、例えば、応答信号(HTM
L;test.html)のファイル内にApplet
タグ<applet code = testapplet></applet>が定義され
ている場合に、処理制御部124は、サーバーノード1
2の処理量が大きいと判断すると、応答信号(HTM
L;test.html)を、処理を要求したクライア
ントノード14に送信する。クライアントノード12
は、受信した応答信号(HTML;test.htm
l)を解釈し、testappletという名前のアプリケーショ
ンプログラム(Applet)を、サーバノード14か
らダウンロードして、実行する。このように、サーバノ
ード14からアプリケーションプログラム(Apple
t)をダウンロードし、実行するという動作は、既存の
WebサーバとWebクライアント間のHTTP(hyper
text transfer protocol)を利用して実現される。なお
必要に応じて、クライアントノード14は、応答信号
(HTML)を受信した場合、ユーザーに、例えば、
「アプレットによる処理を開始しました」といったメッ
セージを表示してもよい。
【0036】[データベース128]データベース12
8は、送信処理部134の処理実行部132、あるい
は、クライアントノード14で実行されるプログラム、
および、その他のデータを記憶・管理し、アプリケーシ
ョンプログラム送信部130および処理実行部132か
らの要求に応じてプログラムあるいはその他のデータを
供給する。
8は、送信処理部134の処理実行部132、あるい
は、クライアントノード14で実行されるプログラム、
および、その他のデータを記憶・管理し、アプリケーシ
ョンプログラム送信部130および処理実行部132か
らの要求に応じてプログラムあるいはその他のデータを
供給する。
【0037】[アプリケーションプログラム送信部13
0]アプリケーションプログラム送信部130は、クラ
イアントノード14から処理プログラム要求信号(Ap
plet要求信号)が入力された場合には、データベー
ス128からクライアントノード14が要求するデータ
ベース検索処理を実現するアプリケーションプログラム
(Applet)の供給を受け、供給されたアプリケー
ションプログラムを、送信処理部134に対して出力す
る。
0]アプリケーションプログラム送信部130は、クラ
イアントノード14から処理プログラム要求信号(Ap
plet要求信号)が入力された場合には、データベー
ス128からクライアントノード14が要求するデータ
ベース検索処理を実現するアプリケーションプログラム
(Applet)の供給を受け、供給されたアプリケー
ションプログラムを、送信処理部134に対して出力す
る。
【0038】[処理実行部132]処理実行部132
は、処理制御部124の制御に従って、クライアントノ
ード14から要求されたデータベース検索処理を行な
い、処理の結果を送信処理部134に対して出力する。
は、処理制御部124の制御に従って、クライアントノ
ード14から要求されたデータベース検索処理を行な
い、処理の結果を送信処理部134に対して出力する。
【0039】[送信処理部134]送信処理部134
は、HTML作成部126から入力されるHTML形式
の応答データ、アプリケーションプログラム送信部13
0から入力されるデータベース検索処理用のアプリケー
ションプログラム、および、処理実行部132から入力
されるデータベース検索処理の結果を、データベース検
索処理を要求したクライアントノード14に対して、ネ
ットワーク16a,16bを介して送信する。なお、受
信処理部122と同様に、送信処理部134の機能の一
部または全部を、オペレーションシステム120に含め
ることも可能である。
は、HTML作成部126から入力されるHTML形式
の応答データ、アプリケーションプログラム送信部13
0から入力されるデータベース検索処理用のアプリケー
ションプログラム、および、処理実行部132から入力
されるデータベース検索処理の結果を、データベース検
索処理を要求したクライアントノード14に対して、ネ
ットワーク16a,16bを介して送信する。なお、受
信処理部122と同様に、送信処理部134の機能の一
部または全部を、オペレーションシステム120に含め
ることも可能である。
【0040】[クライアントノード14]以下、クライ
アントノード14の構成および各構成部分を説明する。
図3は、図1に示したクライアントノード14のソフト
ウェア構成を示す図である。クライアントノード14
は、例えば、Java言語で記述されたプログラムを実
行可能なマルチメディア対応のパーソナルコンピュータ
であって、図3に示すように、ソフトウェアとして、オ
ペレーションシステム(OS)140、ユーザーインタ
ーフェース(ユーザーIF)部142、処理要求部14
4、受信処理部146、HTML解釈部148、アプリ
ケーションプログラム要求部150、処理実行部15
2、送信処理部154および結果出力部156から構成
される。
アントノード14の構成および各構成部分を説明する。
図3は、図1に示したクライアントノード14のソフト
ウェア構成を示す図である。クライアントノード14
は、例えば、Java言語で記述されたプログラムを実
行可能なマルチメディア対応のパーソナルコンピュータ
であって、図3に示すように、ソフトウェアとして、オ
ペレーションシステム(OS)140、ユーザーインタ
ーフェース(ユーザーIF)部142、処理要求部14
4、受信処理部146、HTML解釈部148、アプリ
ケーションプログラム要求部150、処理実行部15
2、送信処理部154および結果出力部156から構成
される。
【0041】[クライアントノード14の構成部分]以
下、クライアントノード14の各構成部分を説明する。
下、クライアントノード14の各構成部分を説明する。
【0042】[オペレーションシステム140]クライ
アントノード14において、オペレーションシステム1
40は、サーバノード12におけるオペレーションシス
テム120と同様に、図3に示した各ソフトウェアの動
作を制御する。
アントノード14において、オペレーションシステム1
40は、サーバノード12におけるオペレーションシス
テム120と同様に、図3に示した各ソフトウェアの動
作を制御する。
【0043】[ユーザーインターフェース部142]ユ
ーザーインターフェース部142は、クライアントノー
ド14のキーボードおよびマウス等の入力装置(図示せ
ず)に対するユーザーの操作を受け入れて、サーバノー
ド12に対して要求する処理(例えば、上記データベー
ス検索処理)を示す操作データを生成し、処理要求部1
44に対して出力する。
ーザーインターフェース部142は、クライアントノー
ド14のキーボードおよびマウス等の入力装置(図示せ
ず)に対するユーザーの操作を受け入れて、サーバノー
ド12に対して要求する処理(例えば、上記データベー
ス検索処理)を示す操作データを生成し、処理要求部1
44に対して出力する。
【0044】[処理要求部144]処理要求部144
は、サーバノード12に対してユーザーが指定したデー
タベース検索処理を要求する処理要求信号を生成し、送
信処理部154に対して出力する。
は、サーバノード12に対してユーザーが指定したデー
タベース検索処理を要求する処理要求信号を生成し、送
信処理部154に対して出力する。
【0045】[受信処理部146]受信処理部146
は、サーバノード12における受信処理部122に対応
し、ネットワーク16a,16bを介してサーバノード
12から受信データを受信し、受信データを解析して、
サーバノード12からの受信データが、データベース検
索処理の結果である場合には、結果出力部156に対し
て出力し、アプリケーションプログラムである場合に
は、処理実行部152に対して出力し、HTMLにより
記述された応答データである場合には、HTML解釈部
148に対して出力する。処理プログラム要求信号であ
る場合にはアプリケーションプログラム送信部130に
対して出力し、処理要求信号である場合には処理制御部
124に対して出力する。なお、受信処理部146の機
能は、受信処理部122と同様に、オペレーションシス
テム140に含めることも可能である。
は、サーバノード12における受信処理部122に対応
し、ネットワーク16a,16bを介してサーバノード
12から受信データを受信し、受信データを解析して、
サーバノード12からの受信データが、データベース検
索処理の結果である場合には、結果出力部156に対し
て出力し、アプリケーションプログラムである場合に
は、処理実行部152に対して出力し、HTMLにより
記述された応答データである場合には、HTML解釈部
148に対して出力する。処理プログラム要求信号であ
る場合にはアプリケーションプログラム送信部130に
対して出力し、処理要求信号である場合には処理制御部
124に対して出力する。なお、受信処理部146の機
能は、受信処理部122と同様に、オペレーションシス
テム140に含めることも可能である。
【0046】[HTML解釈部148]HTML解釈部1
48は、サーバノード12から応答データを受信し、解
析して、応答データがクライアントノード14にデータ
ベース検索処理を実行させる内容である場合には、アプ
リケーションプログラム要求部150を制御して、サー
バノード12に対してアプリケーションプログラム要求
信号を送信させる。また、HTML解釈部148は、処
理実行部152を制御して、サーバノード12から受信
したアプリケーションプログラムを実行させる。
48は、サーバノード12から応答データを受信し、解
析して、応答データがクライアントノード14にデータ
ベース検索処理を実行させる内容である場合には、アプ
リケーションプログラム要求部150を制御して、サー
バノード12に対してアプリケーションプログラム要求
信号を送信させる。また、HTML解釈部148は、処
理実行部152を制御して、サーバノード12から受信
したアプリケーションプログラムを実行させる。
【0047】[アプリケーションプログラム要求部15
0]アプリケーションプログラム要求部150は、HT
ML解釈部148の制御に従って、サーバノード12に
アプリケーションプログラムの送信を要求するアプリケ
ーションプログラム要求信号を生成し、送信処理部15
4に対して出力する。
0]アプリケーションプログラム要求部150は、HT
ML解釈部148の制御に従って、サーバノード12に
アプリケーションプログラムの送信を要求するアプリケ
ーションプログラム要求信号を生成し、送信処理部15
4に対して出力する。
【0048】[処理実行部152]処理実行部152
は、HTML解釈部148の制御に従って、受信処理部
146から入力されるデータベース検索処理用のアプリ
ケーションプログラムを記憶し、実行して、データベー
ス検索処理の結果を結果出力部156に対して出力す
る。
は、HTML解釈部148の制御に従って、受信処理部
146から入力されるデータベース検索処理用のアプリ
ケーションプログラムを記憶し、実行して、データベー
ス検索処理の結果を結果出力部156に対して出力す
る。
【0049】[送信処理部154]送信処理部154
は、サーバノード12における送信処理部134に対応
し、処理要求部144から入力される処理要求信号、お
よび、アプリケーションプログラム要求部150から入
力されるアプリケーションプログラム要求信号を、ネッ
トワーク16a,16bを介してサーバノード12に対
して出力する。
は、サーバノード12における送信処理部134に対応
し、処理要求部144から入力される処理要求信号、お
よび、アプリケーションプログラム要求部150から入
力されるアプリケーションプログラム要求信号を、ネッ
トワーク16a,16bを介してサーバノード12に対
して出力する。
【0050】[結果出力部156]結果出力部156
は、処理実行部152がサーバノード12から受信した
アプリケーションプログラムを実行して得られたデータ
ベース検索処理の結果、または、得146から入力され
るサーバノード12によるデータベース検索処理の結果
を、最終的な処理結果として、クライアントノード14
に接続されたモニタ装置(図示せず)に表示し、あるい
は、ハードディスク装置(HDD)等の記録装置(図示
せず)等に対して出力する。なお、結果出力部156の
機能も、受信処理部146と同様に、オペレーションシ
ステム140に含めることが可能である。
は、処理実行部152がサーバノード12から受信した
アプリケーションプログラムを実行して得られたデータ
ベース検索処理の結果、または、得146から入力され
るサーバノード12によるデータベース検索処理の結果
を、最終的な処理結果として、クライアントノード14
に接続されたモニタ装置(図示せず)に表示し、あるい
は、ハードディスク装置(HDD)等の記録装置(図示
せず)等に対して出力する。なお、結果出力部156の
機能も、受信処理部146と同様に、オペレーションシ
ステム140に含めることが可能である。
【0051】[インターネット1の動作]以下、インタ
ーネット1の動作を説明する。図4(A)は、クライア
ントノード14側で処理を行なう場合に、サーバノード
12およびクライアントノード14の間で伝送される信
号を示すシーケンス図であり、(B)は、サーバノード
12側で処理を行なう場合に、サーバノード12および
クライアントノード14の間で伝送される信号を示すシ
ーケンス図である。図5は、図1に示したクライアント
ノード14の処理内容を示すフローチャートである。
ーネット1の動作を説明する。図4(A)は、クライア
ントノード14側で処理を行なう場合に、サーバノード
12およびクライアントノード14の間で伝送される信
号を示すシーケンス図であり、(B)は、サーバノード
12側で処理を行なう場合に、サーバノード12および
クライアントノード14の間で伝送される信号を示すシ
ーケンス図である。図5は、図1に示したクライアント
ノード14の処理内容を示すフローチャートである。
【0052】[クライアントノード14側で処理を行な
う場合のインターネット1の動作]まず、図4(A)お
よび図5を参照して、クライアントノード14b−1か
らサーバノード12に対してデータベース検索処理を要
求し、クライアントノード14b−1側でデータベース
検索処理を行なう場合を例に、インターネット1の動作
を説明する。なお、以下、説明の明確化のために、クラ
イアントノード14b−1からサーバノード12に対し
てデータベース検索処理を要求する場合を例示するが、
クライアントノード14a−1〜クライアントノード1
4b−nのいずれがサーバノード12に対してデータベ
ース検索処理あるいはその他の処理を要求する場合で
も、インターネット1の動作は同様である。
う場合のインターネット1の動作]まず、図4(A)お
よび図5を参照して、クライアントノード14b−1か
らサーバノード12に対してデータベース検索処理を要
求し、クライアントノード14b−1側でデータベース
検索処理を行なう場合を例に、インターネット1の動作
を説明する。なお、以下、説明の明確化のために、クラ
イアントノード14b−1からサーバノード12に対し
てデータベース検索処理を要求する場合を例示するが、
クライアントノード14a−1〜クライアントノード1
4b−nのいずれがサーバノード12に対してデータベ
ース検索処理あるいはその他の処理を要求する場合で
も、インターネット1の動作は同様である。
【0053】クライアントノード14b−1のユーザー
が、入力装置(図示せず)を操作してデータベース検索
処理を指定すると、ユーザーインターフェース部142
は、ユーザーの操作を受け入れて、データベース検索処
理を要求する内容の操作データを生成し、処理要求部1
44に対して出力する。図4(A)においてS200と
して示すように、処理要求部144は、ユーザーインタ
ーフェース部142から入力された操作データに従っ
て、サーバノード12に対してデータベース検索処理を
要求する処理要求信号を生成し、送信処理部154およ
びネットワーク16b,16aを介してサーバノード1
2に送信する。
が、入力装置(図示せず)を操作してデータベース検索
処理を指定すると、ユーザーインターフェース部142
は、ユーザーの操作を受け入れて、データベース検索処
理を要求する内容の操作データを生成し、処理要求部1
44に対して出力する。図4(A)においてS200と
して示すように、処理要求部144は、ユーザーインタ
ーフェース部142から入力された操作データに従っ
て、サーバノード12に対してデータベース検索処理を
要求する処理要求信号を生成し、送信処理部154およ
びネットワーク16b,16aを介してサーバノード1
2に送信する。
【0054】サーバノード12において、受信処理部1
22は、クライアントノード14b−1からの処理要求
信号を受信し、処理制御部124に対して出力する。図
5において、ステップ100(S100)の処理として
示すように、処理制御部124は、入力される処理要求
信号に応じて、オペレーションシステム140に対して
サービスコールを発行し、CPU使用率OR−1を取得
する。ステップ102(S102)において、処理制御
部124は、取得したCPU使用率OR−1が、設定値
TH以下である場合には、S104の処理に進む。
22は、クライアントノード14b−1からの処理要求
信号を受信し、処理制御部124に対して出力する。図
5において、ステップ100(S100)の処理として
示すように、処理制御部124は、入力される処理要求
信号に応じて、オペレーションシステム140に対して
サービスコールを発行し、CPU使用率OR−1を取得
する。ステップ102(S102)において、処理制御
部124は、取得したCPU使用率OR−1が、設定値
TH以下である場合には、S104の処理に進む。
【0055】ステップ104(S104)において、処
理制御部124は、HTML作成部126を制御し、図
4(A)においてS202として示すように、クライア
ントノード14b−1側にデータベース検索処理を行な
わせる旨を内容とする応答信号(HTMLデータ)を、
送信処理部134およびネットワーク16a,16bを
介して送信させる。クライアントノード14b−1にお
いて、HTML解釈部148は、サーバノード12から
の応答信号を受信すると、内容に応じてアプリケーショ
ンプログラム要求部150を制御し、図4(A)におい
てS204として示すように、データベース検索処理用
のアプリケーションプログラム(Applet)を要求
するアプリケーションプログラム要求信号を、送信処理
部154およびネットワーク16b,16bを介してサ
ーバノード12に対して送信させる。
理制御部124は、HTML作成部126を制御し、図
4(A)においてS202として示すように、クライア
ントノード14b−1側にデータベース検索処理を行な
わせる旨を内容とする応答信号(HTMLデータ)を、
送信処理部134およびネットワーク16a,16bを
介して送信させる。クライアントノード14b−1にお
いて、HTML解釈部148は、サーバノード12から
の応答信号を受信すると、内容に応じてアプリケーショ
ンプログラム要求部150を制御し、図4(A)におい
てS204として示すように、データベース検索処理用
のアプリケーションプログラム(Applet)を要求
するアプリケーションプログラム要求信号を、送信処理
部154およびネットワーク16b,16bを介してサ
ーバノード12に対して送信させる。
【0056】サーバノード12において、受信処理部1
22は、クライアントノード14b−1からのアプリケ
ーションプログラム要求信号を受信すると、受信したア
プリケーションプログラム要求信号をアプリケーション
プログラム送信部130に対して出力する。アプリケー
ションプログラム送信部130は、データベース128
から、アプリケーションプログラム要求信号により要求
されたデータベース検索処理用のプログラムの供給を受
け、供給されたアプリケーションプログラムを、図4
(A)においてS206として示すように、送信処理部
134およびネットワーク16a,16bを介してクラ
イアントノード14b−1に対して送信する。
22は、クライアントノード14b−1からのアプリケ
ーションプログラム要求信号を受信すると、受信したア
プリケーションプログラム要求信号をアプリケーション
プログラム送信部130に対して出力する。アプリケー
ションプログラム送信部130は、データベース128
から、アプリケーションプログラム要求信号により要求
されたデータベース検索処理用のプログラムの供給を受
け、供給されたアプリケーションプログラムを、図4
(A)においてS206として示すように、送信処理部
134およびネットワーク16a,16bを介してクラ
イアントノード14b−1に対して送信する。
【0057】クライアントノード14b−1において、
受信処理部146は、サーバノード12からのアプリケ
ーションプログラムを受信すると、受信したアプリケー
ションプログラムを処理実行部152に対して出力す
る。処理実行部152は、受信処理部146から入力さ
れたデータベース検索処理用のプログラムを記憶し、実
行してデータベース検索処理の結果を得て、結果出力部
156に対して出力する。結果出力部156は、処理実
行部152から入力されたデータベース検索処理の結果
をモニタ装置あるいはHDD等に対して出力する。
受信処理部146は、サーバノード12からのアプリケ
ーションプログラムを受信すると、受信したアプリケー
ションプログラムを処理実行部152に対して出力す
る。処理実行部152は、受信処理部146から入力さ
れたデータベース検索処理用のプログラムを記憶し、実
行してデータベース検索処理の結果を得て、結果出力部
156に対して出力する。結果出力部156は、処理実
行部152から入力されたデータベース検索処理の結果
をモニタ装置あるいはHDD等に対して出力する。
【0058】[サーバノード12側で処理を行なう場合
のインターネット1の動作]次に、図4(B)および図
5を参照して、クライアントノード14b−1からサー
バノード12に対してデータベース検索処理を要求し、
サーバノード12側でデータベース検索処理を行なう場
合を例に、インターネット1の動作を説明する。
のインターネット1の動作]次に、図4(B)および図
5を参照して、クライアントノード14b−1からサー
バノード12に対してデータベース検索処理を要求し、
サーバノード12側でデータベース検索処理を行なう場
合を例に、インターネット1の動作を説明する。
【0059】クライアントノード14b−1のユーザー
によりデータベース検索処理が指定されると、ユーザー
インターフェース部142は、データベース検索処理を
要求する内容の操作データを生成し、処理要求部144
に対して出力する。図4(B)においてS220として
示すように、処理要求部144は、サーバノード12に
対してデータベース検索処理を要求する処理要求信号を
生成し、送信処理部154およびネットワーク16b,
16aを介してサーバノード12に送信する。
によりデータベース検索処理が指定されると、ユーザー
インターフェース部142は、データベース検索処理を
要求する内容の操作データを生成し、処理要求部144
に対して出力する。図4(B)においてS220として
示すように、処理要求部144は、サーバノード12に
対してデータベース検索処理を要求する処理要求信号を
生成し、送信処理部154およびネットワーク16b,
16aを介してサーバノード12に送信する。
【0060】サーバノード12において、受信処理部1
22は、クライアントノード14b−1からの処理要求
信号を受信し、処理制御部124に対して出力する。処
理制御部124は、入力される処理要求信号に応じてC
PU使用率OR−1を取得する(図5,S100)。処
理制御部124は、取得したCPU使用率OR−1が、
設定値TH以上である場合には、S106の処理に進む
(図5,S102)。
22は、クライアントノード14b−1からの処理要求
信号を受信し、処理制御部124に対して出力する。処
理制御部124は、入力される処理要求信号に応じてC
PU使用率OR−1を取得する(図5,S100)。処
理制御部124は、取得したCPU使用率OR−1が、
設定値TH以上である場合には、S106の処理に進む
(図5,S102)。
【0061】ステップ106(S106)において、処
理制御部124は、処理実行部132を制御し、クライ
アントノード14b−1から要求されたデータベース検
索処理を行なわせる。処理実行部132は、データベー
ス128からデータベース検索処理用のプログラムの供
給を受け、供給されたプログラムを実行して処理結果を
送信処理部134に対して出力する。
理制御部124は、処理実行部132を制御し、クライ
アントノード14b−1から要求されたデータベース検
索処理を行なわせる。処理実行部132は、データベー
ス128からデータベース検索処理用のプログラムの供
給を受け、供給されたプログラムを実行して処理結果を
送信処理部134に対して出力する。
【0062】ステップ108(S108)において、送
信処理部134は、処理実行部132から入力されたデ
ータベース検索処理の結果を、送信処理部134および
ネットワーク16a,16bを介してクライアントノー
ド14b−1に対して送信する。クライアントノード1
4b−1において、受信処理部146は、サーバノード
12からのデータベース検索処理結果を受信すると、受
信した処理結果を結果出力部156に対して出力する。
結果出力部156は、受信処理部146から入力された
データベース検索処理の結果をモニタ装置あるいはHD
D等に対して出力する。
信処理部134は、処理実行部132から入力されたデ
ータベース検索処理の結果を、送信処理部134および
ネットワーク16a,16bを介してクライアントノー
ド14b−1に対して送信する。クライアントノード1
4b−1において、受信処理部146は、サーバノード
12からのデータベース検索処理結果を受信すると、受
信した処理結果を結果出力部156に対して出力する。
結果出力部156は、受信処理部146から入力された
データベース検索処理の結果をモニタ装置あるいはHD
D等に対して出力する。
【0063】[インターネット1における負荷分散の効
果]以下、図6〜10を参照して、上述した分散処理方
法をインターネット1に適用することにより、サーバノ
ード12とクライアントノード14との間で実現される
処理負荷の分散の効果を説明する。図6は、1台のサー
バノード12に対して1台のクライアントノード14が
データベース検索処理を要求する条件で、シュミレーシ
ョンにより算出したサーバノード12のCPU使用率お
よび応答時間の一例を示す図である。図7は、1台のサ
ーバノード12に対して2台のクライアントノード14
がデータベース検索処理を要求する条件で、シュミレー
ションにより算出したサーバノード12のCPU使用率
および応答時間の一例を示す図である。図8は、1台の
クライアントノード14がデータベース検索処理用のア
プリケーションプログラムを実行し、サーバノード12
のデータベースを検索処理する条件で、シュミレーショ
ンにより算出したサーバノード12のCPU使用率およ
び応答時間の一例を示す図である。
果]以下、図6〜10を参照して、上述した分散処理方
法をインターネット1に適用することにより、サーバノ
ード12とクライアントノード14との間で実現される
処理負荷の分散の効果を説明する。図6は、1台のサー
バノード12に対して1台のクライアントノード14が
データベース検索処理を要求する条件で、シュミレーシ
ョンにより算出したサーバノード12のCPU使用率お
よび応答時間の一例を示す図である。図7は、1台のサ
ーバノード12に対して2台のクライアントノード14
がデータベース検索処理を要求する条件で、シュミレー
ションにより算出したサーバノード12のCPU使用率
および応答時間の一例を示す図である。図8は、1台の
クライアントノード14がデータベース検索処理用のア
プリケーションプログラムを実行し、サーバノード12
のデータベースを検索処理する条件で、シュミレーショ
ンにより算出したサーバノード12のCPU使用率およ
び応答時間の一例を示す図である。
【0064】図9は、図1に示したインターネット1に
おいてクライアントノード14の数を変更し、サーバノ
ード12のみでデータベース検索処理を行なう条件、お
よび、クライアントノード14がわでアプリケーション
プログラムを実行してデータベース検索処理を行なう条
件で、シュミレーションにより算出したデータベース検
索処理の応答時間の一例を示す図である。図10は、図
1に示したインターネット1においてクライアントノー
ド14の数を変更し、実施形態として上述した分散処理
方法により負荷分散を行なう条件で、シュミレーション
により算出したデータベース検索処理の応答時間の一例
を、図9に示した各応答時間と対比させて示す図であ
る。
おいてクライアントノード14の数を変更し、サーバノ
ード12のみでデータベース検索処理を行なう条件、お
よび、クライアントノード14がわでアプリケーション
プログラムを実行してデータベース検索処理を行なう条
件で、シュミレーションにより算出したデータベース検
索処理の応答時間の一例を示す図である。図10は、図
1に示したインターネット1においてクライアントノー
ド14の数を変更し、実施形態として上述した分散処理
方法により負荷分散を行なう条件で、シュミレーション
により算出したデータベース検索処理の応答時間の一例
を、図9に示した各応答時間と対比させて示す図であ
る。
【0065】なお、図6〜図10に示したシュミレーシ
ョンの条件は、下表1に示す通りである。なお、図6〜
図8に示したシュミレーションと、図9,図10に示し
たシュミレーションとは別々の時期に行われたため、シ
ュミレーションに用いたコンピュータのその時々の処理
負荷等の差に起因する不一致があるが、処理時間等の変
化傾向を確認するためには本質的な不具合はない。
ョンの条件は、下表1に示す通りである。なお、図6〜
図8に示したシュミレーションと、図9,図10に示し
たシュミレーションとは別々の時期に行われたため、シ
ュミレーションに用いたコンピュータのその時々の処理
負荷等の差に起因する不一致があるが、処理時間等の変
化傾向を確認するためには本質的な不具合はない。
【0066】
【表1】 (表1:図6〜図10に示した各数値の算出条件) 1.クライアントの条件: CPU ・・・i80486(インテル社)/66MHz メモリ容量 ・・・32MB 作動プログラム ・・・Webブラウザ(ネットスケープ社) 2.サーバの条件: CPU ・・・i80486(インテル社)/100MHz メモリ容量 ・・・48MB 作動プログラム ・・・DB2サーバ(IBM社) Webサーバ(マイクロソフト社) JDBCデーモン(IBM社) 3.処理(タスク)の内容・・・50000レコードから1000件をヒットさ せるセレクト文 但し、CPU使用率および応答時間等を明確化するため
に、意図的に、比較的処理能力が低いCPUおよび少な
いメモリ容量を算出条件とした。
に、意図的に、比較的処理能力が低いCPUおよび少な
いメモリ容量を算出条件とした。
【0067】図6に示すように、1台のクライアントノ
ード14のデータベース検索処理要求に応じてサーバノ
ード12が処理を行なうと、応答時間は7.5秒と短く
なるが、CPUの使用率はほぼ100%となり、サーバ
ノード12のCPUの処理負荷が大変大きくなることが
わかる。さらに、図7に示すように、2台のクライアン
トノード14のデータベース検索処理要求に応じてサー
バノード12が処理を行なうと、応答時間は20.7秒
にもなり、CPUの使用率も大きくなる。これらの原因
は、サーバのメモリ容量が少ないために、スワップが生
じているためである。
ード14のデータベース検索処理要求に応じてサーバノ
ード12が処理を行なうと、応答時間は7.5秒と短く
なるが、CPUの使用率はほぼ100%となり、サーバ
ノード12のCPUの処理負荷が大変大きくなることが
わかる。さらに、図7に示すように、2台のクライアン
トノード14のデータベース検索処理要求に応じてサー
バノード12が処理を行なうと、応答時間は20.7秒
にもなり、CPUの使用率も大きくなる。これらの原因
は、サーバのメモリ容量が少ないために、スワップが生
じているためである。
【0068】また、図8に示すように、クライアントノ
ード14がアプリケーションプログラムを実行してデー
タベースの検索処理を行なうと、サーバ12上のSer
vletが用いられないので、サーバノード12のCP
U使用率は低く抑えられるが、応答時間が12.5秒と
長くなる。
ード14がアプリケーションプログラムを実行してデー
タベースの検索処理を行なうと、サーバ12上のSer
vletが用いられないので、サーバノード12のCP
U使用率は低く抑えられるが、応答時間が12.5秒と
長くなる。
【0069】さらに、クライアント数を変更し、サーバ
ノード12側でデータベース検索処理を行なう場合と、
全てのクライアントノード14でアプリケーションプロ
グラムを実行してサーバノード12のデータベース検索
処理を行なう場合とで応答時間を算出すると、図9に示
すように、クライアントノード14が2台までは、サー
バノード12側で処理を行なった方が処理が速く、クラ
イアントノード14が3台以上では、クライアントノー
ド14でアプリケーションプログラムを実行して処理を
行なった方が高速に処理できることがわかる。
ノード12側でデータベース検索処理を行なう場合と、
全てのクライアントノード14でアプリケーションプロ
グラムを実行してサーバノード12のデータベース検索
処理を行なう場合とで応答時間を算出すると、図9に示
すように、クライアントノード14が2台までは、サー
バノード12側で処理を行なった方が処理が速く、クラ
イアントノード14が3台以上では、クライアントノー
ド14でアプリケーションプログラムを実行して処理を
行なった方が高速に処理できることがわかる。
【0070】本発明にかかる分散処理方法をインターネ
ット1に適応し、サーバノード12とクライアントノー
ド14との間で負荷分散を図ると、図10に示すよう
に、応答時間は、クライアントノード14の数が2台以
下の場合には、クライアントノード14がアプリケーシ
ョンプログラムを実行せずにサーバノード12側がデー
タベース検索処理を行なう場合の応答時間に、クライア
ントノード14が3台以上の場合には、クライアントノ
ード14がアプリケーションプログラムを実行してデー
タベース検索処理を行なう場合の応答時間にほぼ等しく
なり、サーバノード12とクライアントノード14との
間で処理負荷が最適に分散され、インターネット1内の
資源が有効利用されていることがわかる。
ット1に適応し、サーバノード12とクライアントノー
ド14との間で負荷分散を図ると、図10に示すよう
に、応答時間は、クライアントノード14の数が2台以
下の場合には、クライアントノード14がアプリケーシ
ョンプログラムを実行せずにサーバノード12側がデー
タベース検索処理を行なう場合の応答時間に、クライア
ントノード14が3台以上の場合には、クライアントノ
ード14がアプリケーションプログラムを実行してデー
タベース検索処理を行なう場合の応答時間にほぼ等しく
なり、サーバノード12とクライアントノード14との
間で処理負荷が最適に分散され、インターネット1内の
資源が有効利用されていることがわかる。
【0071】つまり、ユーザーは、サーバノード12に
対して処理を要求するクライアントノード14の数が少
ない場合には、クライアントノード14よりも高速なC
PUを用い、より大きいメモリ容量を有するサーバノー
ド12の資源を有効に利用することにより、クライアン
トノード14がアプリケーションプログラムを実行する
場合に比べて非常に短い応答時間で処理結果を得ること
ができる。逆に、サーバノード12に対して処理を要求
するクライアントノード14の数が多くなった場合に
は、各サーバノード12の資源が有効利用され、クライ
アントノード14への過度の処理負荷の集中が発生しな
いので、ユーザーは、処理結果を得るまでに不要に長い
応答時間、待たされるという不具合を被ることはない。
対して処理を要求するクライアントノード14の数が少
ない場合には、クライアントノード14よりも高速なC
PUを用い、より大きいメモリ容量を有するサーバノー
ド12の資源を有効に利用することにより、クライアン
トノード14がアプリケーションプログラムを実行する
場合に比べて非常に短い応答時間で処理結果を得ること
ができる。逆に、サーバノード12に対して処理を要求
するクライアントノード14の数が多くなった場合に
は、各サーバノード12の資源が有効利用され、クライ
アントノード14への過度の処理負荷の集中が発生しな
いので、ユーザーは、処理結果を得るまでに不要に長い
応答時間、待たされるという不具合を被ることはない。
【0072】さらに、従来の技術として示した負荷分散
方法(文献1〜3)は、予め登録された情報に基づいて
処理(タスク)を実行するノードを決定するので、処理
を実行するノードの変更には、ノードに設定された情報
を書き直す必要があり、動的な処理負荷の分散がしにく
いのに対し、本発明にかかる分散処理方法は、処理が要
求されるたびに、サーバノードの処理量に応じて、動的
に処理の実行に最適なノードを判断・選択することがで
きる。従って、本発明にかかる分散処理方法によれば、
いずれのノードが処理を行うかを示す情報をノードに予
め設定することなしに、常にシステム全体の処理負荷を
最適に分散することができる。
方法(文献1〜3)は、予め登録された情報に基づいて
処理(タスク)を実行するノードを決定するので、処理
を実行するノードの変更には、ノードに設定された情報
を書き直す必要があり、動的な処理負荷の分散がしにく
いのに対し、本発明にかかる分散処理方法は、処理が要
求されるたびに、サーバノードの処理量に応じて、動的
に処理の実行に最適なノードを判断・選択することがで
きる。従って、本発明にかかる分散処理方法によれば、
いずれのノードが処理を行うかを示す情報をノードに予
め設定することなしに、常にシステム全体の処理負荷を
最適に分散することができる。
【0073】また、本発明にかかる分散処理方法を実現
するための処理の内容は、図5に示したように簡単なの
で、インターネット1のサーバノード12およびクライ
アントノード14に付加すべきソフトウェアの規模は小
さく、また、開発費用も安価である。従って、本発明に
かかる分散処理方法を、既存のネットワークに適応する
ことは容易であり、しかも、大きい費用を要さない。ま
た、本発明にかかる分散処理方法は、規模に関わりなく
全てのネットワークに適用可能である。
するための処理の内容は、図5に示したように簡単なの
で、インターネット1のサーバノード12およびクライ
アントノード14に付加すべきソフトウェアの規模は小
さく、また、開発費用も安価である。従って、本発明に
かかる分散処理方法を、既存のネットワークに適応する
ことは容易であり、しかも、大きい費用を要さない。ま
た、本発明にかかる分散処理方法は、規模に関わりなく
全てのネットワークに適用可能である。
【0074】なお、図1に示したインターネット1の構
成は例示であって、本発明にかかる分散処理方法は、イ
ンターネットの他、イントラネットおよび並列処理コン
ピュータシステム等、他のシステムに広く応用可能であ
る。また、上述した実施形態においては、サーバノード
の処理量を判断するための数値としてCPUの使用率を
用いる場合を例示したが、サーバノードが処理している
プロセス数あるいはプロセス内に存在するスレッド数
(例えば、JDBCのリスナーのスレッド数)等の他の
数値を用いることができる。
成は例示であって、本発明にかかる分散処理方法は、イ
ンターネットの他、イントラネットおよび並列処理コン
ピュータシステム等、他のシステムに広く応用可能であ
る。また、上述した実施形態においては、サーバノード
の処理量を判断するための数値としてCPUの使用率を
用いる場合を例示したが、サーバノードが処理している
プロセス数あるいはプロセス内に存在するスレッド数
(例えば、JDBCのリスナーのスレッド数)等の他の
数値を用いることができる。
【0075】つまり、サーバノードのOSがサービスコ
ールに応じて提供可能な資源情報は、本発明にかかる分
散処理方法において、処理量を判断するための数値とし
て用いることができ、具体的に、どのような数値を用い
てサーバノードの処理量を判断するかは、アプリケーシ
ョンプログラムの処理内容、および、いかなる場合に処
理をクライアントノードに行わせるかによって、最適な
ものを用いるとよい。
ールに応じて提供可能な資源情報は、本発明にかかる分
散処理方法において、処理量を判断するための数値とし
て用いることができ、具体的に、どのような数値を用い
てサーバノードの処理量を判断するかは、アプリケーシ
ョンプログラムの処理内容、および、いかなる場合に処
理をクライアントノードに行わせるかによって、最適な
ものを用いるとよい。
【0076】また、図2および図3に示したサーバノー
ド12およびクライアントノード14の構成は例示であ
って、各構成部分は、同一の機能および性能を実現可能
である限り、ソフトウェアによるかハードウェアによる
か等を問わない。本実施例において例示した処理、ソフ
トウェアおよびハードウェアは例示であって、本発明に
かかる分散処理方法は、クライアント装置とサーバ装置
との間で分散処理を行うシステムに広く応用可能であ
る。
ド12およびクライアントノード14の構成は例示であ
って、各構成部分は、同一の機能および性能を実現可能
である限り、ソフトウェアによるかハードウェアによる
か等を問わない。本実施例において例示した処理、ソフ
トウェアおよびハードウェアは例示であって、本発明に
かかる分散処理方法は、クライアント装置とサーバ装置
との間で分散処理を行うシステムに広く応用可能であ
る。
【0077】
【発明の効果】上述したように、本発明にかかる分散処
理システム、クライアントノード、サーバノードおよび
分散処理方法によれば、クライアントノードとサーバノ
ードとがネットワークを介して通信を行なうクライアン
ト・サーバシステムにおいて、クライアントノードとサ
ーバノートとの間で適切に負荷分散を行なうことによ
り、システム全体としてクライアントノードが処理要求
を出してから処理結果を得るまでの応答時間を最短にす
ることができる。
理システム、クライアントノード、サーバノードおよび
分散処理方法によれば、クライアントノードとサーバノ
ードとがネットワークを介して通信を行なうクライアン
ト・サーバシステムにおいて、クライアントノードとサ
ーバノートとの間で適切に負荷分散を行なうことによ
り、システム全体としてクライアントノードが処理要求
を出してから処理結果を得るまでの応答時間を最短にす
ることができる。
【0078】また、本発明にかかる分散処理システム、
クライアントノード、サーバノードおよび分散処理方法
によれば、大幅なシステム変更および多額の投資なし
に、既存のクライアント・サーバシステムに適応するこ
とができ、しかも、応答時間の短縮効果が大きい。
クライアントノード、サーバノードおよび分散処理方法
によれば、大幅なシステム変更および多額の投資なし
に、既存のクライアント・サーバシステムに適応するこ
とができ、しかも、応答時間の短縮効果が大きい。
【図1】本発明にかかる分散処理方法が適応されるイン
ターネットの構成を例示する図である。
ターネットの構成を例示する図である。
【図2】図1に示したサーバノードのソフトウェア構成
を例示する図である。
を例示する図である。
【図3】図1に示したクライアントノードのソフトウェ
ア構成を示す図である。
ア構成を示す図である。
【図4】(A)は、クライアントノード側で処理を行な
う場合に、サーバノードおよびクライアントノード14
の間で伝送される信号を示すシーケンス図であり、
(B)は、サーバノード側で処理を行なう場合に、サー
バノードおよびクライアントノードの間で伝送される信
号を示すシーケンス図である。
う場合に、サーバノードおよびクライアントノード14
の間で伝送される信号を示すシーケンス図であり、
(B)は、サーバノード側で処理を行なう場合に、サー
バノードおよびクライアントノードの間で伝送される信
号を示すシーケンス図である。
【図5】図1に示したクライアントノードの処理内容を
示すフローチャートである。
示すフローチャートである。
【図6】1台のサーバノードに対して1台のクライアン
トノードがデータベース検索処理を要求する条件で、シ
ュミレーションにより算出したサーバノードのCPU使
用率および応答時間の一例を示す図である。
トノードがデータベース検索処理を要求する条件で、シ
ュミレーションにより算出したサーバノードのCPU使
用率および応答時間の一例を示す図である。
【図7】1台のサーバノードに対して2台のクライアン
トノードがデータベース検索処理を要求する条件で、シ
ュミレーションにより算出したサーバノードのCPU使
用率および応答時間の一例を示す図である。
トノードがデータベース検索処理を要求する条件で、シ
ュミレーションにより算出したサーバノードのCPU使
用率および応答時間の一例を示す図である。
【図8】1台のクライアントノードがデータベース検索
処理用のアプリケーションプログラムを実行し、サーバ
ノードのデータベースを検索処理する条件で、シュミレ
ーションにより算出したサーバノードのCPU使用率お
よび応答時間の一例を示す図である。
処理用のアプリケーションプログラムを実行し、サーバ
ノードのデータベースを検索処理する条件で、シュミレ
ーションにより算出したサーバノードのCPU使用率お
よび応答時間の一例を示す図である。
【図9】図1に示したインターネットにおいてクライア
ントノードの数を変更し、サーバノードのみでデータベ
ース検索処理を行なう条件、および、クライアントノー
ド側でアプリケーションプログラムを実行してデータベ
ース検索処理を行なう条件で、シュミレーションにより
算出したデータベース検索処理の応答時間の一例を示す
図である。
ントノードの数を変更し、サーバノードのみでデータベ
ース検索処理を行なう条件、および、クライアントノー
ド側でアプリケーションプログラムを実行してデータベ
ース検索処理を行なう条件で、シュミレーションにより
算出したデータベース検索処理の応答時間の一例を示す
図である。
【図10】図1に示したインターネットにおいてクライ
アントノードの数を変更し、実施形態として上述した分
散処理方法により負荷分散を行なう条件で、シュミレー
ションにより算出したデータベース検索処理の応答時間
の一例を、図9に示した各応答時間と対比させて示す図
である。
アントノードの数を変更し、実施形態として上述した分
散処理方法により負荷分散を行なう条件で、シュミレー
ションにより算出したデータベース検索処理の応答時間
の一例を、図9に示した各応答時間と対比させて示す図
である。
1・・・インターネット 10a,10b・・・ネットワークシステム 12・・・サーバノード 120・・・オペレーションシステム 122・・・受信処理部 124・・・処理制御部 126・・・HTML作成部 128・・・データベース 130・・・アプリケーションプログラム送信部 132・・・処理実行部 134・・・送信処理部 14,14a−1〜14a−m,14b−1〜14b−
n・・・クライアントノード 140・・・オペレーションシステム 142・・・ユーザーインターフェース部 144・・・処理要求部 146・・・受信処理部 148・・・HTML解釈部 150・・・アプリケーションプログラム要求部 152・・・処理実行部 154・・・送信処理部 156・・・結果出力部 16a,16b・・・ネットワーク
n・・・クライアントノード 140・・・オペレーションシステム 142・・・ユーザーインターフェース部 144・・・処理要求部 146・・・受信処理部 148・・・HTML解釈部 150・・・アプリケーションプログラム要求部 152・・・処理実行部 154・・・送信処理部 156・・・結果出力部 16a,16b・・・ネットワーク
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成10年5月15日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0050
【補正方法】変更
【補正内容】
【0050】[結果出力部156]結果出力部156
は、処理実行部152がサーバノード12から受信した
アプリケーションプログラムを実行して得られたデータ
ベース検索処理の結果、または、受信処理部146から
入力されるサーバノード12によるデータベース検索処
理の結果を、最終的な処理結果として、クライアントノ
ード14に接続されたモニタ装置(図示せず)に表示
し、あるいは、ハードディスク装置(HDD)等の記録
装置(図示せず)等に対して出力する。なお、結果出力
部156の機能も、受信処理部146と同様に、オペレ
ーションシステム140に含めることが可能である。
は、処理実行部152がサーバノード12から受信した
アプリケーションプログラムを実行して得られたデータ
ベース検索処理の結果、または、受信処理部146から
入力されるサーバノード12によるデータベース検索処
理の結果を、最終的な処理結果として、クライアントノ
ード14に接続されたモニタ装置(図示せず)に表示
し、あるいは、ハードディスク装置(HDD)等の記録
装置(図示せず)等に対して出力する。なお、結果出力
部156の機能も、受信処理部146と同様に、オペレ
ーションシステム140に含めることが可能である。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0052
【補正方法】変更
【補正内容】
【0052】[クライアントノード14側で処理を行な
う場合のインターネット1の動作]まず、図4(A)お
よび図5を参照して、クライアントノード14b−1か
らサーバノード12に対してデータベース検索処理を要
求し、サーバノード12側でデータベース検索処理を行
なう場合を例に、インターネット1の動作を説明する。
なお、以下、説明の明確化のために、クライアントノー
ド14b−1からサーバノード12に対してデータベー
ス検索処理を要求する場合を例示するが、クライアント
ノード14a−1〜クライアントノード14b−nのい
ずれがサーバノード12に対してデータベース検索処理
あるいはその他の処理を要求する場合でも、インターネ
ット1の動作は同様である。
う場合のインターネット1の動作]まず、図4(A)お
よび図5を参照して、クライアントノード14b−1か
らサーバノード12に対してデータベース検索処理を要
求し、サーバノード12側でデータベース検索処理を行
なう場合を例に、インターネット1の動作を説明する。
なお、以下、説明の明確化のために、クライアントノー
ド14b−1からサーバノード12に対してデータベー
ス検索処理を要求する場合を例示するが、クライアント
ノード14a−1〜クライアントノード14b−nのい
ずれがサーバノード12に対してデータベース検索処理
あるいはその他の処理を要求する場合でも、インターネ
ット1の動作は同様である。
Claims (8)
- 【請求項1】相互に通信を行なうクライアントノードと
サーバノードとをそれぞれ1つ以上、含む分散処理シス
テムであって、 前記クライアントノードはそれぞれ、 前記サーバノードに対して所定の処理を要求する処理要
求手段と、 前記所定の処理の要求に応じて前記サーバノードから返
された応答信号の内容に従って、要求した前記所定の処
理用のプログラムを前記サーバノードから受け入れて実
行する処理プログラム実行手段と、 前記サーバノードから受け入れた前記プログラムの実行
結果、または、前記サーバノードによる前記所定の処理
の結果を受け入れて、前記所定の処理の結果を取得する
処理結果取得手段とを有し、 前記サーバノードそれぞれは、 当該サーバノードの処理量を測定する処理量測定手段
と、 測定した当該サーバノードの処理量に応じて、前記所定
の処理を要求した前記クライアントノードそれぞれに対
して、少なくとも、前記所定の処理を実行させる前記応
答信号を返す応答手段と、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理を実行させる場合に、前記所定の
処理用のプログラムを前記クライアントノードそれぞれ
に送信するプログラム送信手段と、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理用を実行させない場合に、要求さ
れた前記所定の処理を実行し、実行結果を前記クライア
ントノードそれぞれに送信する処理実行手段とを有する
分散処理システム。 - 【請求項2】前記サーバノードそれぞれにおいて、測定
した当該サーバノードの処理量が所定の設定値より多い
場合に、 前記応答手段は、前記所定の処理を要求した前記クライ
アントノードそれぞれに対して、前記所定の処理を実行
させる前記応答信号を返し、 前記プログラム送信手段は、前記所定の処理用のプログ
ラムを前記クライアントノードそれぞれに送信する請求
項1に記載の分散処理システム。 - 【請求項3】前記サーバノードそれぞれにおいて、測定
した当該サーバノードの処理量が所定の設定値より少な
い場合に、 前記処理実行手段は、要求された前記所定の処理を実行
し、実行結果を前記クライアントノードそれぞれに送信
する請求項1または2に記載の分散処理システム。 - 【請求項4】相互に通信を行なうクライアントノードと
サーバノードとをそれぞれ1つ以上、含む分散処理シス
テムにおいて、 前記サーバノードに対して所定の処理を要求する処理要
求手段と、 前記所定の処理の要求に応じて前記サーバノードから返
された応答信号の内容に従って、要求した前記所定の処
理用のプログラムを前記サーバノードから受け入れて実
行する処理プログラム実行手段と、 前記サーバノードから受け入れた前記プログラムの実行
結果、または、前記サーバノードによる前記所定の処理
の結果を受け入れて、前記所定の処理の結果を取得する
処理結果取得手段とを有するクライアントノード。 - 【請求項5】相互に通信を行なうクライアントノードと
サーバノードとをそれぞれ1つ以上、含む分散処理シス
テムにおいて、 当該サーバノードの処理量を測定する処理量測定手段
と、 測定した当該サーバノードの処理量に応じて、所定の処
理を要求した前記クライアントノードそれぞれに対し
て、少なくとも、前記所定の処理を実行させる応答信号
を返す応答手段と、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理を実行させる場合に、前記所定の
処理用のプログラムを前記クライアントノードそれぞれ
に送信するプログラム送信手段と、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理用を実行させない場合に、要求さ
れた前記所定の処理を実行し、実行結果を前記クライア
ントノードそれぞれに送信する処理実行手段とを有する
サーバノード。 - 【請求項6】相互に通信を行なうクライアントノードと
サーバノードとをそれぞれ1つ以上、含む分散処理シス
テムにおいて、 前記クライアントノードはそれぞれ、 前記サーバノードに対して所定の処理を要求し、 前記所定の処理の要求に応じて前記サーバノードから返
された応答信号の内容に従って、要求した前記所定の処
理用のプログラムを前記サーバノードから受け入れて実
行し、 前記サーバノードから受け入れた前記プログラムの実行
結果、または、前記サーバノードによる前記所定の処理
の結果を受け入れて、前記所定の処理の結果を取得し、 前記サーバノードそれぞれは、 当該サーバノードの処理量を測定し、 測定した当該サーバノードの処理量に応じて、前記所定
の処理を要求した前記クライアントノードそれぞれに対
して、少なくとも、前記所定の処理を実行させる前記応
答信号を返し、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理を実行させる場合に、前記所定の
処理用のプログラムを前記クライアントノードそれぞれ
に送信し、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理用を実行させない場合に、要求さ
れた前記所定の処理を実行し、実行結果を前記クライア
ントノードそれぞれに送信する分散処理方法。 - 【請求項7】相互に通信を行なうクライアントノードと
サーバノードとをそれぞれ1つ以上、含む分散処理シス
テムのクライアントノードにおいて、 前記サーバノードに対して所定の処理を要求するステッ
プと、 前記所定の処理の要求に応じて前記サーバノードから返
された応答信号の内容に従って、要求した前記所定の処
理用のプログラムを前記サーバノードから受け入れて実
行するステップと、 前記サーバノードから受け入れた前記プログラムの実行
結果、または、前記サーバノードによる前記所定の処理
の結果を受け入れて、前記所定の処理の結果を取得する
ステップとを実行するコンピュータプログラムを記録し
たコンピュータにより読み取り可能な記録媒体。 - 【請求項8】相互に通信を行なうクライアントノードと
サーバノードとをそれぞれ1つ以上、含む分散処理シス
テムのサーバノードにおいて、 当該サーバノードの処理量を測定するステップと、 測定した当該サーバノードの処理量に応じて、所定の処
理を要求した前記クライアントノードそれぞれに対し
て、少なくとも、前記所定の処理を実行させる応答信号
を返すステップと、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理を実行させる場合に、前記所定の
処理用のプログラムを前記クライアントノードそれぞれ
に送信するステップと、 前記所定の処理を要求した前記クライアントノードそれ
ぞれに前記所定の処理用を実行させない場合に、要求さ
れた前記所定の処理を実行し、実行結果を前記クライア
ントノードそれぞれに送信するステップとをコンピュー
タに実行させるコンピュータプログラムを記録したコン
ピュータにより読み取り可能な記録媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9204144A JPH1153326A (ja) | 1997-07-30 | 1997-07-30 | 分散処理システム、クライアントノード、サーバノードおよび分散処理方法 |
US09/124,435 US6385636B1 (en) | 1997-07-30 | 1998-07-29 | Distributed processing system and client node, server node and distributed processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9204144A JPH1153326A (ja) | 1997-07-30 | 1997-07-30 | 分散処理システム、クライアントノード、サーバノードおよび分散処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1153326A true JPH1153326A (ja) | 1999-02-26 |
Family
ID=16485574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9204144A Pending JPH1153326A (ja) | 1997-07-30 | 1997-07-30 | 分散処理システム、クライアントノード、サーバノードおよび分散処理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6385636B1 (ja) |
JP (1) | JPH1153326A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010034972A (ko) * | 2000-05-10 | 2001-05-07 | 이병철 | 동적 디엔에스 바인딩 시스템 |
JP2008104173A (ja) * | 2006-10-05 | 2008-05-01 | Avaya Technology Llc | 遠隔通信フィーチャを分散処理する集中コントローラ |
JP2009064211A (ja) * | 2007-09-06 | 2009-03-26 | Nec Corp | 分散システム |
JP2010134702A (ja) * | 2008-12-04 | 2010-06-17 | Nec Corp | 情報処理システム、サービス提供方法、装置及びプログラム |
WO2017141339A1 (ja) | 2016-02-15 | 2017-08-24 | 富士通株式会社 | 処理制御プログラム、処理制御方法、情報処理装置、および通信装置 |
CN109408238A (zh) * | 2018-10-31 | 2019-03-01 | 西安万像电子科技有限公司 | 信息处理方法及装置 |
CN113704358A (zh) * | 2021-09-02 | 2021-11-26 | 湖南麒麟信安科技股份有限公司 | 分布式任务协同处理方法、装置和计算机设备 |
JP2022087620A (ja) * | 2020-12-01 | 2022-06-13 | トヨタ自動車株式会社 | 機械学習方法及び機械学習システム |
Families Citing this family (109)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324685B1 (en) * | 1998-03-18 | 2001-11-27 | Becomm Corporation | Applet server that provides applets in various forms |
JP3558887B2 (ja) * | 1998-08-28 | 2004-08-25 | 株式会社東芝 | 分散システム、その制御方法、および記憶媒体 |
JP2000172657A (ja) * | 1998-12-08 | 2000-06-23 | Fujitsu Ltd | 分散処理システム、分散処理方法、その方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体、サーバ装置およびクライアント装置 |
US6735717B1 (en) | 2000-04-13 | 2004-05-11 | Gnp Computers, Inc. | Distributed computing system clustering model providing soft real-time responsiveness and continuous availability |
JP2001344199A (ja) * | 2000-06-02 | 2001-12-14 | Nec Corp | 分散型処理システム及び方法並びに記録媒体 |
US7587497B1 (en) * | 2000-06-20 | 2009-09-08 | Palmsource Inc. | Information exchange between a handheld device and another computer system using an exchange manager and uniform resource locator (URL) strings |
US20030014461A1 (en) * | 2001-01-11 | 2003-01-16 | Axis Software Co., Ltd. | Client control system for routine task |
JP3716753B2 (ja) * | 2001-03-21 | 2005-11-16 | 日本電気株式会社 | マルチプロセッサ構成の計算機間におけるトランザクション負荷分散方法及び方式並びにプログラム |
GB0119145D0 (en) * | 2001-08-06 | 2001-09-26 | Nokia Corp | Controlling processing networks |
FR2829330B1 (fr) * | 2001-08-31 | 2003-11-28 | Canon Kk | Procede de demande de reception du resultat d'execution d'une fonction a distance a une date predeterminee |
US7599293B1 (en) * | 2002-04-25 | 2009-10-06 | Lawrence Michael Bain | System and method for network traffic and I/O transaction monitoring of a high speed communications network |
US20040034807A1 (en) * | 2002-08-14 | 2004-02-19 | Gnp Computers, Inc. | Roving servers in a clustered telecommunication distributed computer system |
US7065756B2 (en) * | 2002-08-22 | 2006-06-20 | International Business Machines Corporation | Optimization of portable operations in a client-server environment |
KR100485974B1 (ko) * | 2002-10-10 | 2005-05-03 | 엔에이치엔(주) | 컨텐츠 제공 방법 및 시스템 |
US7281248B2 (en) * | 2002-11-19 | 2007-10-09 | Microsoft Corporation | Virtualized and realized user interface controls |
US7398291B2 (en) * | 2003-06-26 | 2008-07-08 | International Business Machines Corporation | Method, system and program product for providing a status of a transaction with an application on a server |
US7475108B2 (en) * | 2003-06-26 | 2009-01-06 | International Business Machines Corporation | Slow-dynamic load balancing method |
US7512949B2 (en) * | 2003-09-03 | 2009-03-31 | International Business Machines Corporation | Status hub used by autonomic application servers |
MX2007003315A (es) * | 2004-09-23 | 2007-11-15 | Airclic Inc | Metodo de automatizacion de proceso movil. |
US7590744B2 (en) * | 2004-12-15 | 2009-09-15 | Guard Insurance Group | Remote communication system and method implementing a session server and one or more object servers |
US20060130124A1 (en) * | 2004-12-15 | 2006-06-15 | Guard Insurance Group | A Remote Communication System and Method Implementing a Session Server and One or More Object Servers |
CA2538503C (en) * | 2005-03-14 | 2014-05-13 | Attilla Danko | Process scheduler employing adaptive partitioning of process threads |
US8387052B2 (en) | 2005-03-14 | 2013-02-26 | Qnx Software Systems Limited | Adaptive partitioning for operating system |
US9361156B2 (en) | 2005-03-14 | 2016-06-07 | 2236008 Ontario Inc. | Adaptive partitioning for operating system |
US8245230B2 (en) * | 2005-03-14 | 2012-08-14 | Qnx Software Systems Limited | Adaptive partitioning scheduler for multiprocessing system |
JP4781089B2 (ja) * | 2005-11-15 | 2011-09-28 | 株式会社ソニー・コンピュータエンタテインメント | タスク割り当て方法およびタスク割り当て装置 |
JP5065050B2 (ja) | 2005-12-28 | 2012-10-31 | インターナショナル・ビジネス・マシーンズ・コーポレーション | クライアント・サーバ・システムにおける負荷分散 |
JP4324975B2 (ja) * | 2006-09-27 | 2009-09-02 | 日本電気株式会社 | 負荷低減システム、計算機、及び負荷低減方法 |
JP4906686B2 (ja) * | 2007-11-19 | 2012-03-28 | 三菱電機株式会社 | 仮想マシンサーバサイジング装置及び仮想マシンサーバサイジング方法及び仮想マシンサーバサイジングプログラム |
US8601166B2 (en) * | 2008-05-14 | 2013-12-03 | Nec Corporation | Information processing system and information processing method for generating distribution and synchronization rules in a client/server environment based on operation environment data |
US8250182B2 (en) * | 2008-11-30 | 2012-08-21 | Red Hat Israel, Ltd. | Dynamic loading between a server and a client |
WO2011080809A1 (ja) * | 2009-12-29 | 2011-07-07 | 株式会社 東芝 | サーバ |
EP2450792B1 (en) * | 2010-10-22 | 2020-01-15 | Orange | Method for allowing distributed running of an application and related pre-processing unit |
EP2450794B1 (en) | 2010-10-22 | 2018-08-29 | Orange | Method for allowing distributed running of an application and related device and inference engine |
CN102480512B (zh) | 2010-11-29 | 2015-08-12 | 国际商业机器公司 | 用于扩展服务器端处理能力的方法和装置 |
EP2563028A1 (en) * | 2011-08-23 | 2013-02-27 | Alcatel Lucent | Media procesing load sharing |
US9323556B2 (en) | 2014-09-30 | 2016-04-26 | Amazon Technologies, Inc. | Programmatic event detection and message generation for requests to execute program code |
US9830193B1 (en) | 2014-09-30 | 2017-11-28 | Amazon Technologies, Inc. | Automatic management of low latency computational capacity |
US9678773B1 (en) | 2014-09-30 | 2017-06-13 | Amazon Technologies, Inc. | Low latency computational capacity provisioning |
US9600312B2 (en) | 2014-09-30 | 2017-03-21 | Amazon Technologies, Inc. | Threading as a service |
US10048974B1 (en) | 2014-09-30 | 2018-08-14 | Amazon Technologies, Inc. | Message-based computation request scheduling |
US9715402B2 (en) | 2014-09-30 | 2017-07-25 | Amazon Technologies, Inc. | Dynamic code deployment and versioning |
US9146764B1 (en) | 2014-09-30 | 2015-09-29 | Amazon Technologies, Inc. | Processing event messages for user requests to execute program code |
US9413626B2 (en) | 2014-12-05 | 2016-08-09 | Amazon Technologies, Inc. | Automatic management of resource sizing |
US9733967B2 (en) | 2015-02-04 | 2017-08-15 | Amazon Technologies, Inc. | Security protocols for low latency execution of program code |
US9588790B1 (en) | 2015-02-04 | 2017-03-07 | Amazon Technologies, Inc. | Stateful virtual compute system |
US9930103B2 (en) | 2015-04-08 | 2018-03-27 | Amazon Technologies, Inc. | Endpoint management system providing an application programming interface proxy service |
US9785476B2 (en) | 2015-04-08 | 2017-10-10 | Amazon Technologies, Inc. | Endpoint management system and virtual compute system |
US10013267B1 (en) | 2015-12-16 | 2018-07-03 | Amazon Technologies, Inc. | Pre-triggers for code execution environments |
US9811434B1 (en) | 2015-12-16 | 2017-11-07 | Amazon Technologies, Inc. | Predictive management of on-demand code execution |
US10754701B1 (en) * | 2015-12-16 | 2020-08-25 | Amazon Technologies, Inc. | Executing user-defined code in response to determining that resources expected to be utilized comply with resource restrictions |
US9910713B2 (en) | 2015-12-21 | 2018-03-06 | Amazon Technologies, Inc. | Code execution request routing |
US10067801B1 (en) | 2015-12-21 | 2018-09-04 | Amazon Technologies, Inc. | Acquisition and maintenance of compute capacity |
US11132213B1 (en) | 2016-03-30 | 2021-09-28 | Amazon Technologies, Inc. | Dependency-based process of pre-existing data sets at an on demand code execution environment |
US10891145B2 (en) | 2016-03-30 | 2021-01-12 | Amazon Technologies, Inc. | Processing pre-existing data sets at an on demand code execution environment |
US10282229B2 (en) | 2016-06-28 | 2019-05-07 | Amazon Technologies, Inc. | Asynchronous task management in an on-demand network code execution environment |
US10102040B2 (en) | 2016-06-29 | 2018-10-16 | Amazon Technologies, Inc | Adjusting variable limit on concurrent code executions |
US10277708B2 (en) | 2016-06-30 | 2019-04-30 | Amazon Technologies, Inc. | On-demand network code execution with cross-account aliases |
US10203990B2 (en) | 2016-06-30 | 2019-02-12 | Amazon Technologies, Inc. | On-demand network code execution with cross-account aliases |
US10061613B1 (en) | 2016-09-23 | 2018-08-28 | Amazon Technologies, Inc. | Idempotent task execution in on-demand network code execution systems |
US10884787B1 (en) | 2016-09-23 | 2021-01-05 | Amazon Technologies, Inc. | Execution guarantees in an on-demand network code execution system |
JP6143986B1 (ja) * | 2016-09-27 | 2017-06-07 | 三菱電機株式会社 | 情報提示システム |
US11119813B1 (en) | 2016-09-30 | 2021-09-14 | Amazon Technologies, Inc. | Mapreduce implementation using an on-demand network code execution system |
US10057373B1 (en) * | 2017-05-15 | 2018-08-21 | Palantir Technologies Inc. | Adaptive computation and faster computer operation |
US10564946B1 (en) | 2017-12-13 | 2020-02-18 | Amazon Technologies, Inc. | Dependency handling in an on-demand network code execution system |
US10831898B1 (en) | 2018-02-05 | 2020-11-10 | Amazon Technologies, Inc. | Detecting privilege escalations in code including cross-service calls |
US10353678B1 (en) | 2018-02-05 | 2019-07-16 | Amazon Technologies, Inc. | Detecting code characteristic alterations due to cross-service calls |
US10733085B1 (en) | 2018-02-05 | 2020-08-04 | Amazon Technologies, Inc. | Detecting impedance mismatches due to cross-service calls |
US10725752B1 (en) | 2018-02-13 | 2020-07-28 | Amazon Technologies, Inc. | Dependency handling in an on-demand network code execution system |
US10776091B1 (en) | 2018-02-26 | 2020-09-15 | Amazon Technologies, Inc. | Logging endpoint in an on-demand code execution system |
US10853115B2 (en) | 2018-06-25 | 2020-12-01 | Amazon Technologies, Inc. | Execution of auxiliary functions in an on-demand network code execution system |
US10649749B1 (en) | 2018-06-26 | 2020-05-12 | Amazon Technologies, Inc. | Cross-environment application of tracing information for improved code execution |
US11146569B1 (en) | 2018-06-28 | 2021-10-12 | Amazon Technologies, Inc. | Escalation-resistant secure network services using request-scoped authentication information |
US10949237B2 (en) | 2018-06-29 | 2021-03-16 | Amazon Technologies, Inc. | Operating system customization in an on-demand network code execution system |
US11099870B1 (en) | 2018-07-25 | 2021-08-24 | Amazon Technologies, Inc. | Reducing execution times in an on-demand network code execution system using saved machine states |
US11243953B2 (en) | 2018-09-27 | 2022-02-08 | Amazon Technologies, Inc. | Mapreduce implementation in an on-demand network code execution system and stream data processing system |
US11099917B2 (en) | 2018-09-27 | 2021-08-24 | Amazon Technologies, Inc. | Efficient state maintenance for execution environments in an on-demand code execution system |
US11943093B1 (en) | 2018-11-20 | 2024-03-26 | Amazon Technologies, Inc. | Network connection recovery after virtual machine transition in an on-demand network code execution system |
US10884812B2 (en) | 2018-12-13 | 2021-01-05 | Amazon Technologies, Inc. | Performance-based hardware emulation in an on-demand network code execution system |
US11010188B1 (en) | 2019-02-05 | 2021-05-18 | Amazon Technologies, Inc. | Simulated data object storage using on-demand computation of data objects |
US11861386B1 (en) | 2019-03-22 | 2024-01-02 | Amazon Technologies, Inc. | Application gateways in an on-demand network code execution system |
US11119809B1 (en) | 2019-06-20 | 2021-09-14 | Amazon Technologies, Inc. | Virtualization-based transaction handling in an on-demand network code execution system |
US11190609B2 (en) | 2019-06-28 | 2021-11-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
US11115404B2 (en) | 2019-06-28 | 2021-09-07 | Amazon Technologies, Inc. | Facilitating service connections in serverless code executions |
US11159528B2 (en) | 2019-06-28 | 2021-10-26 | Amazon Technologies, Inc. | Authentication to network-services using hosted authentication information |
US11023311B2 (en) | 2019-09-27 | 2021-06-01 | Amazon Technologies, Inc. | On-demand code execution in input path of data uploaded to storage service in multiple data portions |
US11023416B2 (en) | 2019-09-27 | 2021-06-01 | Amazon Technologies, Inc. | Data access control system for object storage service based on owner-defined code |
US11416628B2 (en) | 2019-09-27 | 2022-08-16 | Amazon Technologies, Inc. | User-specific data manipulation system for object storage service based on user-submitted code |
US11550944B2 (en) | 2019-09-27 | 2023-01-10 | Amazon Technologies, Inc. | Code execution environment customization system for object storage service |
US11250007B1 (en) | 2019-09-27 | 2022-02-15 | Amazon Technologies, Inc. | On-demand execution of object combination code in output path of object storage service |
US10996961B2 (en) | 2019-09-27 | 2021-05-04 | Amazon Technologies, Inc. | On-demand indexing of data in input path of object storage service |
US11055112B2 (en) | 2019-09-27 | 2021-07-06 | Amazon Technologies, Inc. | Inserting executions of owner-specified code into input/output path of object storage service |
US11263220B2 (en) | 2019-09-27 | 2022-03-01 | Amazon Technologies, Inc. | On-demand execution of object transformation code in output path of object storage service |
US10908927B1 (en) | 2019-09-27 | 2021-02-02 | Amazon Technologies, Inc. | On-demand execution of object filter code in output path of object storage service |
US11106477B2 (en) | 2019-09-27 | 2021-08-31 | Amazon Technologies, Inc. | Execution of owner-specified code during input/output path to object storage service |
US11394761B1 (en) | 2019-09-27 | 2022-07-19 | Amazon Technologies, Inc. | Execution of user-submitted code on a stream of data |
US11656892B1 (en) | 2019-09-27 | 2023-05-23 | Amazon Technologies, Inc. | Sequential execution of user-submitted code and native functions |
US11386230B2 (en) | 2019-09-27 | 2022-07-12 | Amazon Technologies, Inc. | On-demand code obfuscation of data in input path of object storage service |
US11360948B2 (en) | 2019-09-27 | 2022-06-14 | Amazon Technologies, Inc. | Inserting owner-specified data processing pipelines into input/output path of object storage service |
US11119826B2 (en) | 2019-11-27 | 2021-09-14 | Amazon Technologies, Inc. | Serverless call distribution to implement spillover while avoiding cold starts |
US10942795B1 (en) | 2019-11-27 | 2021-03-09 | Amazon Technologies, Inc. | Serverless call distribution to utilize reserved capacity without inhibiting scaling |
US11714682B1 (en) | 2020-03-03 | 2023-08-01 | Amazon Technologies, Inc. | Reclaiming computing resources in an on-demand code execution system |
US11252226B2 (en) * | 2020-03-05 | 2022-02-15 | Qualcomm Incorporated | Methods and apparatus for distribution of application computations |
US11188391B1 (en) | 2020-03-11 | 2021-11-30 | Amazon Technologies, Inc. | Allocating resources to on-demand code executions under scarcity conditions |
US11775640B1 (en) | 2020-03-30 | 2023-10-03 | Amazon Technologies, Inc. | Resource utilization-based malicious task detection in an on-demand code execution system |
CN111556126B (zh) * | 2020-04-24 | 2023-04-18 | 杭州浮云网络科技有限公司 | 模型管理方法、系统、计算机设备和存储介质 |
US11550713B1 (en) | 2020-11-25 | 2023-01-10 | Amazon Technologies, Inc. | Garbage collection in distributed systems using life cycled storage roots |
US11593270B1 (en) | 2020-11-25 | 2023-02-28 | Amazon Technologies, Inc. | Fast distributed caching using erasure coded object parts |
US11388210B1 (en) | 2021-06-30 | 2022-07-12 | Amazon Technologies, Inc. | Streaming analytics using a serverless compute system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4403286A (en) * | 1981-03-06 | 1983-09-06 | International Business Machines Corporation | Balancing data-processing work loads |
US5155858A (en) * | 1988-10-27 | 1992-10-13 | At&T Bell Laboratories | Twin-threshold load-sharing system with each processor in a multiprocessor ring adjusting its own assigned task list based on workload threshold |
US5031089A (en) * | 1988-12-30 | 1991-07-09 | United States Of America As Represented By The Administrator, National Aeronautics And Space Administration | Dynamic resource allocation scheme for distributed heterogeneous computer systems |
US5265250A (en) * | 1990-03-29 | 1993-11-23 | At&T Bell Laboratories | Apparatus and methods for performing an application-defined operation on data as part of a system-defined operation on the data |
JP3003440B2 (ja) * | 1993-01-19 | 2000-01-31 | 株式会社日立製作所 | 負荷分散制御方法および分散処理システム |
US5978844A (en) * | 1995-09-08 | 1999-11-02 | Hitachi, Ltd. | Internetworking apparatus for load balancing plural networks |
GB2305747A (en) * | 1995-09-30 | 1997-04-16 | Ibm | Load balancing of connections to parallel servers |
US6047323A (en) * | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US5944779A (en) * | 1996-07-02 | 1999-08-31 | Compbionics, Inc. | Cluster of workstations for solving compute-intensive applications by exchanging interim computation results using a two phase communication protocol |
US6026425A (en) * | 1996-07-30 | 2000-02-15 | Nippon Telegraph And Telephone Corporation | Non-uniform system load balance method and apparatus for updating threshold of tasks according to estimated load fluctuation |
US5958009A (en) * | 1997-02-27 | 1999-09-28 | Hewlett-Packard Company | System and method for efficiently monitoring quality of service in a distributed processing environment |
-
1997
- 1997-07-30 JP JP9204144A patent/JPH1153326A/ja active Pending
-
1998
- 1998-07-29 US US09/124,435 patent/US6385636B1/en not_active Expired - Fee Related
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010034972A (ko) * | 2000-05-10 | 2001-05-07 | 이병철 | 동적 디엔에스 바인딩 시스템 |
JP2008104173A (ja) * | 2006-10-05 | 2008-05-01 | Avaya Technology Llc | 遠隔通信フィーチャを分散処理する集中コントローラ |
JP4599617B2 (ja) * | 2006-10-05 | 2010-12-15 | アバイア インコーポレーテッド | 遠隔通信フィーチャを分散処理する集中コントローラ |
JP2009064211A (ja) * | 2007-09-06 | 2009-03-26 | Nec Corp | 分散システム |
JP2010134702A (ja) * | 2008-12-04 | 2010-06-17 | Nec Corp | 情報処理システム、サービス提供方法、装置及びプログラム |
WO2017141339A1 (ja) | 2016-02-15 | 2017-08-24 | 富士通株式会社 | 処理制御プログラム、処理制御方法、情報処理装置、および通信装置 |
CN109408238A (zh) * | 2018-10-31 | 2019-03-01 | 西安万像电子科技有限公司 | 信息处理方法及装置 |
JP2022087620A (ja) * | 2020-12-01 | 2022-06-13 | トヨタ自動車株式会社 | 機械学習方法及び機械学習システム |
US11623652B2 (en) | 2020-12-01 | 2023-04-11 | Toyota Jidosha Kabushiki Kaisha | Machine learning method and machine learning system |
CN113704358A (zh) * | 2021-09-02 | 2021-11-26 | 湖南麒麟信安科技股份有限公司 | 分布式任务协同处理方法、装置和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
US6385636B1 (en) | 2002-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH1153326A (ja) | 分散処理システム、クライアントノード、サーバノードおよび分散処理方法 | |
JP3853592B2 (ja) | 分散ウェブアプリケーションサーバ | |
AU746391B2 (en) | Method and system for facilitating distributed software development in a distribution unaware manner | |
KR100322716B1 (ko) | 협력적 프록시 시스템의 개체 랜더링 분산 전개를 위한방법 및 장치 | |
US6222634B1 (en) | Apparatus and method for printing related web pages | |
EP1025497B1 (en) | Method and apparatus for performing transactions in a stateless web environment which supports a declarative paradigm | |
JP3461689B2 (ja) | コンピュータ装置およびページ要求処理方法 | |
US8219693B1 (en) | Providing enhanced access to stored data | |
AU750435B2 (en) | Method and apparatus for implementing an extensible authentication mechanism in a web application server | |
US6225995B1 (en) | Method and apparatus for incorporating state information into a URL | |
US6405367B1 (en) | Apparatus and method for increasing the performance of Java programs running on a server | |
US6845505B1 (en) | Web request broker controlling multiple processes | |
JP2006318499A (ja) | サーバとクライアントノードとの間の接続を管理するシステムおよび方法 | |
JP4233635B2 (ja) | アプリケーション・インタフェースに持続性を提供するための装置および方法 | |
US20040249921A1 (en) | System, method and program for coordinating timeouts for distributed servers | |
US6470340B1 (en) | Inter-program linking system and method thereof | |
US20080281969A1 (en) | Controlling access to versions of application software by a server, based on site ID | |
JP2004246747A (ja) | 既存サービスのラッピング方法および装置 | |
JP2001067325A (ja) | 分散オブジェクト管理方法およびシステム | |
KR19990031814A (ko) | 웹을 통해 제품정보를 관리하는 제품정보관리시스템 | |
JPH08221360A (ja) | ネットワークシステムおよびネットワークシステムのプログラムモジュール実行方法 |