JP4575218B2 - サーバ型計算機および転送評価判定装置 - Google Patents

サーバ型計算機および転送評価判定装置 Download PDF

Info

Publication number
JP4575218B2
JP4575218B2 JP2005114517A JP2005114517A JP4575218B2 JP 4575218 B2 JP4575218 B2 JP 4575218B2 JP 2005114517 A JP2005114517 A JP 2005114517A JP 2005114517 A JP2005114517 A JP 2005114517A JP 4575218 B2 JP4575218 B2 JP 4575218B2
Authority
JP
Japan
Prior art keywords
subprogram
transfer
input
computer
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005114517A
Other languages
English (en)
Other versions
JP2006293743A (ja
Inventor
亮 大井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005114517A priority Critical patent/JP4575218B2/ja
Publication of JP2006293743A publication Critical patent/JP2006293743A/ja
Application granted granted Critical
Publication of JP4575218B2 publication Critical patent/JP4575218B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、複数の計算機、プログラム、および各計算機間の伝送処理を行うコンピュータネットワークから構成されるシステムに関し、特にサーバ計算機集中処理型のプログラムにおいて、複数の計算機間での伝送、プログラム機能の実現における処理時間の短縮化、およびプログラム、資源間の伝送効率化を実現するサーバ型計算機および転送評価判定装置に関する。
コンピュータネットワークにおける分散処理では、資源を持ち、それを共通のサービスとして提供するための汎用性のあるプログラムを備えた計算機であるサーバと、個別の処理プログラムを持ち、サーバが提供するサービスを利用する計算機であるクライアントとに分かれ、それぞれの計算機で動作するプログラムが通信によりデータを交換し合い処理を行うのが一般的である。
最近では、プログラムの保守性の観点から、サーバ計算機側で集中的にプログラムを処理し、クライアント側では利用者の入出力情報のみを伝送する方式がある(例えば、特許文献1参照)。
図1は、従来装置において副プログラム転送実行を選択する際の分散プログラム処理のフローチャートである。この図1は、プログラムがクライアントに配置されている場合の分散プログラム処理を示しているが、逆にプログラムがサーバに配置されている場合にも同様の処理を適用できる。
まず始めに、ステップS101において、クライアントは、システムプログラムを開始し、主プログラムを実行する。次に、ステップS102において、クライアントは、サーバの資源を利用する処理を実行する際に、クライアントとサーバとの間の通信速度を測定する。
次に、ステップS103において、クライアントは、測定した通信速度をもとに、次の2種類の処理時間を計算する。第1の処理時間は、副プログラムの転送を行わずにクライアント自身で副プログラムを実行し、クライアントからネットワークを介してサーバの資源を利用する場合の処理(以下、第1の処理と呼ぶ)にかかる時間であり、第2の処理時間は、サーバの資源を利用する処理プログラムをサーバへ転送して、サーバ内で資源を利用する場合の処理(以下、第2の処理と呼ぶ)にかかる時間である。
次に、ステップS104において、クライアントは、第1の処理時間と第2の処理時間との比較を行う。そして、クライアントは、第1の処理時間が短い場合には、ステップS105において、第1の処理を実行する。一方、クライアントは、第2の処理時間が短い場合あるいは両方の処理時間が同じ場合には、ステップS106において第2の処理を実行する。
そして、ステップS107において、クライアントは、必要に応じて処理結果の出力を行う。さらに、クライアントは、サーバの資源を利用する副プログラムごとに上述のステップS103〜S107を繰り返すこととなる(ステップS108)。
このように、従来の分散プログラム処理は、プログラム実行中にサーバの資源を利用する副プログラムを実行するごとに、第1の処理と第2の処理の処理時間を事前に評価し、処理時間の短い方を選択する。これにより、規模が大きなプログラムにおいて、特に処理時間短縮の効果を得ることができる。
特開平7−105149号公報(第1頁、図1)
しかしながら、従来技術には次のような課題がある。上述のような分散プログラム処理は、他の計算機の資源を利用する際に、副プログラム自体を転送する場合と転送しない場合の処理時間を副プログラムごとに事前に評価しているが、サーバ、クライアント各計算機間のプログラムおよび資源のデータ量のみに着目した転送処理時間を比較しており、副プログラムの入出力データ等の資源および副プログラムが実現する機能の効率化については考慮していない。
システムプログラムの保守性およびセキュリティ性の向上の観点から、サーバ型計算機にプログラムを集中する方法が一般的になりつつある背景の中で、プログラム機能面も含めた処理時間の効率化を行うことが必要不可欠な問題となっている。
本発明は上述のような課題を解決するためになされたもので、ネットワーク回線、および計算機間のデータおよびシステムプログラム全体としての資源の送受信、および実現する機能を考慮して、システムプログラム全体の処理時間の効率化を図るサーバ型計算機および転送評価判定装置を得ることを目的としている。
本発明に係るサーバ型計算機は、コンピュータネットワークシステム内のクライアント型計算機にネットワークを介して接続され、ネットワーク内の資源を利用しながら、1以上の副プログラムを有するシステムアプリケーションプログラムの処理を実行するサーバ型計算機において、副プログラムの識別子と、副プログラムで使用されるデータごとの入出力場所および入出力データ量とを関連づけた副プログラム情報が格納された副プログラム情報記憶部と、副プログラムを実行する前に、サーバ型計算機とクライアント型計算機との間の現在の通信速度を通信評価指標として測定する通信量評価手段と、副プログラム情報記憶部から取り出した入出力場所および入出力データ量に基づいて、入出力場所ごとの入出力データの総量をデータ評価指標として算出するデータ入出力評価手段と、通信評価指標およびデータ評価指標に基づいて、データ評価指標の中にクライアント型計算機に関連する入出力情報(クライアント型計算機と同一場所に設置されている他の計算機、またはクライアント型計算機に直接接続されている外部入出力を入出力場所とする入出力データに相当)が含まれている場合には、対応する副プログラムをクライアント型計算機に転送する必要があると判定し、データ評価指標の中にサーバ型計算機に関連する入出力情報(サーバ型計算機に直接接続されている装置、または同一場所に設置されている他の計算機に接続あるいは設置されている装置を入出力場所とする入出力データに相当)のみが含まれている場合には、対応する副プログラムをクライアント型計算機に転送する必要がないと判定し、データ評価指標に中にクライアント型計算機に関連する入出力情報が含まれておらず、かつクライアント型計算機およびサーバ型計算機以外の計算機に関連する入出力情報(クライアント型計算機およびサーバ型計算機以外を入出力場所とする入出力データに相当)が含まれている場合には、サーバ型計算機で副プログラムを実行した場合の処理時間と、副プログラムを転送することによりクライアント型計算機で副プログラムを実行した場合の処理時間とを算出し、算出した両処理時間の比較から副プログラムの転送要否を判定する副プログラム転送判定手段とを有する転送評価判定手段を備えたものである。
また、本発明に係る転送評価判定装置は、サーバ型計算機とクライアント型計算機とがネットワークを介して接続されたコンピュータネットワークシステム内で、サーバ型計算機が、ネットワーク内の資源を利用しながら、1以上の副プログラムを有するシステムアプリケーションプログラムの処理を実行する際に、サーバ型計算機から副プログラム転送に関する転送評価判定指令をネットワークを介して受信することにより、副プログラムをサーバ型計算機からクライアント型計算機に転送すべきか否かを判定する転送評価判定装置であって、副プログラムの識別子と、副プログラムで使用されるデータごとの入出力場所および入出力データ量とを関連づけた副プログラム情報が格納された副プログラム情報記憶部と、転送評価判定指令に基づいて、副プログラムを実行する前に、サーバ型計算機とクライアント型計算機との間の現在の通信速度を通信評価指標として測定する通信量評価手段と、転送評価判定指令に基づいて、副プログラム情報記憶部から取り出した入出力場所および入出力データ量に基づいて、入出力場所ごとの入出力データの総量をデータ評価指標として算出するデータ入出力評価手段と、通信評価指標およびデータ評価指標に基づいて、データ評価指標の中にクライアント型計算機に関連する入出力情報(クライアント型計算機と同一場所に設置されている他の計算機、または前記クライアント型計算機に直接接続されている外部入出力を入出力場所とする入出力データに相当)が含まれている場合には、対応する副プログラムをクライアント型計算機に転送する必要があると判定し、データ評価指標の中にサーバ型計算機に関連する入出力情報(サーバ型計算機に直接接続されている装置、または同一場所に設置されている他の計算機に接続あるいは設置されている装置を入出力場所とする入出力データに相当)のみが含まれている場合には、対応する副プログラムをクライアント型計算機に転送する必要がないと判定し、データ評価指標の中にクライアント型計算機に関連する入出力情報が含まれておらず、かつクライアント型計算機および前記サーバ型計算機以外の計算機に関連する入出力情報(クライアント型計算機およびサーバ型計算機以外を入出力場所とする入出力データに相当)が含まれている場合には、サーバ型計算機で副プログラムを実行した場合の処理時間と、副プログラムを転送することによりクライアント型計算機で副プログラムを実行した場合の処理時間とを算出し、算出した両処理時間の比較から副プログラムの転送要否を判定し、判定した転送要否の結果を転送評価判定指令に対する応答としてサーバ型計算機に返送する副プログラム転送判定手段とを備えたものである。
本発明によれば、副プログラムで使用されるデータの入出力場所および入出力データ量を備えた副プログラム情報に基づいて副プログラムの転送要否を判定することにより、ネットワーク回線、および計算機間のデータおよびシステムプログラム全体としての資源の送受信、および実現する機能を考慮してシステムプログラム全体の処理時間の効率化を図ることができるサーバ型計算機および転送評価判定装置を得ることができる。
以下、本発明のサーバ型計算機および転送評価判定装置の好適な実施の形態につき図面を用いて説明する。
実施の形態1.
図2は、本発明の実施の形態1におけるコンピュータネットワークシステムの構成図である。図2におけるコンピュータネットワークシステムは、サーバ型計算機100、クライアント型計算機200、およびそれらを互いに接続するネットワーク300で構成される。
サーバ型計算機100は、複数の副プログラム110と、これら副プログラム110の相互制御を行っているシステムプログラム120とを有し、事前評価に基づいて副プログラムの転送要否を判定する転送評価判定手段130、副プログラムの圧縮処理を行う圧縮手段140、およびネットワーク300を介してクライアント型計算機200と種々のデータの通信を行う通信手段150で構成される。
ここで、副プログラム110とは、システムプログラム120内で、各用途に応じた個別の機能をサーバ型計算機100上、クライアント型計算機200上、あるいはネットワーク上の他の装置・計算機上の資源を利用して実現するプログラムのことである。
また、この副プログラム110の転送要否を判定する転送評価判定手段130は、副プログラムの転送の強制条件を判定する強制転送評価手段131、サーバ型計算機100とクライアント型計算機200との間の通信速度を測定する通信量評価手段132、副プログラムの入出力データ量と場所を判定するデータ入出力評価手段133、各判定手段で収集を行った評価指標に基づいて、副プログラムの転送要否を総合的に判定する副プログラム転送判定手段134、および副プログラムの識別子と、副プログラムで使用されるデータの入出力場所および入出力データ量とを関連づけた副プログラム情報が格納された副プログラム情報記憶部135を備えている。
一方、クライアント型計算機200は、ネットワーク300を介してサーバ型計算機100と副プログラムを含む種々のデータの通信を行う通信手段210、および受信した圧縮処理済みの副プログラムの解凍処理を行う解凍手段220を備えている。
図3は、本発明の実施の形態1における副プログラム情報のデータ構造を示す図である。個々の副プログラム110に対応する副プログラム情報135aは、「入力場所」「入力データ項目」「出力場所」「出力データ項目」「強制転送設定」の各情報を備えている。そして、この副プログラム情報135aは、各副プログラムの識別子(ID)と対応付けられて副プログラム情報記憶部135に記憶されている。
「入力場所」および「出力場所」は、副プログラム110に対してデータ入力を行う場所、あるいは副プログラム110からデータ出力を行う場所を示すものである。具体的には、サーバ型計算機100、クライアント型計算機200およびこれらに接続される他の装置を識別するデータが設定される。この「入力場所」および「出力場所」に関する情報は、データ入出力評価手段133の判定材料として使用される。
また、「入力データ項目」および「出力データ項目」は、副プログラム110が必要とする入力データおよび出力データのデータ量が設定されている。例えば、図3において、I1(10、10)と記載された入力データ項目は、入力場所PI1から(10、10)の2次元配列として入力されるデータ量を示している。また、I2(200)と記載された入力データ項目は、同じ入力場所PI1から(200)の1次元配列として入力されるデータ量を示している。
一方、O1(100)と記載された出力データ項目は、出力場所PO3から(100)の1次元配列として出力されるデータ量を示している。これら「入力データ項目」および「出力データ項目」に関する情報は、通信量評価手段132の判定材料として使用される。
さらに、「強制転送設定」は、副プログラム110をクライアント型計算機200上に強制的に転送すべきか(以下、強制的転送と称す)、強制的に転送しないべきか(以下、強制的非転送と称す)、あるいは他の判定材料に基づいて転送要否を判定すべきか(以下、転送要否判定と称す)を設定するものである。
例えば、図3において、「強制転送設定=1」は強制的転送を示し、「強制転送設定=2」は強制的非転送を示し、「強制転送設定=0」は転送要否判定を示している。そして、この「強制転送設定」は、強制転送評価手段131の判定材料として使用される。
このようにして、転送評価判定手段130は、副プログラム110に含まれている副プログラム情報135aに基づいて、副プログラムの転送要否を判定することとなる。
次に、図4を用いて一連の処理を詳細に説明する。図4は、本発明の実施の形態1における副プログラムの転送要否を判定する際の分散プログラム処理のフローチャートである。まず始めに、ステップS401において、サーバ型計算機100は、システムプログラムを開始する。
次に、ステップS402において、転送評価判定手段130内の強制転送評価手段131は、副プログラム情報記憶部135に記憶された、転送要否を判定すべき副プログラム110に対応する副プログラム情報135a内の「強制転送設定」の情報を読み取り、強制状態(強制的転送または強制的非転送)が設定されているか否かを判定する。
強制状態が設定されている場合には、ステップS403において、強制転送評価手段131は、強制状態の設定がサーバ側からクライアント側への強制的転送か強制的非転送かを判定する。そして、強制転送評価手段131は、強制的転送である場合には、処理をステップS409に移行し、強制的転送でない場合(すなわち、強制的非転送である場合)には、処理をステップS413に移行する。
一方、ステップS402で強制状態の設定がないと判定された場合には、ステップS404以降の処理に移行し、転送評価判定手段130内の各手段による転送要否の判定を行うこととなる。ステップS404において、転送評価判定手段130内の通信量評価手段132は、クライアント・サーバ間の通信速度を次の手順で測定する。まず始めに、通信量評価手段132は、サーバ型計算機100上の通信手段150を介してクライアント型計算機200上の通信手段210に一定量のデータを送信し、その応答の有無と応答時間を測定する。
通信量評価手段132は、一定量のデータを複数回送信し、そのときの応答時間の平均値を求めることにより、通信評価指標としての通信速度を算出できる。例えば、データ量がa(バイト)のデータを4回送信し、そのときの応答時間平均値がb(ミリ秒)であったとすると、通信量評価手段132は、値aおよびbから、通信速度cをa×1000/b(バイト/秒)として算出する。
また、通信量評価手段132は、4回送信時の不達の有無を同時に測定し、1回でも不達があれば「不達あり」として送信不達情報dを保持する。そして、通信量評価手段132は、通信速度c(バイト/秒)および送信不達情報dを評価情報として保持する。具体的には、通信量評価手段132は、副プログラム情報135aのデータに対して、通信速度c(バイト/秒)および送信不達情報dの評価情報を付加して副プログラム情報記憶部135に記憶させる。
次に、ステップS405において、転送評価判定手段130内のデータ入出力評価手段133は、副プログラム情報記憶部135に記憶された副プログラム情報135aに対応する「入力場所」「出力場所」の情報を読み取り、入力元場所e1〜en、出力先場所f1〜fn(1〜nは、入出力の場所毎の通番)の評価情報として保持する。
さらに、ステップS406において、データ入出力評価手段133は、副プログラム情報記憶部135に記憶された副プログラム情報135a内の「入力データ項目」「出力データ項目」の情報を読み取り、先の入力元場所e1〜enおよび出力先場所f1〜fnごとに合算して、それぞれ入力データ量g1〜gn、出力データ量h1〜hnを求め、データ評価指標として保持する。
そして、ステップS407において、転送評価判定手段130内の副プログラム転送判定手段134は、ステップS404〜S406で得られた通信評価指標とデータ評価指標、および副プログラム110の圧縮後のサイズi(バイト)に基づいて、副プログラムをクライアント側に転送する必要があるか、あるいは転送する必要がなくサーバ側でそのまま処理を行えばよいかを総合的に判定する。この「総合的な判定」に関しては、図5を用いて具体的に後述する。
そして、副プログラム転送判定手段134は、サーバ側からクライアント側への転送が必要であると判定した場合には、処理をステップS409に移行し、サーバ側からクライアント側への転送が必要でないと判定した場合には、処理をステップS413に移行する。
先のステップS403による強制的な設定により、またはステップS408による転送要否の判定結果により、副プログラムをサーバ側からクライアント側に転送する必要があると判定された場合には、ステップS409以降の処理が行われる。まず、ステップS409において、圧縮手段140は、転送すべき副プログラムの圧縮処理を行う。次に、ステップS410において、通信手段150は、圧縮した副プログラムをクライアント側に転送する。
これに対して、クライアント型計算機200は、ステップS411において、通信手段210により圧縮された副プログラムを受信し、解凍手段220によりその副プログラムの解凍を行う。さらに、ステップS412において、クライアント型計算機200は、解凍後の副プログラムを実行し、その後、実行結果をサーバ型計算機100に返送する。
一方、先のステップS403による強制的な設定により、またはステップS408による転送要否の判定結果により、副プログラムをサーバ側からクライアント側に転送する必要がないと判定された場合には、ステップS413において、サーバ型計算機100は、サーバ上で副プログラムを実行する。
そして、ステップS412またはステップS413で副プログラムの実行を終えると、ステップS414において、システムプログラム120は、処理結果を取得し、必要に応じ、出力手段(図示せず)を用いて結果を出力する。そして、サーバの資源を利用する副プログラムが複数ある場合は、以下、副プログラムごとに、ステップS402〜S414までの処理を繰り返すこととなる(ステップS415)。
次に、先のステップS407において行った「総合的な判定」について説明する。図5は、本発明の実施の形態1における副プログラム転送判定手段134による転送要否の総合的な判定の処理手順を示したフローチャートである。
まず始めに、ステップS501において、副プログラム転送判定手段134は、データ入出力評価手段133により取り出された副プログラムの入力元場所e1〜en、出力先場所f1〜fnの評価情報の中に、クライアント型計算機200と同一場所に設置されている他の計算機、またはクライアント型計算機200に直接接続されている外部入出力(以下、クライアント型計算機200に関連する入出力情報と称す)が含まれているか否かを判定する。
そして、副プログラム転送判定手段134は、クライアント型計算機200に関連する入出力情報が含まれていると判定した場合には、ステップS502に移行し、対象となる副プログラム110をクライアント側に転送する必要があると判定し、判定処理を終了する。
データを繰り返し使用する場合、あるいはそのデータの入出力を行う外部装置の配置によっては、単に資源のデータ量だけでは、効率面を重視した転送要否の判定は行えない。そこで、本実施の形態1のサーバ型計算機100は、資源のデータ量のみに着目して転送要否を判定するのではなく、クライアント型計算機200に関連する入出力情報が含まれている場合には、効率を重視して対象となる副プログラム110をクライアント側に転送する必要があると判定する。
一方、副プログラム転送判定手段134は、クライアント型計算機200に関連する入出力情報が含まれていないと判定した場合には、ステップS503に処理を移行する。
次に、ステップS503において、副プログラム転送判定手段134は、入力元場所e1〜en、出力先場所f1〜fnの評価情報のすべてが、サーバ自身に直接接続されている装置、または同一場所に設置されている他の計算機に接続あるいは設置されている装置(以下、サーバ型計算機100に関連する入出力情報と称す)であるか否かを判定する。
そして、副プログラム転送判定手段134は、入力元場所e1〜en、出力先場所f1〜fnの評価情報のすべてが、サーバ型計算機100に関連する入出力情報であると判定した場合には、ステップS504に移行し、対象となる副プログラム110をクライアント側に転送する必要がないと判定し、判定処理を終了する。
一方、副プログラム転送判定手段134は、入力元場所e1〜en、出力先場所f1〜fnの評価情報のすべてが、サーバ型計算機100に関連する入出力情報であるといえない(すなわち、サーバ型計算機100およびクライアント型計算機200以外の計算機に関連する入出力情報が含まれている)と判定した場合には、ステップS505に処理を移行する。
ステップS505において、副プログラム転送判定手段134は、先に通信量評価手段132において通信速度cを判定した際の送信不達情報dが含まれているか否かを判定する。そして、副プログラム転送判定手段134は、送信不達情報dが1回でも発生している場合にはネットワーク環境が不安定であると判定し、ステップS504に移行し、対象となる副プログラム110をクライアント側に転送する必要がないと判定し、判定処理を終了する。
一方、副プログラム転送判定手段134は、送信不達情報dが1回も発生していない場合には、ステップS506に処理を移行する。ステップS506において、副プログラム転送判定手段134は、副プログラムの転送時間を計算し、サーバ側で副プログラムを実行した場合の処理時間と、副プログラムを転送することによりクライアント側で副プログラムを実行した場合の処理時間との比較を行う。具体的には、副プログラム転送判定手段134は、以下の処理により両方の処理時間の比較を行うこととなる。
ここで、j、ka、kb、ma、mbを次のように定義する。
j:副プログラムを実行した場合のプログラム内部処理時間(秒)
ka:サーバがネットワークを介してその他の計算機上の入力データを入力するために必要なアクセス時間(秒)
kb:クライアントがネットワークを介してその他の計算機上の入力データを入力するために必要なアクセス時間(秒)
ma:サーバがネットワークを介してその他の計算機上へ出力データを出力するために必要なアクセス時間(秒)
mb:クライアントがネットワークを介してその他の計算機上へ出力データを出力するために必要なアクセス時間(秒)
さらに、n、pを次のように定義する。
n:プログラム圧縮時間(秒)
p:プログラム解凍時間(秒)
また、i、c、g1〜gn、h1〜hnは、次のように定義されるものである。
i:圧縮後のサイズ(バイト)
c:通信速度(バイト/秒)
g1〜gn:その他の計算機上の入力データ量
h1〜hn:その他の計算機上への出力データ量
以上の定義に基づいて、次の評価指標値が計算できる。ただし、副プログラムの内部処理時間jは、サーバで実行する場合と、クライアントで実行する場合とで同一と見なすこととする。
サーバ側処理時間q(秒)=j+ka+ma
クライアント側処理時間r(秒)=j+i/c+kb+mb+n+p
ka、kb=Σ(g1/c、g2/c・・、gn/c)
ma、mb=Σ(h1/c、h2/c・・、hn/c)
副プログラム転送判定手段134は、求まった評価指標値に基づいて、q>rの場合(すなわち、サーバ側処理時間qがクライアント側処理時間rより長い場合)には、ステップS502に移行し、副プログラムをクライアントへ転送する必要があると判定し、処理を終了する。
一方、副プログラム転送判定手段134は、q≦rの場合(すなわち、サーバ側処理時間qがクライアント側処理時間r以下の場合)には、ステップS504に移行し、副プログラムをクライアントへ転送する必要がないと判定し、処理を終了する。
以上のように、実施の形態1によれば、副プログラムで使用されるデータの入出力場所および入出力データ量に関する副プログラム情報、および通信状況を活用して、副プログラムの内部処理時間とともに、データの利用状況および通信状況も加味して総合的に評価することにより、副プログラムを転送すべきか否かを判定することができ、副プログラムごとに、副プログラム機能を考慮した上で、効率的に処理可能な計算機を選択して実行することができる。
この結果、サーバ型計算機にて主体的に処理を行い、かつ副プログラムが多量のデータ入出力を有し、入出力元が分散配置されている場合、あるいはシステムプログラムが多くの機能を有する場合に、システムプログラム全体としての処理効率化と処理時間短縮の効果が大きい。
なお、上述においては、副プログラムの内部処理時間jは、サーバで実行する場合と、クライアントで実行する場合とで同一と見なしたが、それぞれ個別の内部処理時間js(サーバ側の内部処理時間)とjc(クライアント側の内部処理時間)を用いることにより、上述の処理時間q、rの比較を行うことも可能である。
実施の形態2.
本実施の形態2では、実施の形態1で説明した図3の副プログラム情報135aを、副プログラム110のソースコード文に基づいて生成する手段について説明する。図6は、本発明の実施の形態2における副プログラム情報135aの生成に関する説明図である。
図6において、プログラムソースコード変換手段136は、副プログラムのソースコード文111に基づいて、副プログラム情報135aとして、「入力場所」「入力データ項目」「出力場所」「出力データ項目」「強制転送設定」に関する各情報を生成する手段である。
プログラムソースコード変換手段136は、副プログラムのソースコード文111の中に外部装置との入出力に関するコードが含まれている場合には、対応するコードに基づいて入出力場所とデータ量の情報を取り出す。プログラムソースコード変換手段136は、例えば、ソースコードに含まれる処理関数の名称から副プログラムで使用されるデータの入出力場所を特定でき、処理関数に含まれる変数定義の確保領域から入出力データ量を特定できる。
さらに、プログラムソースコード変換手段136は、特定された入出力場所および入出力データ量から強制転送設定を規定することができる。例えば、プログラムソースコード変換手段136は、特定された入出力場所および入出力データ量に基づいて、クライアント型計算機200に関連する入出力情報の総データ量を算出し、算出した総データ量が所定値以上であれば、強制転送設定を「強制的転送」に設定することができる。
また、プログラムソースコード変換手段136は、特定された入出力場所に基づいて、サーバ型計算機100に関連する入出力情報のみから入出力データが構成されていると判定した場合には、強制転送設定を「強制的非転送」に設定することができる。
プログラムソースコード変換手段136は、このようにして、副プログラムのソースコード文111に基づいて、該当する副プログラムに対応する副プログラム情報135aを生成し、副プログラム情報記憶部135に記憶させる。
あるいは、プログラムソースコード変換手段136は、取り出した情報をある文章規則に定められた変数に格納するように記述することにより副プログラム情報135aを生成し、副プログラム情報記憶部135内に記憶させることもできる。この場合には、プログラムソースコード変換手段136は、副プログラムを実行可能コードに変換する際に、格納された変数を読み込み、副プログラム情報を、実行可能プログラム内部に埋め込むことができる。
以上のように、実施の形態2によれば、副プログラムのソースコードから、副プログラム情報を自動的に作成可能となる。さらに、副プログラム情報を計算機内部で処理可能なコードに変換して、実行可能プログラム内部に埋め込むことで、副プログラムのクライアントへの転送に対する評価・判定処理性能の向上に寄与することができる。
実施の形態3.
実施の形態1で示した図4のステップS415の処理においては、副プログラムごとに、ステップS402〜S414までの転送要否判定処理を繰り返している。本実施の形態3では、必要に応じて転送要否判定処理を行うことにより、判定処理にかかる時間の短縮を図る方策について説明する。
本実施の形態3において、副プログラム転送判定手段134は、副プログラム毎の転送要否の判定処理を実行した際に、副プログラム毎の判定処理結果および判定処理時刻を副プログラム情報135aに付加して副プログラム情報記憶部135に記憶しておく。
そして、副プログラム転送判定手段134は、後に同一の副プログラムの転送要否の判定処理を実行する際に、副プログラム情報記憶部135内の副プログラム情報135aに付加された前回の判定処理時刻からの経過時間を算出する。
さらに、副プログラム転送判定手段134は、算出した経過時間が所定時間内である場合には、ネットワーク環境あるいは計算機間での資源の送受信環境が大きく変化していないと判定して、前回の判定処理結果をそのまま流用する。これにより、今回の転送要否の判定処理に関わる時間を短縮することが可能となる。
以上のように、実施の形態3によれば、前回の副プログラムの実行からの経過時間が所定時間以内である場合には、前回の転送要否の判定処理結果を流用することにより、判定処理に関わる時間を短縮できるとともに、前回実行時と同等の処理時間が期待できる。
なお、上述の実施の形態3においては、経過時間に応じて前回の転送要否の判定処理結果を流用する場合について説明したが、副プログラムを実行した際の実績処理時間を副プログラム情報に付加して記憶しておくことにより、実績処理時間も加味した転送要否の判定処理を行うことができる。このように実績処理時間を加味することにより、例えば、前回は転送するべきと判定したが、実績処理時間が長くかかっている場合には、今回は転送しないと判定することができる。
実施の形態4.
実施の形態1は、サーバ型計算機100内に転送評価判定手段130を備えている場合について説明した。本実施の形態4は、転送評価判定手段130の機能を、サーバ型計算機100内に持たせず、ネットワーク上に専用の新たな装置として独立して設けた場合について説明する。
図7は、本発明の実施の形態4におけるコンピュータネットワークシステムの構成図である。副プログラムの転送要否を判定するための転送評価判定装置130aが、専用の装置として、ネットワーク上に設けられている。
図7におけるこの転送評価判定装置130aは、図2における転送評価判定手段130と同一の機能を有するとともに、他の計算機との通信を行うために、転送評価判定装置130a内に通信手段137を備えている。転送評価判定装置130aは、サーバ型計算機100から副プログラムの実行ごとに転送評価判定指令を受けることにより、対応する副プログラムの転送要否を判定し、判定結果をサーバ型計算機100に返答する。
実施の形態1の構成である図2において、サーバ型計算機100内に設けられていた転送評価判定手段130を、図7に示すように、コンピュータネットワークシステム内の独立した専用装置である転送評価判定装置130aとして分散配置することにより、サーバ型計算機100の処理負荷を軽減し、判定処理時間の短縮化を図ることができる。
また、図7における転送評価判定装置130aとサーバ型計算機100とをネットワーク上の近い位置に配置することにより、ネットワーク通信時間要素の影響を排除することができる。
実施の形態4によれば、サーバ型計算機内の転送評価判定手段を、コンピュータネットワークシステム内の独立した転送評価判定装置として分散配置することにより、サーバ型計算機の処理負荷を軽減し、判定処理時間の短縮化を図ることができる。さらに、サーバ型計算機と転送評価判定装置との配置をネットワーク上の近い位置とすることにより、これらの間でのネットワーク通信時間要素を排除して、判定処理を実行することができる。
なお、実施の形態4で説明した転送評価判定装置に対しても、実施の形態2で説明したプログラムソースコード変換手段を組み込むこと、そして実施の形態3で説明した経過時間に基づく判定処理を適用することが可能である。
従来装置において副プログラム転送実行を選択する際の分散プログラム処理のフローチャートである。 本発明の実施の形態1におけるコンピュータネットワークシステムの構成図である。 本発明の実施の形態1における副プログラム情報のデータ構造を示す図である。 本発明の実施の形態1における副プログラムの転送要否を判定する際の分散プログラム処理のフローチャートである。 本発明の実施の形態1における副プログラム転送判定手段による転送要否の総合的な判定の処理手順を示したフローチャートである。 本発明の実施の形態2における副プログラム情報の生成に関する説明図である。 本発明の実施の形態4におけるコンピュータネットワークシステムの構成図である。
符号の説明
100 サーバ型計算機、110 副プログラム、111 副プログラムのソースコード文、120 システムプログラム、130 転送評価判定手段、130a 転送評価判定装置、131 強制転送評価手段、132 通信量評価手段、133 データ入出力評価手段、134 副プログラム転送判定手段、135 副プログラム情報記憶部、135a 副プログラム情報、136 プログラムソースコード変換手段、137 通信手段、140 圧縮手段、150 通信手段、200 クライアント型計算機、210 通信手段、220 解凍手段、300 ネットワーク。

Claims (8)

  1. コンピュータネットワークシステム内のクライアント型計算機にネットワークを介して接続され、前記ネットワーク内の資源を利用しながら、1以上の副プログラムを有するシステムアプリケーションプログラムの処理を実行するサーバ型計算機において、
    副プログラムの識別子と、前記副プログラムで使用されるデータごとの入出力場所および入出力データ量とを関連づけた副プログラム情報が格納された副プログラム情報記憶部と、
    副プログラムを実行する前に、前記サーバ型計算機と前記クライアント型計算機との間の現在の通信速度を通信評価指標として測定する通信量評価手段と、
    前記副プログラム情報記憶部から取り出した前記入出力場所および前記入出力データ量に基づいて、入出力場所ごとの入出力データの総量をデータ評価指標として算出するデータ入出力評価手段と、
    前記通信評価指標および前記データ評価指標に基づいて、前記データ評価指標の中にクライアント型計算機に関連する入出力情報(前記クライアント型計算機と同一場所に設置されている他の計算機、または前記クライアント型計算機に直接接続されている外部入出力を入出力場所とする入出力データに相当)が含まれている場合には、対応する副プログラムを前記クライアント型計算機に転送する必要があると判定し、前記データ評価指標の中にサーバ型計算機に関連する入出力情報(前記サーバ型計算機に直接接続されている装置、または同一場所に設置されている他の計算機に接続あるいは設置されている装置を入出力場所とする入出力データに相当)のみが含まれている場合には、対応する副プログラムを前記クライアント型計算機に転送する必要がないと判定し、前記データ評価指標に中に前記クライアント型計算機に関連する入出力情報が含まれておらず、かつ前記クライアント型計算機および前記サーバ型計算機以外の計算機に関連する入出力情報(前記クライアント型計算機および前記サーバ型計算機以外を入出力場所とする入出力データに相当)が含まれている場合には、前記サーバ型計算機で前記副プログラムを実行した場合の処理時間と、前記副プログラムを転送することにより前記クライアント型計算機で前記副プログラムを実行した場合の処理時間とを算出し、算出した両処理時間の比較から前記副プログラムの転送要否を判定する副プログラム転送判定手段と
    を有する転送評価判定手段を備えたことを特徴とするサーバ型計算機。
  2. 請求項1に記載のサーバ型計算機において、
    前記副プログラム情報記憶部は、副プログラムの転送要否を強制的に設定する強制転送設定データをさらに含む副プログラム情報を格納し、
    前記副プログラム転送判定手段は、前記副プログラム情報の前記強制転送設定データが強制的転送に設定されている場合には、副プログラムを前記クライアント型計算機に転送する必要があると判定し、前記副プログラム情報の前記強制転送設定データが強制的非転送に設定されている場合には、副プログラムを前記クライアント型計算機に転送する必要がないと判定し、前記副プログラム情報の前記強制転送設定データが強制的転送あるいは強制的非転送のいずれでもない場合には、前記通信評価指標および前記データ評価指標に基づく転送要否の判定処理を行う
    ことを特徴とするサーバ型計算機。
  3. 請求項1または2に記載のサーバ型計算機において、
    前記転送評価判定手段は、副プログラムのソースコードに含まれる処理関数の名称から前記副プログラムで使用されるデータの入出力場所を特定し、前記処理関数に含まれる変数定義の確保領域から入出力データ量を特定し、特定した前記入出力場所および前記入出力データ量を副プログラムの識別子と関連づけて副プログラム情報を生成し、生成した前記副プログラム情報を前記副プログラム情報記憶部に記憶させるプログラムソースコード変換手段をさらに備えたことを特徴とするサーバ型計算機。
  4. 請求項1ないし3のいずれか1項に記載のサーバ型計算機において、
    前記副プログラム転送判定手段は、前記副プログラムの転送要否を判定するごとに前記転送要否の判定結果と判定時刻を前記副プログラム情報に付加して前記副プログラム情報記憶部に記憶させ、副プログラムの今回の転送要否判定時に、前記副プログラムに対応する副プログラム情報に付加された前記判定結果および前記判定時刻を前回の転送要否判定時のデータとして前記副プログラム情報記憶部から取り出し、前記判定時刻からの経過時間が所定時間以内である場合には、今回の転送要否判定処理を行わずに前回の転送要否判定時の前記判定結果を流用することを特徴とするサーバ型計算機。
  5. サーバ型計算機とクライアント型計算機とがネットワークを介して接続されたコンピュータネットワークシステム内で、前記サーバ型計算機が、前記ネットワーク内の資源を利用しながら、1以上の副プログラムを有するシステムアプリケーションプログラムの処理を実行する際に、前記サーバ型計算機から副プログラム転送に関する転送評価判定指令を前記ネットワークを介して受信することにより、前記副プログラムを前記サーバ型計算機から前記クライアント型計算機に転送すべきか否かを判定する転送評価判定装置であって、
    副プログラムの識別子と、前記副プログラムで使用されるデータごとの入出力場所および入出力データ量とを関連づけた副プログラム情報が格納された副プログラム情報記憶部と、
    前記転送評価判定指令に基づいて、副プログラムを実行する前に、前記サーバ型計算機と前記クライアント型計算機との間の現在の通信速度を通信評価指標として測定する通信量評価手段と、
    前記転送評価判定指令に基づいて、前記副プログラム情報記憶部から取り出した前記入出力場所および前記入出力データ量に基づいて、入出力場所ごとの入出力データの総量をデータ評価指標として算出するデータ入出力評価手段と、
    前記通信評価指標および前記データ評価指標に基づいて、前記データ評価指標の中にクライアント型計算機に関連する入出力情報(前記クライアント型計算機と同一場所に設置されている他の計算機、または前記クライアント型計算機に直接接続されている外部入出力を入出力場所とする入出力データに相当)が含まれている場合には、対応する副プログラムを前記クライアント型計算機に転送する必要があると判定し、前記データ評価指標の中にサーバ型計算機に関連する入出力情報(前記サーバ型計算機に直接接続されている装置、または同一場所に設置されている他の計算機に接続あるいは設置されている装置を入出力場所とする入出力データに相当)のみが含まれている場合には、対応する副プログラムを前記クライアント型計算機に転送する必要がないと判定し、前記データ評価指標の中に前記クライアント型計算機に関連する入出力情報が含まれておらず、かつ前記クライアント型計算機および前記サーバ型計算機以外の計算機に関連する入出力情報(前記クライアント型計算機および前記サーバ型計算機以外を入出力場所とする入出力データに相当)が含まれている場合には、前記サーバ型計算機で前記副プログラムを実行した場合の処理時間と、前記副プログラムを転送することにより前記クライアント型計算機で前記副プログラムを実行した場合の処理時間とを算出し、算出した両処理時間の比較から前記副プログラムの転送要否を判定し、判定した前記転送要否の結果を前記転送評価判定指令に対する応答として前記サーバ型計算機に返送する副プログラム転送判定手段と
    を備えたことを特徴とする転送評価判定装置。
  6. 請求項5に記載の転送評価判定装置において、
    前記副プログラム情報記憶部は、副プログラムの転送要否を強制的に設定する強制転送設定データをさらに含む副プログラム情報を格納し、
    前記副プログラム転送判定手段は、前記副プログラム情報の前記強制転送設定データが強制的転送に設定されている場合には、副プログラムを前記クライアント型計算機に転送する必要があると判定し、前記副プログラム情報の前記強制転送設定データが強制的非転送に設定されている場合には、副プログラムを前記クライアント型計算機に転送する必要がないと判定し、前記副プログラム情報の前記強制転送設定データが強制的転送あるいは強制的非転送のいずれでもない場合には、前記通信評価指標および前記データ評価指標に基づく転送要否の判定処理を行う
    ことを特徴とする転送評価判定装置。
  7. 請求項5または6に記載の転送評価判定装置において、
    副プログラムのソースコードに含まれる処理関数の名称から前記副プログラムで使用されるデータの入出力場所を特定し、前記処理関数に含まれる変数定義の確保領域から入出力データ量を特定し、特定した前記入出力場所および前記入出力データ量を副プログラムの識別子と関連づけて副プログラム情報を生成し、生成した前記副プログラム情報を前記副プログラム情報記憶部に記憶させるプログラムソースコード変換手段をさらに備えたことを特徴とする転送評価判定装置。
  8. 請求項5ないし7のいずれか1項に記載の転送評価判定装置において、
    前記副プログラム転送判定手段は、前記副プログラムの転送要否を判定するごとに前記転送要否の判定結果と判定時刻を前記副プログラム情報に付加して前記副プログラム情報記憶部に記憶させ、副プログラムの今回の転送要否判定時に、前記副プログラムに対応する副プログラム情報に付加された前記判定結果および前記判定時刻を前回の転送要否判定時のデータとして前記副プログラム情報記憶部から取り出し、前記判定時刻からの経過時間が所定時間以内である場合には、今回の転送要否判定処理を行わずに前回の転送要否判定時の前記判定結果を流用することを特徴とする転送評価判定装置。
JP2005114517A 2005-04-12 2005-04-12 サーバ型計算機および転送評価判定装置 Expired - Fee Related JP4575218B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005114517A JP4575218B2 (ja) 2005-04-12 2005-04-12 サーバ型計算機および転送評価判定装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005114517A JP4575218B2 (ja) 2005-04-12 2005-04-12 サーバ型計算機および転送評価判定装置

Publications (2)

Publication Number Publication Date
JP2006293743A JP2006293743A (ja) 2006-10-26
JP4575218B2 true JP4575218B2 (ja) 2010-11-04

Family

ID=37414254

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005114517A Expired - Fee Related JP4575218B2 (ja) 2005-04-12 2005-04-12 サーバ型計算機および転送評価判定装置

Country Status (1)

Country Link
JP (1) JP4575218B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5065050B2 (ja) * 2005-12-28 2012-10-31 インターナショナル・ビジネス・マシーンズ・コーポレーション クライアント・サーバ・システムにおける負荷分散
US8504999B2 (en) * 2006-10-05 2013-08-06 Palo Alto Research Center Incorporated System and method for transferring code to a data producer
JP5323554B2 (ja) * 2009-03-27 2013-10-23 株式会社日立製作所 ジョブ処理方法、ジョブ処理プログラムを格納したコンピュータ読み取り可能な記録媒体、および、ジョブ処理システム
WO2011080809A1 (ja) * 2009-12-29 2011-07-07 株式会社 東芝 サーバ
CN103098036B (zh) 2010-09-16 2016-08-31 富士通株式会社 数据共享系统、终端以及数据共享方法
KR20230165564A (ko) * 2022-05-27 2023-12-05 쿠팡 주식회사 코드 커버리지 정보 제공 방법 및 이를 위한 전자 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61289459A (ja) * 1985-06-17 1986-12-19 Hitachi Ltd 計算機システム間負荷分散方式
JPH0773148A (ja) * 1993-09-06 1995-03-17 Toshiba Corp 処理要求割り付け装置
JPH07105149A (ja) * 1993-10-08 1995-04-21 Hitachi Ltd 副プログラム転送実行を選択する分散処理方法
JP2002099521A (ja) * 2000-09-21 2002-04-05 Hitachi Information Systems Ltd ネットワークコンピューティングシステムとプログラム実行処理方法および負荷分散処理プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61289459A (ja) * 1985-06-17 1986-12-19 Hitachi Ltd 計算機システム間負荷分散方式
JPH0773148A (ja) * 1993-09-06 1995-03-17 Toshiba Corp 処理要求割り付け装置
JPH07105149A (ja) * 1993-10-08 1995-04-21 Hitachi Ltd 副プログラム転送実行を選択する分散処理方法
JP2002099521A (ja) * 2000-09-21 2002-04-05 Hitachi Information Systems Ltd ネットワークコンピューティングシステムとプログラム実行処理方法および負荷分散処理プログラム

Also Published As

Publication number Publication date
JP2006293743A (ja) 2006-10-26

Similar Documents

Publication Publication Date Title
CN112799789B (zh) 一种节点集群管理方法、装置、设备及存储介质
CN108256114B (zh) 文档在线预览方法、装置、计算机设备和存储介质
US8670614B2 (en) Method and system for providing tile map service using image fusion
CN108510082A (zh) 对机器学习模型进行处理的方法及装置
CN110069341B (zh) 边缘计算中结合功能按需配置的有依赖关系任务的调度方法
US7380005B1 (en) Systems, methods and computer program products for improving placement performance of message transforms by exploiting aggressive replication
CN108287758A (zh) 一种应用资源管理方法、使用方法及装置
CN101981897A (zh) 根据标准协议opc ua在客户端服务器系统中通信的方法和装置
Khalili et al. Inter‐layer per‐mobile optimization of cloud mobile computing: a message‐passing approach
CN111447143B (zh) 业务服务数据传输方法、装置、计算机设备和存储介质
CN102684817A (zh) 一种基于数字喷泉码的云存储体系结构及服务提供方法
WO2013169422A1 (en) Communications management
CN110149377A (zh) 一种视频服务节点资源分配方法、系统、装置及存储介质
JP4575218B2 (ja) サーバ型計算機および転送評価判定装置
CN107204998B (zh) 处理数据的方法和装置
Bosque et al. A load index and load balancing algorithm for heterogeneous clusters
Kiani et al. Optimal code partitioning over time and hierarchical cloudlets
CN101374158B (zh) 根据结果完成比例将缓存内容或处理内容递送给客户端
CN113342526A (zh) 云计算移动网络资源动态管控方法、系统、终端及介质
CN103197920B (zh) 一种并发控制方法、控制节点及系统
US20060136602A1 (en) Electronic data interchange apparatus
CN104735134B (zh) 一种用于提供计算服务的方法和装置
CN105917694B (zh) 电信网络中的服务提供与激活
CN113395342B (zh) 一种基于负载均衡分配的电网监控系统前置服务调度方法
US7808896B2 (en) Data path-based service deployment in hierarchical networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090623

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090806

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100817

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100819

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees