(57)【要約】【課題】  負荷分散装置による業務処理装置への負荷分散方式では、各業務処理装置へ均等にリクエストが割り当てられるため、例えばDB処理等を含む実行負荷の異なる業務が複数存在する場合において、高負荷な業務への処理要求が増大すると、低負荷の業務処理が滞る問題がある。【解決手段】  上記課題を解決するために、クライアントからの要求URLの解析による実行対象業務の判断機能を付加することによって、その業務の実行時負荷が予想できる場合、業務実行処理数に上限値を設けることによってDB処理等の負荷を業務単位で制御できるようにする。【選択図】  図１
2008004125.tif 000002
【特許請求の範囲】
【請求項１】
端末から要求される複数の業務処理を複数の計算機で処理するための負荷制御
方法において、
前記業務処理に関連するプログラムの位置情報を業務名称と対応付け、各前記
業務について処理制限数を予め対応付けて記憶し、
前記プログラムの位置情報を含む要求の入力に応じて、前記プログラムが関連
する業務の処理数が処理制限数を超えていない場合は前記要求に対し処理を実行
し、超えた場合はキューに蓄積することを特徴とする負荷制御方法。
【請求項２】
前記位置情報は、URLであることを特徴とする請求項1記載の負荷制御方法。
【請求項３】
前記業務処理は、共有データベースであることを特徴とする請求項1記載の負
荷制御方法。
【請求項４】
前記要求を処理すると、前記処理制限数にカウントアップした処理数を対応
付けて記憶することを特徴とする請求項1記載の負荷制御方法。
【請求項５】
端末から要求される複数の業務処理を複数の計算機で処理するための負荷制御
方法において、
前記業務処理に関連するプログラムの位置情報を業務名称と対応付け、各前記
業務についてレスポンスの上限値を予め対応付けて記憶し、
前記プログラムの位置情報を含む要求の入力に応じて、前記プログラムが関連
する業務の平均レスポンスが前記レスポンスの上限値を超えていない場合は前記
要求に対し処理を実行し、超えた場合はキューに蓄積することを特徴とする負荷
制御方法。
【請求項６】
前記要求を処理の後で、平均レスポンスを算出し、レスポンスの上限値に対
応付けて記憶することを特徴とする請求項５記載の負荷制御方法。
【請求項７】
前記位置情報は、URLであることを特徴とする請求項５記載の負荷制御方法。
【請求項８】
前記業務処理は、共有データベースであることを特徴とする請求項５記載の負
荷制御方法。
【請求項９】
端末から要求される複数の業務処理を複数の計算機で処理するための負荷制御
装置において、
前記業務処理に関連するプログラムの位置情報を業務名称と対応付け、各前記
業務について処理制限数を予め対応付けて記憶する手段と、
前記プログラムの位置情報を含む要求の入力に応じて、前記プログラムが関連
する業務の処理数が処理制限数を超えていない場合は前記要求に対し処理を実行
し、超えた場合はキューに蓄積する手段とを備えたこと特徴とする負荷制御装置
。
【請求項１０】
端末から要求される複数の業務処理を複数の計算機で処理するための負荷制御
装置において、
前記業務処理に関連するプログラムの位置情報を業務名称と対応付け、各前記
業務についてレスポンスの上限値を予め対応付けて記憶する手段と、
前記プログラムの位置情報を含む要求の入力に応じて、前記プログラムが関連
する業務の平均レスポンスが前記レスポンスの上限値を超えていない場合は前記
要求に対し処理を実行し、超えた場合はキューに蓄積する手段とを備えたことを
特徴とする負荷制御装置。
【請求項１１】
端末から要求される複数の業務処理を複数の計算機で処理するための負荷制御
プログラムにおいて、
前記業務処理に関連するプログラムの位置情報を業務名称と対応付け、各前記
業務について処理制限数を予め対応付けて記憶するステップと、
前記プログラムの位置情報を含む要求の入力に応じて、前記プログラムが関連
する業務の処理数が処理制限数を超えていない場合は前記要求に対し処理を実行
し、超えた場合はキューに蓄積するステップとを備えたこと特徴とする負荷制御
プログラム。
【請求項１２】
端末から要求される複数の業務処理を複数の計算機で処理するための負荷制御
プログラムにおいて、
前記業務処理に関連するプログラムの位置情報を業務名称と対応付け、各前記
業務についてレスポンスの上限値を予め対応付けて記憶するステップと、
前記プログラムの位置情報を含む要求の入力に応じて、前記プログラムが関連
する業務の平均レスポンスが前記レスポンスの上限値を超えていない場合は前記
要求に対し処理を実行し、超えた場合はキューに蓄積するステップとを備えたこ
とを特徴とする負荷制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、使用可能なリソースが複数存在する場合、条件に応じて各リソース
の負荷バランスを制御する負荷制御技術に関する。
【背景技術】
【０００２】
従来の負荷分散制御方法は、特許文献１記載に開示されているような技術を用
い、計算機システムで実行されるバッチ、オンラインおよびＴＳＳ（タイムシェ
アリングシステム）という業務毎の資源の利用状況に合わせて負荷を分散してい
る。
【０００３】
【特許文献１】特開平９−１６７１４１
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記従来技術の負荷分散制御方法は、バッチ、オンラインおよびＴＳＳといっ
た計算機システムの使用形態毎となっているため、計算機システムの使用形態が
同一（例えばオンライン）の場合は、その処理内容にかかわらず、均一な負荷分
散制御となってしまうという課題が生じる。
【０００５】
本発明の目的は、リソース群を利用する複数の目的について、その各々に応じ
た負荷分散制御を行うことにある。
【課題を解決するための手段】
【０００６】
ネットワークを介してひとつまたは複数のクライアントから要求される業務を
処理する業務処理装置またはシステムにおいて、各業務共通DBへ高負荷をかける
ような業務処理によって、軽負荷業務の処理の滞りを防止するために、クライア
ントから送信されるリクエストURLから要求対象の業務を予め判断しておき、業
務毎の処理上限数を任意に設定することによって、各業務共通DBへの負荷を制御
することを可能とした。
【０００７】
また、クライアントからの高負荷な業務へのリクエスト数をURL単位で記録す
るステップと、該URLから要求業務を判別するステップと、実行中の業務処理数
と業務処理制限数とを比較し業務処理制限数に達している場合は要求を一旦キュ
ーに入れて待機させるステップと、業務実行条件を満たしている場合は業務処理
装置に要求を渡すステップと、業務処理装置からの応答時間より業務処理の実行
時間の平均とを計算するステップを持つことによって、共通DBへの負荷を制御す
る機能を可能とした。
【発明の効果】
【０００８】
リソース群を利用する複数の目的について、その各々に応じた負荷分散制御を
行うことが可能となる。
【発明を実施するための最良の形態】
【０００９】
図1は本発明を説明するための全体構成図である。100は業務処理要求を行うク
ライアントである。クライアントは101のネットワークを経由して、110の負荷制
御装置に接続される。負荷制御装置110は、リクエスト登録部111、負荷制限部11
2、処理結果登録部113、リクエスト情報DB(114)、制限情報DB(115)、待ちキュー
116とから成る。117は負荷分散装置であり、120の業務処理装置群にリクエスト
を分配している。121は業務の単位であり業務処理装置120によって処理される。
ひとつの業務処理装置120内には、複数の業務121が同時に処理される場合がある
。130は、各業務処理装置120で使用される共通DBであり、複数台存在する場合が
ある。クライアント100のブラウザ等から業務処理要求がリクエストされたとき
、リクエストはまず負荷制御装置110のリクエスト登録部111に入る。リクエスト
登録部111では、到着したリクエストURLの内容によって、リクエスト情報DBを更
新する。
【００１０】
リクエスト情報DBは図2(200)のようなテーブルを持つ。201はDBに処理を行うU
RLパス名である。202は業務処理装置120内に存在する業務名である。203は、実
行中リクエスト数であり、201で登録されたリクエストが業務処理装置120で現在
何件実行されているかを示す。204はURL別平均レスポンスタイムであり、該URL
の処理が開始してから終了するまでの平均時間が記録されている。
【００１１】
リクエスト登録部111の処理を図4に示す。負荷制御装置110にリクエストが到
着すると、そのURLを解析する（ステップ400）。その後リクエスト情報DBにアク
セスし、該URLの実行中リクエスト数の値を1増加させる（ステップ401）。また
、リクエストURLから対象とする業務名を確定させ（ステップ402）、そのURLと
対象業務名を負荷制限部112に渡す（ステップ403）。負荷制限部112では、現在
のリクエスト数と共通DB（130）の負荷を考慮し、業務処理実行数を抑制させる
働きをする。負荷制限部112は、制限情報DB（115）を更新する。
【００１２】
制限情報DB（115）は図3(300)のようなテーブルを持つ。301は業務名であり、
302は、業務毎の最大リクエスト数の制限を設ける処理制限数であり、303は現在
の処理リクエストの合計数である合計処理リクエスト数であり、304は、クライ
アントに返されるレスポンスタイムで許容できるもっとも遅いレスポンスタイム
の最大値である最遅レスポンスタイムであり、305は現在の業務毎のレスポンス
タイムの平均値である業務別平均レスポンスタイムである。
【００１３】
負荷制限部112の処理を図5に示す。リクエスト登録部111から対象業務を入力
すると(ステップ500)、その業務の合計処理リクエスト数303が処理制限数302以
上に達している場合は、そのリクエストを待ちキュー１１６に一旦溜め、合計処
理リクエスト数103が処理制限数302を下回るのを待ち次の処理に進む(ステップ5
01)。ステップ502では、現在の業務別平均レスポンス時間305が最遅レスポンス
タイム304を超えている場合は、そのリクエストは待ちキュー１１６にためられ
、業務別平均レスポンスタイム305が減少するのを待つ。そうでない場合は、制
限情報DB(115)の合計処理リクエスト数303の該業務の値を1増加させ、負荷分散
機１１７にリクエストを渡す。負荷分散機117は、各業務処理装置120に対して、
均等にリクエストを投げる。業務処理装置120は、与えられた業務121を実行する
。業務121は、必要に応じて共通DB130にアクセスして処理し、その処理結果をク
ライアント100に返すが、その過程として負荷制御装置110の処理結果登録部113
に返す。処理結果登録部113は、業務処理装置へのリクエストから、そのレスポ
ンスまでに経過した時間を計算し、共通DBの負荷状況を記録する機能を持つ。
【００１４】
処理結果登録部113の処理を図6に示す。リクエスト情報DB(114)にアクセスし
、URL別平均レスポンスタイム204を計算して更新する(ステップ600)。また、当
該実行中リクエスト数203を１つ減らす(ステップ601)。次に制御情報DBにアクセ
スし、該業務の合計処理リクエスト数303を１つ減らし(ステップ602)、業務別平
均レスポンスタイム305を計算して更新する(ステップ603)。その後クライアント
に結果を返して(ステップ60４)、一連の作業を終了する。
【００１５】
以上説明したように、業務処理装置や共通DBへ流入するリクエストを、業務毎
に一時制限させておくことによって、負荷の大きい業務による業務処理装置や共
通DBへの負荷を減少させることができ、他の軽敏な業務処理まで負荷を与えない
ようにすることが可能となる。結果、負荷の小さい業務のレスポンスを向上させ
ることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態を示す全体構成図である。
【図２】リクエスト情報DBのテーブルである。
【図３】制限情報DBのテーブルである。
【図４】本発明のリクエスト登録部のフローチャートである。
【図５】本発明の負荷制限部のフローチャートである。
【図６】本発明の処理結果登録部のフローチャートである。
【符号の説明】
【００１７】
100：クライアント
101：ネットワーク
110：負荷制御装置
111：リクエスト登録部
112：負荷制限部
113：処理結果登録部
114：リクエスト情報ＤＢ
115：制限情報ＤＢ
116：待ちキュー
117：負荷分散装置
120：業務処理装置
121：業務
130：共通ＤＢ
200：リクエスト情報ＤＢテーブル
201：ＵＲＬパス名
202：業務名
203：実行リクエスト数
204：URL別平均レスポンスタイム(s)
300：制限情報ＤＢテーブル
301：業務名
302：処理制限数
303：合計実行リクエスト数
304：最遅レスポンスタイム
305：業務別平均レスポンスタイム(s)
【図１】
2008004125.tif 000003
【図２】
2008004125.tif 000004
【図３】
2008004125.tif 000005
【図４】
2008004125.tif 000006
【図５】
2008004125.tif 000007
【図６】
2008004125.tif 000008
【手続補正書】
【提出日】平成19年10月1日(2007.10.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クライアントから送られた業務のリクエストを処理するための複数の業務処理装置と、該リクエストを受信して前記業務のそれぞれの負荷を分散するように前記業務処理装置に該リクエストを送信する記憶装置を備えた負荷制御装置とを有する計算機システムにおける負荷分散方法において、
負荷制御装置は、複数の業務とその下位に属する複数の業務をＵＲＬで階層的に表したＵＲＬパス名と、前記複数の業務の業務名と実行中リクエスト数とＵＲＬ別平均レスポンスタイムとを対応付けてリクエスト情報ＤＢテーブルとして記憶し，前記業務名毎に前記リクエスト情報ＤＢテーブルから算出した業務別平均レスポンスと最遅レスポンスタイムとを制限ＤＢテーブルとして記憶し，前記クライアントから送られた前記ＵＲＬパス名を含むリクエストの受信に応じて、該ＵＲＬパス名に対応する前記階層構造を構成する業務の前記業務別平均レスポンスタイムが最遅レスポンスタイムを超えている場合は、当該受け付けたリクエストをキューに格納し、超えていない場合は、当該ＵＲＬパス名に該当する前記業務に送り、
前記リクエストを送られた業務は、該リクエストの終了に際して送られる応答を受信に応じて、当該ＵＲＬパス名のレスポンスタイムを算出し、当該ＵＲＬパス名に含まれる当該業務の前記業務別レスポンスを算出することを特徴とする負荷分散方法。
【請求項２】
前記前記リクエスト情報ＤＢテーブルには、実行中のリクエスト数を記憶し、前記リクエストを受信する毎に実行中のリクエスト数をカウントし、該リクエストに含まれた業務の合計処理リクエスト数にカウントし、を超えている場合は、当該受け付けたリクエストをキューに格納し、超えていない場合は、当該ＵＲＬパス名に該当する前記業務に送ることを特徴とする請求項１記載の負荷分散方法。
【請求項３】
クライアントから送られた業務のリクエストを処理するための複数の業務処理装置と、該リクエストを受信して前記業務のそれぞれの負荷を分散するように前記業務処理装置に該リクエストを送信する記憶装置を備えた負荷制御装置とを有する計算機システムにおける負荷制御装置において、
負荷制御装置は、複数の業務とその下位に属する複数の業務をＵＲＬで階層的に表したＵＲＬパス名と、前記複数の業務の業務名と実行中リクエスト数とＵＲＬ別平均レスポンスタイムとを対応付けてリクエスト情報ＤＢテーブルとして記憶し，前記業務名毎に前記リクエスト情報ＤＢテーブルから算出した業務別平均レスポンスと最遅レスポンスタイムとを制限ＤＢテーブルとして記憶し，前記クライアントから送られた前記ＵＲＬパス名を含むリクエストの受信に応じて、該ＵＲＬパス名に対応する前記階層構造を構成する業務の前記業務別平均レスポンスタイムが最遅レスポンスタイムを超えている場合は、当該受け付けたリクエストをキューに格納し、超えていない場合は、当該ＵＲＬパス名に該当する前記業務に送り、
前記リクエストを送られた業務は、該リクエストの終了に際して送られる応答を受信に応じて、当該ＵＲＬパス名のレスポンスタイムを算出し、当該ＵＲＬパス名に含まれる当該業務の前記業務別レスポンスを算出することを特徴とする計算機システム。
【請求項４】
前記前記リクエスト情報ＤＢテーブルには、実行中のリクエスト数を記憶し、前記リクエストを受信する毎に実行中のリクエスト数をカウントし、該リクエストに含まれた業務の合計処理リクエスト数にカウントし、を超えている場合は、当該受け付けたリクエストをキューに格納し、超えていない場合は、当該ＵＲＬパス名に該当する前記業務に送ることを特徴とする請求項３記載の計算機システム。
【請求項５】
クライアントから送られた業務のリクエストを処理するための複数の業務処理装置と、該リクエストを受信して前記業務のそれぞれの負荷を分散するように前記業務処理装置に該リクエストを送信する記憶装置を備えた負荷制御装置とを有する計算機システムを機能させるための負荷分散プログラムにおいて、
複数の業務とその下位に属する複数の業務をＵＲＬで階層的に表したＵＲＬパス名と、前記複数の業務の業務名と実行中リクエスト数とＵＲＬ別平均レスポンスタイムとを対応付けてリクエスト情報ＤＢテーブルとして記憶し，前記業務名毎に前記リクエスト情報ＤＢテーブルから算出した業務別平均レスポンスと最遅レスポンスタイムとを制限ＤＢテーブルとして記憶し，前記クライアントから送られた前記ＵＲＬパス名を含むリクエストの受信に応じて、該ＵＲＬパス名に対応する前記階層構造を構成する業務の前記業務別平均レスポンスタイムが最遅レスポンスタイムを超えている場合は、当該受け付けたリクエストをキューに格納し、超えていない場合は、当該ＵＲＬパス名に該当する前記業務に送るステップと、
前記リクエストを送られた業務は、該リクエストの終了に際して送られる応答を受信に応じて、当該ＵＲＬパス名のレスポンスタイムを算出し、当該ＵＲＬパス名に含まれる当該業務の前記業務別レスポンスを算出するステップとを有することを特徴とする負荷分散プログラム。
【請求項６】
前記前記リクエスト情報ＤＢテーブルには、実行中のリクエスト数を記憶し、前記リクエストを受信する毎に実行中のリクエスト数をカウントし、該リクエストに含まれた業務の合計処理リクエスト数にカウントし、を超えている場合は、当該受け付けたリクエストをキューに格納し、超えていない場合は、当該ＵＲＬパス名に該当する前記業務に送るステップを有することを特徴とする請求項５記載の負荷分散プログラム。