(57)【要約】【課題】負荷分散装置が、業務クライアントから送られてきた業務処理要求を複数のサーバに振り分ける負荷分散システムにおいて、複数の業務が割り当てられているサーバにかかる負荷を適切なものにする。【解決手段】監視制御装置１内の分散アルゴリズム決定手段１３は、複数台のサーバ３１〜３５の中から複数の業務（例えば業務ａ，ｂ）が割り当てられている特定サーバ（例えば、サーバ３３）を認識し、この特定サーバ３３に割り当てられている各業務ａ，ｂに対する処理要求については、特定サーバ３３への振り分け率を、上記複数の業務ａ，ｂの内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する。また、負荷分散装置２内の振り分け手段２３は、分散アルゴリズム決定手段１３で生成された分散アルゴリズムに従って処理要求を振り分ける。【選択図】図１
2008009800.tif 000002
【特許請求の範囲】
【請求項１】
複数台のサーバと、負荷分散装置と、監視制御装置とを含む負荷分散システムにおいて、
前記監視制御装置が、
前記複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段を備え、
前記負荷分散装置が、
前記分散アルゴリズム決定手段で生成された分散アルゴリズムに従って処理要求を振り分ける振り分け手段を備えたことを特徴とする負荷分散システム。
【請求項２】
請求項１記載の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする負荷分散システム。
【請求項３】
請求項２記載の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、
システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする負荷分散システム。
【請求項４】
請求項２または３記載の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、
前記特定サーバにおけるトランザクション量が処理可能トランザクション量を超えると判断した場合、前記特定サーバへの処理要求の振り分け率を減らす度合いを、優先度が低い業務ほど大きくすることを特徴とする負荷分散システム。
【請求項５】
請求項１記載の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、
前記特定サーバに割り当てられている複数の業務の中に、その業務の終了時刻に近づいた業務が発生した場合、該業務に対する処理要求の、前記特定サーバへの振り分け率を０として分散アルゴリズムを生成することを特徴とする負荷分散システム。
【請求項６】
請求項１記載の負荷分散システムにおいて、
前記監視制御装置が、
管理者によって、業務とその業務を割り当てるサーバの台数が指定されたとき、前記業務を割り当てるサーバを決定し、該決定したサーバに、前記業務に対応する業務アプリケーションプログラムを展開して起動する割り当て手段を備えたことを特徴とする負荷分散システム。
【請求項７】
請求項６記載の負荷分散システムにおいて、
前記割り当て手段が、管理者によって、業務とその業務を割り当てるサーバの台数が指定された場合、前記業務を割り当てるアクト系のサーバを決定して該決定したアクト系のサーバに、前記業務に対応する業務アプリケーションプログラムを展開して起動すると共に、スタンバイ系にするサーバを決定して該決定したスタンバイ系のサーバに、前記業務に対応する業務アプリケーションプログラムを展開し、前記アクト系のサーバに障害が発生した場合、前記スタンバイ系のサーバに展開してある業務アプリケーションプログラムを起動し、
前記分散アルゴリズム決定手段が、前記障害の発生したアクト系のサーバに振り分けられていた前記業務に対する処理要求が、前記スタンバイ系のサーバに振り分けられるようにする分散アルゴリズムを生成することを特徴とする負荷分散システム。
【請求項８】
複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段を備えたことを特徴とする監視制御装置。
【請求項９】
請求項８記載の監視制御装置において、
前記分散アルゴリズム決定手段が、
システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする監視制御装置。
【請求項１０】
請求項９記載の監視制御装置において、
前記分散アルゴリズム決定手段が、
システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする監視制御装置。
【請求項１１】
複数台のサーバと、負荷分散装置と、監視制御装置とを含む負荷分散システムにおける負荷分散方法であって、
前記監視制御装置が、前記複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定ステップと、
前記負荷分散装置が、前記分散アルゴリズム決定ステップで生成された分散アルゴリズムに従って処理要求を振り分ける振り分けステップとを含むことを特徴とする負荷分散方法。
【請求項１２】
請求項１１記載の負荷分散方法において、
前記分散アルゴリズム決定ステップでは、システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする負荷分散方法。
【請求項１３】
請求項１２記載の負荷分散方法において、
前記分散アルゴリズム決定ステップでは、システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする負荷分散方法。
【請求項１４】
コンピュータを、
複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段として機能させるためのプログラム。
【請求項１５】
請求項１４記載のプログラムにおいて、
前記分散アルゴリズム決定手段が、
システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とするプログラム。
【請求項１６】
請求項１５記載のプログラムにおいて、
前記分散アルゴリズム決定手段が、
システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアントからの処理要求を分散アルゴリズムに従って複数のサーバに振り分けることにより、負荷分散を実現する負荷分散技術に関し、特に、複数の業務が割り当てられているサーバにかかる負荷を適切なものにすることができる負荷分散技術に関する。
【背景技術】
【０００２】
従来、企業などにおいては、企業内に存在する複数台の業務クライアントからの業務処理要求を１台のサーバを用いて処理するのが一般的であった。しかし、業務クライアント数の増加などに伴い、１台のサーバだけでは、業務処理要求を迅速に処理することが困難になってきている。
【０００３】
そこで、図１８に示すように、複数台のサーバＳＥ１〜ＳＥｎを設けると共に、クライアントＣ１〜Ｃｍとの間に負荷分散装置ＬＢを配置した負荷分散システムが実用化されるようになってきている（例えば、特許文献１参照）。サーバＳＥ１〜ＳＥｎは、例えば、業務ａに対する業務処理要求を処理するサーバであり、負荷分散装置ＬＢは、各業務クライアントＣ１〜Ｃｍから送られてきた業務ａに関する業務処理要求を、ラウンドロビン方式などの分散アルゴリズムに従ってサーバＳＥ１〜ＳＥｎに振り分ける。
【０００４】
【特許文献１】特開２００５−１７４０８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した従来の技術によれば、サーバにかかる負荷を低減することができるので、業務処理要求を迅速に処理することが可能になる。しかしながら、上述した従来の技術には、次のような問題点があった。
【０００６】
今、例えば、図１９に示すように、５台のサーバＳＥ１〜ＳＥ５を含み、サーバＳＥ１〜ＳＥ３には業務ａが割り当てられ（業務ａに関する業務処理要求を処理する業務アプリケーションプログラムが展開され）、サーバＳＥ３〜ＳＥ５には業務ｂが割り当てられている負荷分散システムを考えてみる。このような負荷分散システムにおいては、負荷分散装置ＬＢは、各業務クライアントＣ１〜Ｃｍから送られてきた業務ａに関する業務処理要求をラウンドロビン方式などによりサーバＳＥ１〜ＳＥ３に振り分け、業務ｂに関する業務処理要求をサーバＳＥ３〜ＳＥ５に振り分けることになる。
【０００７】
このような負荷分散システムの場合、１つの業務しか割り当てられていないサーバＳＥ１，ＳＥ２，ＳＥ４，ＳＥ５においては、負荷分散の効果により業務処理要求を迅速に処理することが可能になる。しかし、２つの業務ａ，ｂが割り当てられているサーバＳＥ３においては、２つの業務ａ，ｂについての業務処理要求を処理しなければならないため、負荷が高くなり、業務処理要求を迅速に処理できなくなる場合があるという問題があった。
〔発明の目的〕
そこで、本発明の目的は、複数の業務が割り当てられているサーバにかかる負荷を適切なものにできるようにすることにある。
【課題を解決するための手段】
【０００８】
本発明にかかる第１の負荷分散システムは、
複数台のサーバと、負荷分散装置と、監視制御装置とを含む負荷分散システムにおいて、
前記監視制御装置が、
前記複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段を備え、
前記負荷分散装置が、
前記分散アルゴリズム決定手段で生成された分散アルゴリズムに従って処理要求を振り分ける振り分け手段を備えたことを特徴とする。
【０００９】
本発明にかかる第２の負荷分散システムは、第１の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００１０】
本発明にかかる第３の負荷分散システムは、第２の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、
システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００１１】
本発明にかかる第４の負荷分散システムは、第２または第３の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、
前記特定サーバにおけるトランザクション量が処理可能トランザクション量を超えると判断した場合、前記特定サーバへの処理要求の振り分け率を減らす度合いを、優先度が低い業務ほど大きくすることを特徴とする。
【００１２】
本発明にかかる第５の負荷分散システムは、第１の負荷分散システムにおいて、
前記分散アルゴリズム決定手段が、
前記特定サーバに割り当てられている複数の業務の中に、その業務の終了時刻までの時間が所定時間よりも短くなった業務が発生した場合、該業務に対する処理要求の、前記特定サーバへの振り分け率を０として分散アルゴリズムを生成することを特徴とする。
【００１３】
本発明にかかる第６の負荷分散システムは、第１の負荷分散システムにおいて、
前記監視制御装置が、
管理者によって、業務とその業務を割り当てるサーバの台数が指定されたとき、前記業務を割り当てるサーバを決定し、該決定したサーバに、前記業務に対応する業務アプリケーションプログラムを展開して起動する割り当て手段を備えたことを特徴とする。
【００１４】
本発明にかかる第７の負荷分散システムは、第６の負荷分散システムにおいて、
前記割り当て手段が、管理者によって、業務とその業務を割り当てるサーバの台数が指定され、且つスタンバイ系のサーバを設けることが指示された場合、前記業務を割り当てるアクト系のサーバを決定して該決定したアクト系のサーバに、前記業務に対応する業務アプリケーションプログラムを展開して起動すると共に、スタンバイ系にするサーバを決定して該決定したスタンバイ系のサーバに、前記業務に対応する業務アプリケーションプログラムを展開し、前記アクト系のサーバに障害が発生した場合、前記スタンバイ系のサーバに展開してある業務アプリケーションプログラムを起動し、
前記分散アルゴリズム決定手段が、前記障害の発生したアクト系のサーバに振り分けられていた前記業務に対する処理要求が、前記スタンバイ系のサーバに振り分けられるようにする分散アルゴリズムを生成することを特徴とする。
【００１５】
本発明にかかる第１の監視制御装置は、
複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段を備えたことを特徴とする。
【００１６】
本発明にかかる第２の監視制御装置は、第１の監視制御装置において、
前記分散アルゴリズム決定手段が、
システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００１７】
本発明にかかる第３の監視制御装置は、第２の監視制御装置において、
前記分散アルゴリズム決定手段が、
システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００１８】
本発明にかかる第１の負荷分散方法は、
複数台のサーバと、負荷分散装置と、監視制御装置とを含む負荷分散システムにおける負荷分散方法であって、
前記監視制御装置が、前記複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定ステップと、
前記負荷分散装置が、前記分散アルゴリズム決定ステップで生成された分散アルゴリズムに従って処理要求を振り分ける振り分けステップとを含むことを特徴とする。
【００１９】
本発明にかかる第２の負荷分散方法は、第１の負荷分散方法において、
前記分散アルゴリズム決定ステップでは、システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００２０】
本発明にかかる第３の負荷分散方法は、第２の負荷分散方法において、
前記分散アルゴリズム決定ステップでは、システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００２１】
本発明にかかる第１のプログラムは、
コンピュータを、
複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、該認識した特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段として機能させる。
【００２２】
本発明にかかる第２のプログラムは、第１のプログラムにおいて、
前記分散アルゴリズム決定手段が、
システム運用開始時に、管理者から入力されたサーバ毎の単位時間あたりの処理可能トランザクション量と、１台のサーバに単位時間の間に振り分けられると予測される、業務毎の予測トランザクション量とに基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００２３】
本発明にかかる第３のプログラムは、第２のプログラムにおいて、
前記分散アルゴリズム決定手段が、
システム運用時に測定した前記各サーバにおける各業務の単位時間あたりのトランザクション量である測定トランザクション量に基づいて、前記特定サーバで処理する単位時間あたりのトランザクション量が、処理可能トランザクション量を超えると判断した場合、前記特定サーバに割り当てられている各業務に対する処理要求については、前記特定サーバへの振り分け率を、前記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成することを特徴とする。
【００２４】
〔作用〕
監視制御装置内の分散アルゴリズム決定手段は、複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、この認識した特定サーバに割り当てられている各業務に対する処理要求については、上記特定サーバへの振り分け率を、上記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する。また、負荷分散装置内の振り分け手段は、上記分散アルゴリズム決定手段で生成された分散アルゴリズムに従って処理要求を振り分ける。
【発明の効果】
【００２５】
本発明によれば、複数の業務が割り当てられている特定サーバにかかる負荷を適切なものにし、業務処理を効率的に行えるようにすることができる。その理由は、複数台のサーバの中から複数の業務が割り当てられている特定サーバを認識し、この認識した特定サーバに割り当てられている各業務に対する処理要求については、上記特定サーバへの振り分け率を、上記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段を備えているからである。
【発明を実施するための最良の形態】
【００２６】
次に、発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００２７】
〔第１の実施の形態の構成の説明〕
図１を参照すると、本発明にかかる負荷分散システムの第１の実施の形態は、監視制御装置１と、負荷分散装置２と、５台のサーバ３１〜３５から構成されるサーバ群３と、Ｍ台の業務クライアント４１〜４Ｍから構成される業務クライアント群４とを含んでいる。なお、本実施の形態では、サーバの台数を５台としたが、複数台であれば、これに限られるものではない。また、本実施の形態では、各サーバ３１〜３５にはそれぞれサーバ名Ｍ３１〜Ｍ３５が付与されている。
【００２８】
監視制御装置１は、運用開始時に業務管理者から入力された業務管理情報や、運用時に各サーバ３１〜３５において測定された業務毎の単位時間あたりのトランザクション量（単位時間あたりの業務処理要求数）などに基づいて、業務クライアント群４からの業務処理要求を各サーバ３１〜３５にどのように振り分けるのかを示す分散アルゴリズムを生成する機能や、業務処理要求を処理するために必要になる業務アプリケーションプログラムを各サーバ３１〜３５に展開する機能などを有する。
【００２９】
このような機能を有する監視制御装置１は、入力手段１１と、割り当て手段１２と、分散アルゴリズム決定手段１３と、送信手段１４と、収集手段１５と、記憶装置１６と、キーボード等の入力部１７と、ＬＣＤなどの表示部１８とを備えている。なお、記憶装置１６は、ディスク装置などによって実現されるものであり、業務管理情報記憶部１６１と、制御ファイル記憶部１６２と、割り当て情報記憶部１６３と、業務アプリケーション記憶部１６４とを備えている。
【００３０】
入力手段１１は、表示部１８に業務管理情報入力画面を表示し、この画面を用いて業務管理者が入力した業務管理情報を業務管理情報記憶部１６１に登録する機能を有する。業務管理者が入力する業務管理情報には、例えば、次のような情報が含まれる。
【００３１】
・サーバ群３に処理させる業務と、その業務を処理するために使用するサーバの台数（リソース割り当て要求）
・各業務の終了時刻
・業務間の優先順位
・各サーバ３１〜３Ｍが単位時間あたりに処理することができるトランザクション量（処理可能トランザクション量）
・１台のサーバに単位時間の間に振り分けられると予測される、業務毎のトランザクション量（予測トランザクション量）。例えば、単位時間の間に発生すると予想される業務ａについてのトランザクション量がＴａであり、業務ａが割り当てられるサーバの台数がｋ台であれば、業務ａに関する予測トランザクション量は、Ｔａ／ｋとなる。
【００３２】
図２は、業務情報記憶部１６１の内容例を示す図であり、上記したリソース割り当て要求、各業務の終了時刻、業務間の優先順位、処理可能トランザクション量、および予測トランザクション量が登録される。
【００３３】
割り当て手段１２は、業務管理情報記憶部１６１に登録されているリソース割り当て要求に従って、どのサーバにどの業務を割り当てるのかを決定する機能や、割り当て結果を示す割り当て情報を割り当て情報記憶部１６３に登録する機能や、割り当て結果に基づいて、各サーバに業務アプリケーション記憶部１６４に登録されている該当する業務アプリケーションプログラムを展開して起動する機能を有する。
【００３４】
図３は、割り当て情報記憶部１６３の内容例を示す図である。同図の例は、サーバ３１、３２には、業務ａだけが割り当てられ、サーバ３３には業務ａと業務ｂとが割り当てられ、サーバ３４、３５には業務ｂだけが割り当てられていることを示している。
【００３５】
分散アルゴリズム決定手段１３は、割り当て情報記憶部１６３に登録されている割り当て情報に基づいて、複数の業務が割り当てられているサーバ（複数の業務が割り当てられているサーバを特定サーバという場合もある）を認識する機能や、特定サーバに割り当てられている各業務に対する処理要求については、上記特定サーバへの振り分け率を、上記複数の業務の内の１つだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する機能や、生成した分散アルゴリズムの内容を示す制御ファイルを生成する機能や、生成した制御ファイルを制御ファイル記憶部１６２に登録する機能を有する。
【００３６】
送信手段１４は、分散アルゴリズム決定手段１３が生成した制御ファイルを負荷分散装置２へ送信する機能を有する。
【００３７】
収集手段１５は、各サーバ３１〜３５において測定された業務毎の単位時間あたりのトランザクション量を収集する機能を有する。
【００３８】
このような機能を有する監視制御装置１は、コンピュータによって実現可能であり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータを監視制御装置１として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に入力手段１１、割り当て手段１２、分散アルゴリズム決定手段１３、送信手段１４および収集手段１５を実現する。
【００３９】
負荷分散装置２は、監視制御装置１から送られてきた制御ファイルに従って、業務クライアント群４から送られてきた業務処理要求を各サーバ３１〜３５に振り分ける機能を有する。このような機能を有する負荷分散装置２は、受信手段２１と、制御ファイル記憶部２２１を有するディスク装置などの記憶装置２２と、振り分け手段２３とを備えている。
【００４０】
受信手段２１は、監視制御装置１から送られてきた制御ファイルを受信し、制御ファイル記憶部２２１に登録する機能を有する。
【００４１】
振り分け手段２３は、業務クライアント群４から送られてきた業務処理要求を、制御ファイル記憶部２２１に登録されている制御ファイルに従って、各サーバ３１〜３５に振り分ける機能を有する。
【００４２】
負荷分散装置２は、コンピュータによって実現可能であり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータを負荷分散装置２として機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、受信手段２１および振り分け手段２３を実現する。
【００４３】
サーバ３１〜３５は、コンピュータによって実現されるものであり、負荷分散装置２を介して業務クライアント群４から送られてくる業務処理要求を処理する機能を有する。各サーバ３１〜３５は、自サーバに割り振られた各業務の単位時間あたりのトランザクション量（業務処理要求数）を測定する測定手段３１１〜３５１を備えている。
【００４４】
〔第１の実施の形態の動作の説明〕
次に、図面を参照して本実施の形態の動作について詳細に説明する。
【００４５】
業務管理者は、負荷分散システムの運用開始時、監視制御装置１内の入力手段１１を起動する。これにより、入力手段１１は、表示部１８に業務管理情報入力画面を表示し、業務管理者がこの画面を利用して入力した業務管理情報を業務管理情報記憶部１６１に登録する（図４のステップＳ４１）。
【００４６】
今、例えば、業務管理者によって入力された業務管理情報が、リソース割り当て要求、各業務の終了時刻、業務間の優先順位、処理可能トランザクション量、および予測トランザクション量を含み、それぞれの内容が以下に示すものであったとする。
【００４７】
（リソース割り当て要求）
・業務ａに割り当てるサーバの台数＝３台
・業務ｂに割り当てるサーバの台数＝３台
【００４８】
（各業務の終了時刻）
・業務ａの終了時刻＝Ｔ１
・業務ｂの終了時刻＝Ｔ２（Ｔ１＜Ｔ２；業務ａの方が終了時刻が早い）
【００４９】
（業務間の優先順位）
・業務ａ＜業務ｂ（業務ｂの方が優先順位が高い）
【００５０】
（処理可能トランザクション量）
・サーバ３１＝サーバ３２＝サーバ３３＝サーバ３４＝サーバ３５＝１００／ｓｅｃ
【００５１】
（予測トランザクション量）
・業務ａの予測トランザクション量＝３０／ｓｅｃ
・業務ｂの予測トランザクション量＝８０／ｓｅｃ
【００５２】
入力手段１１によって業務管理情報が登録されると、割り当て手段１２は、リソース割り当て要求に従って、サーバ３１〜３５の中から業務ａを割り当てる３台のサーバと、業務ｂを割り当てる３台のサーバとを決定する（ステップＳ４２）。
【００５３】
このステップＳ４２で行う処理の一例を図６のフローチャートを参照して詳しく説明する。
【００５４】
割り当て手段１２は、先ず、サーバの割り当てが要求されている業務ａ，ｂの内の１つの業務（例えば、業務ａ）に注目し、割り当て済みの業務数が最も少なく、且つ現在注目している業務ａが割り当てられていないサーバを、業務ａを割り当てるサーバとする（ステップＳ６１，Ｓ６３）。そのようなサーバが複数台存在する場合には、予め定められている規則に従って、業務ａを割り当てるサーバを決定する。この時点では、各サーバ３１〜３５には業務が割り当てられていないので、サーバ３１に業務ａを割り当てると決定する。
【００５５】
その後、割り当て手段１２は、要求された台数（３台）のサーバを業務ａに割り当てたか否かを判断する（ステップＳ６４）。この時点では、１台のサーバにしか業務ａを割り当てていないので（ステップＳ６４がＮＯ）、割り当て手段１２は、再びステップＳ６３の処理を行い、業務ａをサーバ３２に割り当てることを決定する。以上の処理を繰り返し行い、業務ａに３台のサーバ３１〜３３を割り当てると（ステップＳ６４がＹＥＳ）、未処理の業務の内の１つ（この例の場合は業務ｂ）に注目し、この業務ｂを割り当てるサーバを決定する（ステップＳ６３，Ｓ６４）。以上の処理により、業務ａをサーバ３１〜３３に、業務ｂをサーバ３３〜３５に割り当てることが決定される。
【００５６】
そして、全ての業務ａ，ｂについて上述した処理を行うと（ステップＳ６２がＮＯ）、割り当て手段１２は、割り当て結果を割り当て情報記憶部１６３に登録する（ステップＳ６５）。これにより、割り当て情報記憶部１６３の内容は、図３に示すものとなる。以上が、ステップＳ４２で行う処理の詳細である。なお、図６では図示していないが、リソース割り当て要求によって、サーバ群３のサーバ台数以上のサーバが要求された場合には、割り当て手段１２は、表示部１８にエラー表示を行う等のエラー処理を行う。
【００５７】
次いで、割り当て手段１２は、業務ａを処理する業務アプリケーションプログラムを業務アプリケーション記憶部１６４から取り出して、サーバ３１〜３３に展開すると共に、業務ｂを処理する業務アプリケーションプログラムを業務アプリケーション記憶部１６４から取り出して、サーバ３３〜３５に展開し、その後、展開した各業務アプリケーションプログラムを起動する（ステップＳ４３）。
【００５８】
その後、分散アルゴリズム決定手段１３が、業務管理情報記憶部１６１に登録されている業務管理情報および割り当て情報記憶部１６３に登録されている割り当て情報に基づいて、負荷の分散アルゴリズムを決定する（ステップＳ４４）。
【００５９】
このステップＳ４４の処理を詳しく説明すると、次のようになる。先ず、分散アルゴリズム決定手段１３は、割り当て情報記憶部１６３を参照し、複数の業務が割り当てられている特定サーバが存在するか否かを調べる（図７のステップＳ７１）。
【００６０】
そして、特定サーバが存在しない場合（ステップＳ７１がＮＯ）には、各業務ａ，ｂに対する業務処理要求を、その業務ａ，ｂが割り当てられているサーバに均等に振り分けるような分散アルゴリズムを生成する（ステップＳ７３）。
【００６１】
これに対して、特定サーバが存在する場合（ステップＳ７１がＹＥＳ）は、業務管理情報記憶部１６１を参照し、特定サーバに割り当てられている業務の予測トランザクション量の合計値が、特定サーバの処理可能トランザクション量を超えているか否かを調べる（ステップＳ７２）。そして、処理可能トランザクション量を超えていない場合（ステップＳ７２がＮＯ）は、前述したステップＳ７３の処理を行う。これに対して、処理可能トランザクション量を超えている場合（ステップＳ７２がＹＥＳ）には、特定サーバへの業務処理要求の振り分け率が少なくなるような分散アルゴリズムを生成する（ステップＳ７４）。
【００６２】
この例の場合、複数の業務ａ，ｂが割り当てられている特定サーバ３３が存在し（ステップＳ７１がＹＥＳ）、且つ、業務ａの予測トランザクション量３０／ｓｅｃと業務ｂの予測トランザクション量８０／ｓｅｃとの合計値１１０／ｓｅｃが、特定サーバ３３の処理可能トランザクション量１００／ｓｅｃを超えるので（ステップＳ７２がＹＥＳ）、ステップＳ７４の処理が行われる。
【００６３】
ステップＳ７４では、特定サーバ３３への業務処理要求の振り分け率を、業務ａ或いは業務ｂだけが割り当てられているサーバへの振り分け率よりも少なくする分散アルゴリズムを生成する。このような分散アルゴリズムの生成方法としては、種々の方法を採用することができるが、本実施の形態では、例えば、次の様な生成方法を採用する。
【００６４】
先ず、予測トランザクション量の合計値１１０／ｓｅｃと処理可能トランザクション量１００／ｓｅｃとの差分１０／ｓｅｃを求める。その後、優先度が低い方の業務ａの、上記差分１０／ｓｅｃ分のトランザクション量を、業務ａが割り当てられているサーバ３１、３２に分配する。本実施の形態では、サーバ名中の番号が小さい方のサーバに分配する。
【００６５】
その結果、業務ａについては、サーバ３１で業務ａの４０／ｓｅｃ（＝３０／ｓｅｃ＋１０）のトランザクション量、サーバ３２で業務ａの３０／ｓｅｃのトランザクションｓｅｃ、特定サーバ３３で業務ａの２０／ｓｅｃ（＝３０／ｓｅｃ−１０／ｓｅｃ）のトランザクション量が処理されるような分配アルゴリズムを生成する。即ち、業務ａに関する業務処理要求が４：３：２の振り分け率でサーバ３１、３２、３３へ振り分けるような分散アルゴリズムを生成する。また、業務ｂについては、サーバ３３、３４、３５で、それぞれ業務ｂの８０／ｓｅｃのトランザクション量が処理されるような分散アルゴリズムを生成する。即ち、業務ｂに関する業務処理要求が１：１：１の振り分け率で各サーバ３３、３４、３５へ振り分けられるような分散アルゴリズムを生成する。以上が、ステップＳ４４で行う処理の詳細である。
【００６６】
再び、図４に戻り、分散アルゴリズム決定手段１３は、ステップＳ４４で分散アルゴリズムを生成すると、その内容を示す制御ファイルを制御ファイル記憶部１６２に登録すると共に、送信手段１４を介して負荷分散装置２へ送信する（ステップＳ４５）。この制御ファイルは、負荷分散装置２内の受信手段２１で受信され、制御ファイル記憶部２２１に登録される。図８に制御ファイルの内容例を示す。この例は、業務ａに関する業務処理要求を４：３：２の振り分け率でサーバ３１、３２、３３に振り分け、業務ｂに関する業務処理要求を１：１：１の振り分け率でサーバ３３、３４、３５に振り分けることを示している。
【００６７】
以上が、システム運用開始時に行われる処理である。次に、システム運用時に行われる処理について説明する。
【００６８】
システム運用時、負荷分散装置２内の振り分け手段２３は、制御ファイル記憶部２２１に登録されている制御ファイルに従って、業務クライアント群４から送られてきた業務ａ，ｂに関する業務処理要求を各サーバ３１〜３５に振り分けている。また、各サーバ３１〜３５は、負荷分散装置２を介して業務クライアント群４から送られてきた業務ａ，ｂに関する業務処理要求を処理すると共に、内部に設けられている測定手段３１１〜３５１を使用して、自サーバに割り当てられている業務の単位時間あたりのトランザクション量を測定している。
【００６９】
一方、監視制御装置１は、システム運用時、図５のフローチャートに示すように、定期的に各サーバ３１〜３５内の測定手段３１１〜３５１が測定したトランザクション量を収集し、収集したトランザクション量に基づいて新たな分散アルゴリズムを生成している（ステップＳ５１がＹＥＳ，Ｓ５２，Ｓ５３）。ステップＳ５３における新たな分散アルゴリズムの生成方法を図９のフローチャートを参照して説明する。
【００７０】
分散アルゴリズム決定手段１３は、先ず、割り当て情報記憶部１６３を参照し、複数の業務が割り当てられている特定サーバが存在するか否かを調べる（ステップＳ９１）。
【００７１】
そして、特定サーバが存在しない場合（ステップＳ９１がＮＯ）には、各業務ａ，ｂに対する業務処理要求を、その業務ａ，ｂが割り当てられているサーバに均等に振り分けるような分散アルゴリズムを生成する（ステップＳ９３）。
【００７２】
これに対して、特定サーバが存在する場合（ステップＳ９１がＹＥＳ）は、特定サーバ内の測定手段から収集した、各業務のトランザクション量の合計値が特定サーバの処理可能トランザクションを超えているか否かを調べる（ステップＳ９２）。そして、処理可能トランザクション量を超えていない場合（ステップＳ９２がＮＯ）は、ステップＳ９３の処理を行う。これに対して、処理可能トランザクション量を超えている場合（ステップＳ９２がＹＥＳ）には、特定サーバへの業務処理要求の振り分け率が少なくなるような分散アルゴリズムを生成する（ステップＳ９４）。以上が、ステップＳ５３で行う処理の詳細である。
【００７３】
再び、図５に戻り、分散アルゴリズム決定手段１３は、新たな分散アルゴリズムを生成すると、その内容を示す制御ファイルを、制御ファイル記憶部１６２に登録すると共に、送信手段１４を介して負荷分散装置２へ送信する（ステップＳ５４）。この制御ファイルは、負荷分散装置２内の受信手段２１で受信され、制御ファイル記憶部２２１に登録（上書き）される。振り分け手段２３は、この新たな分散アルゴリズムを示す制御ファイルに従って、業務クライアント群４からの業務処理要求を各サーバ３１〜３５に振り分ける。
【００７４】
また、分散アルゴリズム決定手段１３は、サーバ群３に割り当てられている業務ａ，ｂの中に、終了時刻が近づいた業務が存在するか否かも調べている（ステップＳ５５）。即ち、現在時刻と業務管理情報記憶部１６２に登録されている終了時刻との差分が所定値以下の業務が存在するか否かを調べている。
【００７５】
終了時刻が近づいた業務が存在する場合には、その業務が特定サーバ３３に割り当てられている業務か否かを、割り当て情報記憶部１６３を参照して判断する（ステップＳ５６）。
【００７６】
そして、特定サーバ３３に割り当てられている業務でなかった場合（ステップＳ５６がＮＯ）は、ステップＳ５９の処理を行う。これに対して、終了時刻が近づいている業務が存在する場合（ステップＳ５６がＹＥＳ）は、ステップＳ５７の処理を行う。
【００７７】
今、例えば、図１０に示すように、サーバ３１〜３３に業務ａが割り当てられ、サーバ３３〜３５に業務ｂが割り当てられているときに、業務ａの終了時刻が近づいたとする。この場合、分散アルゴリズム決定手段１３は、業務ａの、特定サーバ３３への振り分け率を「０」にした新たな分散アルゴリズムを生成する。より具体的には、業務ａの処理要求を、サーバ３１、３２に１：１で振り分け、業務ｂの処理要求をサーバ３３、３４、３５に１：１：１で振り分ける分散アルゴリズムを生成する。その後、分散アルゴリズム決定手段１３は、生成した分散アルゴリズムの内容を示す制御ファイルを制御ファイル記憶部１６２に格納すると共に、送信手段１４を介して負荷分散装置２へ送信する（ステップＳ５８）。この制御ファイルは、負荷分散装置２内の受信手段２１で受信され、制御ファイル記憶部２２１に登録（上書き）される。以後、振り分け手段２３は、制御ファイル記憶部２２１に登録された新たな制御ファイルに従って、業務クライアント群４からの業務処理要求を各サーバ３１〜３５に振り分ける。このようにすることにより、サーバ３３においては、業務ｂのみが処理されるので、業務処理効率の向上を図ることができる。
【００７８】
分散アルゴリズム決定手段１３は、サーバ群３に割り当てられている全ての業務ａ，ｂが終了時刻になるまで上述した処理を繰り返し行い、全ての業務ａ，ｂが終了時刻となると（ステップＳ５９がＹＥＳ）、その処理を終了する。
【００７９】
〔第１の実施の形態の効果〕
本実施の形態によれば、複数の業務が割り当てられている特定サーバにかかる負荷を適切なものにし、業務処理を効率的に行えるようにすることができる。その理由は、複数台のサーバ３1〜３５の中から複数の業務ａ，ｂが割り当てられている特定サーバ３３を認識し、この認識した特定サーバ３３に割り当てられている各業務ａ，ｂに対する処理要求については、上記特定サーバ３３への振り分け率を、上記複数の業務ａ，ｂの内の１つだけが割り当てられているサーバ３１、３２、３４、３５への振り分け率よりも少なくする分散アルゴリズムを生成する分散アルゴリズム決定手段１３を備えているからである。
【００８０】
また、本実施の形態によれば、終了時刻に近い業務を縮退し、他の業務の処理効率を向上させることができる。その理由は、特定サーバ３３に割り当てられている複数の業務ａ，ｂの中に、その業務の終了時刻に近づいた業務ａが発生した場合、業務ａに対する処理要求の、特定サーバ３３への振り分け率を０とした分散アルゴリズムを生成する分散アルゴリズム決定手段１３を備えているからである。
【００８１】
〔第２の実施の形態〕
次に、本発明にかかる負荷分散システムの第２の実施の形態について説明する。本実施の形態は、冗長構成をとることにより、信頼性を向上させたことを特徴とする。
【００８２】
〔第２の実施の形態の構成の説明〕
図１１は本発明にかかる負荷分散システムの第２の実施の形態の構成例を示すブロック図であり、図１に示した第１の実施の形態との相違点は、監視制御装置１の代わりに監視制御装置１ａを備えている点である。
【００８３】
監視制御装置１ａは、割り当て手段１２の代わりに割り当て手段１２ａを備えている点、分散アルゴリズム決定手段１３の代わりに分散アルゴリズム決定手段１３ａを備えている点、割り当て情報記憶部１６３の代わりに割り当て情報記憶部１６３ａを備えている点、および障害検出手段１９が追加されている点が、図１に示した監視制御装置１と相違している。
【００８４】
障害検出手段１９は、サーバ３１〜３５に障害が発生したとき、障害の発生したサーバのサーバ名を分散アルゴリズム決定手段１３ａに通知する機能を有する。
【００８５】
割り当て手段１２ａは、業務管理情報記憶部１６１に登録されているリソース割り当て要求に従って、各業務に割り当てるサーバを決定する際、１台のサーバをスタンバイ系とし、残りのサーバをアクト系とする点が割り当て手段１２と相違している。
【００８６】
分散アルゴリズム決定手段１３ａは、障害検出手段１９から障害の発生したサーバのサーバ名が通知された場合にも、新たな分散アルゴリズムを生成する点が、分散アルゴリズム決定手段１３と相違している。
【００８７】
割り当て情報記憶部１６３ａは、サーバ名、業務に加えてアクト系／スタンバイ系を示す情報が登録される点が割り当て情報記憶部１６３と相違している。
【００８８】
このような機能を有する監視制御装置１ａは、コンピュータによって実現可能であり、コンピュータによって実現する場合は例えば、次のようにする。コンピュータを監視制御装置１ａとして機能させるためのプログラムを記録したディスク、半導体メモリ、その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に入力手段１１、割り当て手段１２ａ、分散アルゴリズム決定手段１３ａ、送信手段１４、収集手段１５、および障害検出手段１９を実現する。
【００８９】
〔第２の実施の形態の動作の説明〕
次に、本実施の形態の動作について説明する。システムの運用開始時、業務管理者は、第１の実施の形態と同様に、業務管理情報入力画面を利用して、業務管理情報を監視制御装置１ａに入力する。これにより、入力手段１１は、入力された業務管理情報を業務管理情報記憶部１６１に登録する（図１２のステップＳ１２１）。なお、業務管理情報として、第１の実施の形態で説明した情報と同じ情報が入力されたとする。また、業務管理者は、指定した台数の内の、１台がスタンバイ系となることを意識して各業務を割り当てるサーバの台数を決定する。
【００９０】
その後、割り当て手段１２ａが、各業務ａ，ｂを割り当てるサーバを選択すると共に、スタンバイ系にするサーバを決定する（ステップＳ１２２）。このステップＳ１２２で行う処理を、図１３のフローチャートに示す。図１３のフローチャートと図６のフローチャートとの相違は、ステップＳ１３１が追加されている点だけである。ステップＳ１３１においては、現在注目中の業務が業務ａであれば、ステップＳ６３において選択されたサーバ３１〜３３の中からスタンバイ系にするサーバを１台決定し、現在注目中の業務が業務ｂであれば、ステップＳ６３において選択されたサーバ３３〜３５の中からスタンバイ系にするサーバを１台決定する。スタンバイ系にするサーバの決定方法としては、種々の方法を採用することができるが、本実施の形態では、サーバ名中の番号が最も大きいサーバをスタンバイ系のサーバとするものとする。従って、業務ａについては、サーバ３１、３２をアクト系、サーバ３３をスタンバイ系にすることが決定され、業務ｂについては、サーバ３３、３４をアクト系、サーバ３５をスタンバイ系にすることが決定される。この結果、ステップＳ６５において、割り当て結果を割り当て情報記憶部１６３ａに登録することにより、その内容は、図１４に示すものとなる。
【００９１】
再び、図１２に戻り、割り当て手段１２ａは、ステップＳ１２２の処理が終了すると、サーバ３１〜３３に業務ａを処理する業務アプリケーションプログラムを展開すると共に、サーバ３３〜３５の業務ｂを処理する業務アプリケーションプログラムを展開し、更に、アクト系のサーバに展開した業務アプリケーションプログラムを起動する。即ち、サーバ３１、３２に展開した業務ａを処理する業務アプリケーションプログラムと、サーバ３３、３４に展開した業務ｂを処理する業務アプリケーションプログラムとを起動し、サーバ３３に展開した業務ａを処理する業務アプリケーションプログラムと、サーバ３５に展開した業務ｂを処理する業務アプリケーションプログラムは起動しない。
【００９２】
その後、分散アルゴリズム決定手段１３ａが、負荷の分散アルゴリズムを生成する（ステップＳ１２４）。このステップＳ１２４で行う処理を、図１５のフローチャートに示す。図７に示したフローチャートとの相違点は、ステップＳ７１の代わりに、ステップＳ１５１の処理を行う点である。ステップＳ１５１では、複数の業務ａ，ｂが割り当てられ、且つ各業務ａ，ｂがアクト系になっている特定サーバがあるか否かを調べる。そしてそのような特定サーバが存在する場合（ステップＳ１５１がＹＥＳ）は、ステップＳ７２の処理を行い、存在しない場合（ステップＳ１５１がＮＯ）は、ステップＳ７３の処理を行う。例えば、割り当て情報記憶部１６３ａの内容が、図１４に示すものであった場合には、ステップＳ１５１の判断結果はＮＯとなり、ステップＳ７３の処理が行われることになる。
【００９３】
次に、システム運用時の動作について説明する。
【００９４】
システム運用時、分散アルゴリズム決定手段１３ａは、分散アルゴリズム決定手段１３と同様に、図５のフローチャートに示す処理を行う。但し、ステップＳ５３において、図９のフローチャートの処理ではなく、図１６のフローチャートに示す処理を行う点が、第１の実施の形態と相違している。図１６のフローチャートと図９のフローチャートとの相違点は、ステップＳ９１の代わりにステップＳ１６１の処理を行う点だけである。ステップＳ１６１では、複数の業務ａ，ｂが割り当てられており、且つ各業務ａ，ｂがアクト系になっている特定サーバが存在するか否かを調べ、そのようなサーバが存在する場合（ステップＳ１６１がＹＥＳ）は、ステップＳ９２の処理を行い、存在しない場合（ステップＳ１６１がＮＯ）は、ステップＳ９３の処理を行う。
【００９５】
更に、分散アルゴリズム決定手段１３ａは、障害検出手段１９から、障害の発生したサーバのサーバ名が通知されたとき、図１７のフローチャートに示す処理を行う。
【００９６】
分散アルゴリズム決定手段１３ａは、障害検出手段１９から障害の発生したサーバのサーバ名が通知されると、割り当て情報記憶部１６３ａを参照し、障害が発生したサーバがアクト系となって処理している業務についてのスタンバイ系のサーバを認識し、そのサーバに対応付けて登録されている情報「スタンバイ系」を「アクト系」に変更し、更に、障害の発生したサーバに対応付けて登録されている情報「アクト系」を「障害中」に変更する（ステップＳ１７１）。今、例えば、障害検出手段１９からサーバ３１のサーバ名「Ｍ３１」が通知され、且つ割り当て情報記憶部１６３ａの内容が図１４に示すものであるとすると、分散アルゴリズム決定手段１３ａは、サーバ３３が、業務ａについてのスタンバイ系のサーバであることを認識し、サーバ名「Ｍ３３」に対応付けて登録されている情報「スタンバイ系」を「アクト系」に変更し、更に、サーバ名「Ｍ３１」に対応付けて登録されている情報「アクト系」を「障害中」に変更する。
【００９７】
その後、分散アルゴリズム決定手段１３ａは、サーバ３３に展開しておいた業務ａを処理する業務アプリケーションプログラムを起動する（ステップＳ１７２）。更に、分散アルゴリズム決定手段１３ａは、図１６のフローチャートに示す処理を行うことにより、新たな分散アルゴリズムを生成し、生成した分散アルゴリズムの内容を示す制御ファイルを、制御ファイル記憶部１６２に書き込むと共に、負荷分散装置２へ送信する（ステップＳ１７３、Ｓ１７４）。この制御ファイルは、負荷分散装置２内の受信手段２１で受信され、制御ファイル記憶部２２１に書き込まれる。これ以後、振り分け手段２３は、制御ファイル記憶部２２１に登録された新たな制御ファイルに従って、業務クライアント群４からの業務処理要求を正常なサーバ３２〜３５に振り分ける。
【００９８】
〔第２の実施の形態の効果〕
本実施の形態によれば、第１の実施の形態が有している効果に加え、信頼性を向上させることができるという効果を得ることができる。その理由は、割り当て手段１２が、管理者によって、業務とその業務を割り当てるサーバの台数が指定された場合、上記業務を割り当てるアクト系のサーバを決定してそのサーバに、上記業務に対応する業務アプリケーションプログラムを展開して起動すると共に、スタンバイ系にするサーバを決定してそのサーバに、上記業務に対応する業務アプリケーションプログラムを展開し、上記アクト系のサーバに障害が発生した場合、上記スタンバイ系のサーバに展開してある業務アプリケーションプログラムを起動し、分散アルゴリズム決定手段１３ａが、上記障害の発生したアクト系のサーバに振り分けられていた上記業務に対する処理要求が、上記スタンバイ系のサーバに振り分けられるようにする分散アルゴリズムを生成するからである。
【産業上の利用可能性】
【００９９】
本発明は、企業内などにおける負荷分散システムに適用することができる。
【図面の簡単な説明】
【０１００】
【図１】本発明にかかる負荷分散システムの第１の実施の形態の構成例を示すブロック図である。
【図２】業務管理情報記憶部１６１の内容例を示す図である。
【図３】割り当て情報記憶部１６３の内容例を示す図である。
【図４】監視制御装置１の処理例（運用開始前）を示すフローチャートである。
【図５】監視制御装置１の処理例（運用中）を示すフローチャートである。
【図６】ステップＳ４２の処理の詳細を示すフローチャートである。
【図７】ステップＳ４４の処理の詳細を示すフローチャートである。
【図８】制御ファイルの内容例を示す図である。
【図９】ステップＳ５３の処理の詳細を示すフローチャートである。
【図１０】第１の実施の形態の動作を説明するための図である。
【図１１】本発明のかかる負荷分散システムの第２の実施の形態の構成例を示すブロック図である。
【図１２】監視制御装置１ａの処理例（運用開始前）を示すフローチャートである。
【図１３】ステップＳ１２２の処理の詳細を示すフローチャートである。
【図１４】割り当て情報記憶部１６３ａの内容例を示す図である。
【図１５】ステップＳ１２４の処理の詳細を示すフローチャートである。
【図１６】ステップＳ５３で行う処理の詳細を示すフローチャートである。
【図１７】障害発生時の監視制御装置１ａの処理例を示すフローチャートである。
【図１８】従来の技術を説明するためのブロック図である。
【図１９】従来技術の問題点を説明するためのブロック図である。
【符号の説明】
【０１０１】
１、１ａ…監視制御装置
１１…入力手段
１２、１２ａ…割り当て手段
１３、１３ａ…分散アルゴリズム決定手段
１４…送信手段
１５…収集手段
１６…記憶装置
１７…入力部
１８…表示部
１９…障害検出手段
２…負荷分散装置
２１…受信手段
２２…記憶装置
２３…振り分け手段
３…サーバ群
３１〜３５…サーバ
３１１〜３５１…測定手段
４…業務クライアント群
４１〜４Ｍ…業務クライアント
【図１】
2008009800.tif 000003
【図２】
2008009800.tif 000004
【図３】
2008009800.tif 000005
【図４】
2008009800.tif 000006
【図５】
2008009800.tif 000007
【図６】
2008009800.tif 000008
【図７】
2008009800.tif 000009
【図８】
2008009800.tif 000010
【図９】
2008009800.tif 000011
【図１０】
2008009800.tif 000012
【図１１】
2008009800.tif 000013
【図１２】
2008009800.tif 000014
【図１３】
2008009800.tif 000015
【図１４】
2008009800.tif 000016
【図１５】
2008009800.tif 000017
【図１６】
2008009800.tif 000018
【図１７】
2008009800.tif 000019
【図１８】
2008009800.tif 000020
【図１９】
2008009800.tif 000021