JP6136621B2 - 負荷分散システムのプログラム及び負荷分散システム並びに負荷分散方法 - Google Patents
負荷分散システムのプログラム及び負荷分散システム並びに負荷分散方法 Download PDFInfo
- Publication number
- JP6136621B2 JP6136621B2 JP2013128148A JP2013128148A JP6136621B2 JP 6136621 B2 JP6136621 B2 JP 6136621B2 JP 2013128148 A JP2013128148 A JP 2013128148A JP 2013128148 A JP2013128148 A JP 2013128148A JP 6136621 B2 JP6136621 B2 JP 6136621B2
- Authority
- JP
- Japan
- Prior art keywords
- job
- usage rate
- batch
- server
- queue
- 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.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Description
1つの側面では、本発明は、複数のコンピュータの間の負荷分散処理が可能になる。
前述の一般的な説明及び以下の詳細な説明は、典型例及び説明のためのものであって、本発明を限定するためのものではない。
負荷分散システム1は、利用者が使用するコンピュータである業務端末2に接続されたオンラインサーバ3と、オンラインサーバ3に接続された1つのデータベースサーバ4と、データベースサーバ4に接続された複数のバッチサーバ5とを含んで構成されている。
ーブル11に、RDB(リレーショナルデータベース)を採用すると、レコード更新時に排他制御できるので好適である。しかしながら、ジョブスタックテーブル11は、レコード更新時に排他制御に構成されていれば、RDB以外を採用しても良い。
図3に一例を示すジョブスタックテーブル11は、依頼時刻情報31と、起動予定ジョブ名情報32と、処理状態情報33と、投入時刻情報34と、投入キュー名称情報35とが関連付けられたデータベース構造を有する。ここで、依頼時刻情報31は、業務端末2から出力された処理依頼を受け付けた時間を示す。起動予定ジョブ名情報32は、バッチサーバ5で処理する処理を特定する情報である。処理状態情報33は、いずれかのバッチサーバ5が処理依頼された起動予定ジョブの処理を開始している場合には、「起動済み」が格納される。一方、いずれのバッチサーバ5も未だ処理を開始していない場合には、「未処理」が格納される。投入時刻情報34は、バッチサーバ5にジョブが投入された時刻、即ちバッチサーバ5がジョブの処理を開始した時刻が格納される。投入キュー名称情報35は、キューを特定する情報が格納される。
各バッチサーバ5は、1つのデータベースサーバ4に通信可能に複数接続されており、業務端末2からの処理依頼を実際に処理するコンピュータである。図4に一例を示すように、バッチサーバ5は、CPU及びRAMなどのメモリによって形成される制御部41と、HDDなどの記憶装置43と、データの入力を制御する入力装置44と、データを表示又は出力する出力装置45と、通信制御装置46とを含んで構成されている。
期値定義ファイル52は、バッチサーバ5毎に作成される。このために、例えば、「1号機」のバッチサーバ5においては、「1号機」のバッチサーバ5についてのデータがリスト形成で作成される。優先度情報62及び多重度情報63は、キュー定義マスタ10における優先度情報23及び多重度情報24と同様のデータが格納される。有効期限間隔情報64は、キュー定義マスタ10に格納されるデータの有効期限を定める定数が格納される。
最初に、図1を参照し、サービス開始時の処理について説明する。
まず、各バッチサーバ5は、データベースサーバ4のキュー定義マスタ10にアクセスし、自分のバッチサーバ5(自バッチサーバ5)について登録されているデータを初期化する。具体的には、各バッチサーバ5は、スタック監視アプリケーション51が起動されたら、データ更新部59で初期値定義ファイル52のデータを読み込んで、その内容を使用し、データベースサーバ4のキュー定義マスタ10のデータを更新する。この処理は、全てのバッチサーバ5が実行する。
最初に、ステップS101で、各バッチサーバ5のスタック監視アプリケーション51のジョブ管理部58は、データベースサーバ4のジョブスタックテーブル11にアクセスし、未処理に分類されているジョブデータのジョブ名及びキュー名称を依頼時刻順に読み込む。
さらに、ステップS102では、各バッチサーバ5のスタック監視アプリケーション51のデータ更新部59が、所定のタイミングでデータベースサーバ4のキュー定義マスタ10にアクセスし、自分のバッチサーバ5について登録されているデータを更新する。所定のタイミングとは、前回の更新時刻から、有効期限間隔が経過するまでの間である。
5で実行可能なジョブの数を越えており、これ以上同じキューのジョブを実行することは負荷分散の観点から好ましくないからである。
[他バッチサーバ5の比較値]≦[自バッチサーバ5の判定値]
を調べる。いずれかの他バッチサーバ5との間で、上記の不等式が成り立つ場合は、自バッチサーバ5より空が多い他バッチサーバ5が存在するので、実施判定部57は、そのキューのジョブを現在利用率が少ない他バッチサーバ5に任せると判断し、ステップS102に戻る。
ーバ5が共に、現在利用率のN倍が1号機のバッチサーバ5より小さいので、1号機のバッチサーバ5は、今回のジョブを処理せず、2号機又は3号機のバッチサーバ5に任せる。この結果、現在利用率が小さい2号機及び3号機のバッチサーバ5に処理が回されるようになるので、負荷分散システム1全体としての負荷が分散される。
各バッチサーバ5は、ジョブの利用中数又は空き数に応じて自身が処理を行うべきであるか判定するように構成したので、CPUやメモリの占有率を調べる場合のようにその都度OS54のステータスを参照する必要がなくなるので、処理を簡略化できる。また、1つのバッチサーバ5が、他のバッチサーバ5の稼働状況を判断してジョブの実行の可否を判断するようにしたので、管理サーバを設けなくても複数のバッチサーバ5の間で負荷を分散させることが可能になる。
さらに、負荷分散システム1では、キューの空き状態を自バッチサーバ5の稼動状態の指標として使用するので、各バッチサーバ5の多重度を設定するだけで負荷分散が可能になる。従来では、処理を実行するバッチサーバ5の台数を変更する度に、管理サーバの情報の書き換えや、CPUの稼働率を取得するための設定、各種パラメータの調整が必要であった。これに対し、この実施の形態では、負荷分散システム1の調整やメンテナンスが容易になる。
(付記1)
複数のコンピュータがアクセス可能なデータ領域に格納されるジョブの情報を取得し、複数の前記コンピュータが実行中のジョブ数と前記複数のコンピュータ毎に予め定められた実施可能最大ジョブ数から算出される前記コンピュータ毎の前記ジョブの利用率を前記データ領域にアクセスして参照し、前記ジョブの利用率が前記他のコンピュータの前記ジョブの利用率より小さい場合に、前記ジョブを処理対象と決定する処理をコンピュータに実行させることを特徴とする負荷分散システムのプログラム。
(付記2) 前記ジョブの利用率に予め定められた係数を掛算して判定値を算出し、前記判定値が100%未満である場合に、前記他のコンピュータに前記ジョブを実行させずに、前記ジョブを処理対象と決定する処理をコンピュータに実行させることを特徴とする負
荷分散システムのプログラム。
(付記3) 前記データ領域に格納される前記ジョブの利用数を予め定められた更新時刻毎に更新させることを特徴とする付記1又は付記2に記載の負荷分散システムのプログラム。
(付記4) 前記データ領域のデータが予め定められた更新時刻毎に更新されていない他の前記コンピュータについては、前記ジョブを処理対象と決定する処理において前記ジョブの利用数を比較する対象から除外することを特徴とする付記1乃至付記3のいずれか一項に記載の負荷分散システムのプログラム。
(付記5) ジョブについて実行中のジョブ数と予め定められた実施可能最大ジョブ数から前記ジョブの利用率を算出する利用率計算部と、前記利用率を用いてジョブの実行の可否を判定する実施判定部と、前記実施判定部の判定結果に基づいてジョブの実行を管理するジョブ管理部と、前記利用率を他のコンピュータで参照可能にデータベースに登録するデータ更新部と、を含むことを特徴とする負荷分散システム。
(付記6) 前記実施判定部は、前記ジョブの利用率に予め定められた係数を掛算して判定値を算出し、前記判定値が100%未満である場合に、前記他のコンピュータに前記ジョブを実行させずに、前記ジョブを処理対象と決定し、前記判定値が100%以上の場合には、前記ジョブの利用率が前記他のコンピュータの前記ジョブの利用率より少ないときに、前記ジョブを処理対象と決定するように構成したことを特徴とする付記5に記載の負荷分散システム。
(付記7) 前記実施判定部は、前記データベースのデータが予め定められた更新時刻毎に更新されていない他の前記コンピュータについては、前記ジョブを処理対象と決定する処理において前記ジョブの利用数を比較する対象から除外するように構成したことを特徴とする付記5又は付記6に記載の負荷分散システム。
(付記8) データベースに登録されたジョブの情報を取得し、実行中のジョブ数と予め定められた実施可能最大ジョブ数から前記ジョブの利用率を算出し、前記ジョブの利用率が所定位置以下の場合に前記ジョブを実行し、前記ジョブの利用率が所定位置より大きく、かつ他のコンピュータの前記ジョブの利用率以上の場合に前記ジョブを実行せず、前記ジョブの利用率が所定位置より大きいが、他のコンピュータの前記ジョブの利用率より小さい場合に前記ジョブを実行することを特徴とする負荷分散方法。
(付記9) 前記データベースに登録されているデータが予め定められた更新時刻毎に更新されていない他の前記コンピュータについては、前記ジョブを処理対象と決定する処理において前記ジョブの利用数を比較する対象から除外することを特徴とする付記8に記載の負荷分散方法。
4 データベースサーバ
5 バッチサーバ(コンピュータ)
10 キュー定義マスタ(データ領域、データベース)
11 ジョブスタックテーブル(データ領域、データベース)
51 スタック監視アプリケーション
52 初期値定義ファイル
53 キュー制御アプリケーション
54 OS
55 業務アプリケーション
56 利用率計算部
57 実施判定部
58 ジョブ管理部
59 データ更新部
Claims (7)
- 複数のコンピュータがアクセス可能なデータ領域に格納されるジョブの情報を取得し、
複数の前記コンピュータが実行中のジョブ数と前記複数のコンピュータ毎に予め定められた実施可能最大ジョブ数から算出される前記コンピュータ毎の前記ジョブの利用率を前記データ領域にアクセスして参照し、
前記ジョブの利用率が他のコンピュータの前記ジョブの利用率より少ない場合に、前記ジョブを処理対象と決定する処理をコンピュータに実行させ、
前記ジョブの利用率に応じた判定値が基準値以上の場合には、前記ジョブの利用率が前記他のコンピュータの前記ジョブの利用率より少ない場合に、前記ジョブを処理対象と決定することを特徴とする負荷分散システムのプログラム。 - 前記基準値が100%であることを特徴とする請求項1に記載の負荷分散システムのプログラム。
- 前記ジョブの利用率に予め定められた係数を掛算して判定値を算出し、前記判定値が100%未満である場合に、前記他のコンピュータに前記ジョブを実行させずに、前記ジョブを処理対象と決定する処理をコンピュータに実行させることを特徴とする請求項1又は請求項2に記載の負荷分散システムのプログラム。
- ジョブについて実行中のジョブ数と予め定められた実施可能最大ジョブ数から前記ジョブの利用率を算出する利用率計算部と、
前記利用率を用いてジョブの実行の可否を判定する実施判定部と、
前記実施判定部の判定結果に基づいてジョブの実行を管理するジョブ管理部と、
前記利用率を他のコンピュータで参照可能にデータベースに登録するデータ更新部と、を含み、
前記実施判定部は、
前記ジョブの利用率に応じた判定値が基準値以上の場合には、前記ジョブの利用率が前記他のコンピュータの前記ジョブの利用率より少ない場合に、前記ジョブを処理対象と決定するように構成したことを特徴とする負荷分散システム。 - 前記基準値が100%であることを特徴とする請求項4に記載の負荷分散システム。
- データベースに登録されたジョブの情報を取得し、
実行中のジョブ数と予め定められた実施可能最大ジョブ数から前記ジョブの利用率を算出し、
前記ジョブの利用率に応じた判定値が基準値以上の場合には、前記ジョブの利用率が他のコンピュータの前記ジョブの利用率より少ない場合に、前記ジョブを処理対象と決定することを特徴とする負荷分散方法。 - 前記基準値が100%であることを特徴とする請求項6に記載の負荷分散方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013128148A JP6136621B2 (ja) | 2013-06-19 | 2013-06-19 | 負荷分散システムのプログラム及び負荷分散システム並びに負荷分散方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013128148A JP6136621B2 (ja) | 2013-06-19 | 2013-06-19 | 負荷分散システムのプログラム及び負荷分散システム並びに負荷分散方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015005008A JP2015005008A (ja) | 2015-01-08 |
JP6136621B2 true JP6136621B2 (ja) | 2017-05-31 |
Family
ID=52300893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013128148A Active JP6136621B2 (ja) | 2013-06-19 | 2013-06-19 | 負荷分散システムのプログラム及び負荷分散システム並びに負荷分散方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6136621B2 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH025144A (ja) * | 1988-06-24 | 1990-01-10 | Nec Corp | ジョブ実行システム自動代替方式 |
JP4978715B2 (ja) * | 2010-05-24 | 2012-07-18 | 富士通株式会社 | 伝票多重処理方法、プログラム及び装置 |
-
2013
- 2013-06-19 JP JP2013128148A patent/JP6136621B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2015005008A (ja) | 2015-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9870269B1 (en) | Job allocation in a clustered environment | |
US9477618B2 (en) | Information processing device, information processing system, storage medium storing program for controlling information processing device, and method for controlling information processing device | |
CN101366012A (zh) | 用于多处理器系统中的中断分配的方法和系统 | |
JP5585140B2 (ja) | 仮想計算機システムの管理プログラム,管理装置及び管理方法 | |
TW201030531A (en) | Resource management device, resource management program product, and resource management method | |
US10148531B1 (en) | Partitioned performance: adaptive predicted impact | |
US10142195B1 (en) | Partitioned performance tracking core resource consumption independently | |
US8539495B2 (en) | Recording medium storing therein a dynamic job scheduling program, job scheduling apparatus, and job scheduling method | |
US11068317B2 (en) | Information processing system and resource allocation method | |
JP5853109B2 (ja) | 計算機、計算機システムの制御装置及び記録媒体 | |
JP2017091330A (ja) | 計算機システム及び計算機システムのタスク実行方法 | |
JP6819378B2 (ja) | 並列処理装置、ステージアウト処理方法、およびジョブ管理プログラム | |
JP6229733B2 (ja) | 情報処理装置、方法、プログラム及び記録媒体 | |
JP6136621B2 (ja) | 負荷分散システムのプログラム及び負荷分散システム並びに負荷分散方法 | |
JP6046523B2 (ja) | インメモリ型分散データベース、データ分散方法及びプログラム | |
JP6823257B2 (ja) | ジョブ監視プログラム、ジョブ監視装置及びジョブ監視方法 | |
US11461268B2 (en) | Information processing system and control method | |
US10896076B2 (en) | Information processing system and control method for executing a process based on a message acquired from a queue | |
US8621470B2 (en) | Wakeup-attribute-based allocation of threads to processors | |
US10248458B2 (en) | Control method, non-transitory computer-readable storage medium, and control device | |
JP5674850B2 (ja) | データベース管理システム及び方法 | |
EP3340081B1 (en) | Data search method, data search device, and data search program | |
JP6372187B2 (ja) | 履歴情報管理方法、履歴情報管理装置、及び履歴情報管理プログラム | |
WO2016032518A1 (en) | Multiplexing network connections | |
CN117348820A (zh) | 一种分布式系统的数据处理方法、系统、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160310 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170313 |
|
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: 20170404 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170417 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6136621 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |