JP5939620B2 - Computer system, server device, load balancing method, and program - Google Patents

Computer system, server device, load balancing method, and program Download PDF

Info

Publication number
JP5939620B2
JP5939620B2 JP2012048909A JP2012048909A JP5939620B2 JP 5939620 B2 JP5939620 B2 JP 5939620B2 JP 2012048909 A JP2012048909 A JP 2012048909A JP 2012048909 A JP2012048909 A JP 2012048909A JP 5939620 B2 JP5939620 B2 JP 5939620B2
Authority
JP
Japan
Prior art keywords
resource
server
records
server device
job
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
Application number
JP2012048909A
Other languages
Japanese (ja)
Other versions
JP2013186520A (en
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.)
NEC Solutions Innovators Ltd
Original Assignee
NEC Solutions Innovators Ltd
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 NEC Solutions Innovators Ltd filed Critical NEC Solutions Innovators Ltd
Priority to JP2012048909A priority Critical patent/JP5939620B2/en
Publication of JP2013186520A publication Critical patent/JP2013186520A/en
Application granted granted Critical
Publication of JP5939620B2 publication Critical patent/JP5939620B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、複数のサーバ装置を備えたコンピュータシステム、それに用いられるサーバ装置、コンピュータシステムにおける負荷を分散させるための負荷分散方法、及びこれらを実現するためのプログラムに関する。   The present invention relates to a computer system including a plurality of server devices, a server device used therefor, a load distribution method for distributing loads in the computer system, and a program for realizing them.

従来から、複数のクライアントからの大量の処理要求に対応するため、複数台のアプリケーションサーバ(以下「APサーバ」と表記する。)とロードバランサとで構築されたシステムが利用されている。このうち、ロードバランサは、クライアントからの処理要求を一元的に管理する装置であり、Push型でリクエストをAPサーバに送信する。複数のクライアントから送信されてきた処理要求は、ロードバランサによって、各APに均等に振分けられる。この結果、システムの負荷分散が図られる。   Conventionally, a system constructed by a plurality of application servers (hereinafter referred to as “AP servers”) and a load balancer is used in order to cope with a large amount of processing requests from a plurality of clients. Among these, the load balancer is a device that centrally manages processing requests from clients, and transmits a request to the AP server in a Push type. Processing requests transmitted from a plurality of clients are equally distributed to each AP by the load balancer. As a result, system load distribution is achieved.

但し、ロードバランサは、各APサーバのリソース状況及び負荷状況を考慮する機能を備えていないため、各APサーバに処理可能量以上の処理要求が送信されてしまう場合がある。この場合、処理速度が低下したり、オーバーフローによって処理が不能となったりする可能性がある。   However, since the load balancer does not have a function that considers the resource status and load status of each AP server, there may be a case where a processing request exceeding the processable amount is transmitted to each AP server. In this case, there is a possibility that the processing speed decreases or the processing becomes impossible due to overflow.

このため、特許文献1は、ロードバランサを設置せず、APサーバ自体に処理要求を分散処理させる機能を備えさせたシステムを提案している。具体的には、特許文献1に開示されたシステムでは、クライアントからの処理要求を受信したAPサーバは、各APサーバの負荷状況に応じて、処理要求に対する処理を行なうAPサーバを決定し、そこに処理要求を送信する。また、各APサーバは、他のAPサーバからリクエストを受信すると、自己の負荷状況に応じて、自身で処理を行なうか、別のAPサーバに処理の代行を求めるかを決定することもできる。   For this reason, Patent Document 1 proposes a system in which a load balancer is not installed, and the AP server itself has a function of processing processing requests in a distributed manner. Specifically, in the system disclosed in Patent Document 1, an AP server that has received a processing request from a client determines an AP server that performs processing for the processing request according to the load status of each AP server, Send a processing request to. In addition, when each AP server receives a request from another AP server, each AP server can also determine whether to perform the processing by itself or to request another AP server to perform the processing in accordance with its own load status.

特許文献1に開示されたシステムによれば、各APサーバに処理可能量以上の処理要求が送信されてしまう事態が回避されるので、システムにおける処理速度の低下及びオーバーフローの発生は抑制されると考えられる。   According to the system disclosed in Patent Document 1, since a situation where a processing request exceeding the processable amount is transmitted to each AP server is avoided, a decrease in processing speed and occurrence of overflow in the system are suppressed. Conceivable.

国際公開2009/034994号International Publication No. 2009/034994

しかしながら、特許文献1に開示されたシステムにおいては、各APサーバは、自身又は他のAPサーバのリソースの使用状況を動的に監視しているわけではない。このため、特許文献1に開示されたシステムでは、一時的な処理速度の低下及びオーバーフローの発生は抑制できたとしても、システム全体における負荷分散を行なうことは困難である。   However, in the system disclosed in Patent Document 1, each AP server does not dynamically monitor the resource usage status of itself or another AP server. For this reason, in the system disclosed in Patent Document 1, it is difficult to perform load distribution in the entire system even if a temporary decrease in processing speed and occurrence of overflow can be suppressed.

本発明の目的の一例は、上記問題を解消し、複数のサーバ装置で構成されたシステムにおいて、各サーバ装置のリソースの使用状況を動的に鑑みた負荷分散を実施し得る、コンピュータシステム、サーバ装置、負荷分散方法、及びプログラムを提供することにある。   An example of an object of the present invention is to solve the above-described problem, and in a system composed of a plurality of server devices, a computer system and a server that can implement load distribution that dynamically considers the resource usage status of each server device An object is to provide a device, a load balancing method, and a program.

上記目的を達成するため、本発明におけるサーバ装置は、外部からの処理要求に応じてサービスを提供するシステムを構成し、且つ、前記サービスを提供するためのアプリケーションプログラムを実行する、サーバ装置であって、
当該サーバ装置のリソースの使用状況を特定するリソース情報を取得する、リソース情報取得部と、
前記アプリケーションプログラムの処理対象となるジョブを外部から取得し、取得したジョブを前記アプリケーションプログラムに渡して実行させる、処理制御部と、
前記処理制御部に対して、取得された前記リソース情報に基づいて、前記リソースの使用状況の目標となるように設定された第1の条件を満たすように、前記処理対象となるジョブの取得を行なわせ、そして、
取得された前記リソース情報が、前記リソースの使用状況についての上限として設定された第2の条件を越える場合に、前記アプリケーションプログラムに前記ジョブの実行をサスペンドさせる、リソース監視部と、
を備えている、ことを特徴とする。
In order to achieve the above object, a server apparatus according to the present invention is a server apparatus that constitutes a system that provides a service in response to an external processing request and that executes an application program for providing the service. And
A resource information acquisition unit that acquires resource information for identifying the resource usage status of the server device;
A processing control unit that obtains a job to be processed by the application program from the outside, passes the acquired job to the application program, and executes the job;
Based on the acquired resource information, the processing control unit acquires the job to be processed so as to satisfy a first condition set to be a target of the resource usage status. Let them do, and
A resource monitoring unit that causes the application program to suspend execution of the job when the acquired resource information exceeds a second condition set as an upper limit on the usage status of the resource;
It is characterized by having.

上記目的を達成するため、本発明におけるコンピュータシステムは、外部からの処理要求に応じてサービスを提供するシステムであって、
前記サービスを提供するためのアプリケーションプログラムを実行する、複数のサーバ装置を備え、
前記複数のサーバ装置それぞれは、
当該サーバ装置のリソースの使用状況を特定するリソース情報を取得する、リソース情報取得部と、
前記アプリケーションプログラムの処理対象となるジョブを外部から取得し、取得したジョブを前記アプリケーションプログラムに渡して実行させる、処理制御部と、
前記処理制御部に対して、取得された前記リソース情報に基づいて、前記リソースの使用状況の目標となるように設定された第1の条件を満たすように、前記処理対象となるジョブの取得を行なわせ、そして、
取得された前記リソース情報が、前記リソースの使用状況についての上限として設定された第2の条件を越える場合に、前記アプリケーションプログラムに前記ジョブの実行をサスペンドさせる、リソース監視部と、
を備えている、ことを特徴とする。
In order to achieve the above object, a computer system according to the present invention is a system that provides a service in response to an external processing request,
A plurality of server devices for executing an application program for providing the service;
Each of the plurality of server devices includes:
A resource information acquisition unit that acquires resource information for identifying the resource usage status of the server device;
A processing control unit that obtains a job to be processed by the application program from the outside, passes the acquired job to the application program, and executes the job;
Based on the acquired resource information, the processing control unit acquires the job to be processed so as to satisfy a first condition set to be a target of the resource usage status. Let them do, and
A resource monitoring unit that causes the application program to suspend execution of the job when the acquired resource information exceeds a second condition set as an upper limit on the usage status of the resource;
It is characterized by having.

また、上記目的を達成するため、本発明における負荷分散方法は、外部からの処理要求に応じてサービスを提供するシステムにおける負荷を軽減するための方法であって、
(a)前記システムを構成し、且つ、前記サービスを提供するためのアプリケーションプログラムを実行する、サーバ装置によって、当該サーバ装置のリソースの使用状況を特定するリソース情報を取得する、ステップと、
(b)前記サーバ装置によって、前記(a)のステップで取得された前記リソース情報に基づいて、前記リソースの使用状況の目標となるように設定された第1の条件を満たすように、前記アプリケーションプログラムの処理対象となるジョブを外部から取得する、ステップと、
(c)前記サーバ装置によって、前記(a)のステップで取得された前記リソース情報が、前記リソースの使用状況についての上限として設定された第2の条件を越える場合に、前記アプリケーションプログラムにおいて、前記ジョブの実行をサスペンドさせる、ステップと、
を有する、ことを特徴とする。
In order to achieve the above object, a load distribution method according to the present invention is a method for reducing a load in a system that provides a service in response to an external processing request,
(A) acquiring resource information for specifying a resource usage status of the server device by the server device that configures the system and executes an application program for providing the service; and
(B) Based on the resource information acquired in the step (a) by the server device, the application satisfies the first condition set to be a target of the usage status of the resource. Acquiring a job to be processed by the program from outside, step,
(C) In the application program, when the resource information acquired in the step (a) exceeds a second condition set as an upper limit on the usage status of the resource by the server device, Steps to suspend job execution, and
It is characterized by having.

更に、上記目的を達成するため、本発明におけるプログラムは、外部からの処理要求に応じてサービスを提供するシステムを構成し、且つ、前記サービスを提供するためのアプリケーションプログラムを実行する、コンピュータに、
(a)当該コンピュータのリソースの使用状況を特定するリソース情報を取得する、ステップと、
(b)前記(a)のステップで取得された前記リソース情報に基づいて、前記リソースの使用状況の目標となるように設定された第1の条件を満たすように、前記アプリケーションプログラムの処理対象となるジョブを外部から取得する、ステップと、
(c)前記(a)のステップで取得された前記リソース情報が、前記リソースの使用状況についての上限として設定された第2の条件を越える場合に、前記アプリケーションプログラムにおいて、前記ジョブの実行をサスペンドさせる、ステップと、
を実行させる、ことを特徴とする。
Furthermore, in order to achieve the above object, a program according to the present invention configures a system that provides a service in response to an external processing request, and executes an application program for providing the service.
(A) obtaining resource information for identifying resource usage status of the computer; and
(B) Based on the resource information acquired in the step (a), the processing target of the application program is set so as to satisfy a first condition set to be a target of the usage status of the resource. Get the job from outside, step,
(C) Suspend the execution of the job in the application program when the resource information acquired in step (a) exceeds a second condition set as an upper limit on the usage status of the resource. Let the steps and
Is executed.

以上のように、本発明によれば、複数のサーバ装置で構成されたシステムにおいて、各サーバ装置のリソースの使用状況を動的に鑑みた負荷分散を実施することができる。   As described above, according to the present invention, in a system constituted by a plurality of server devices, it is possible to implement load distribution that dynamically considers the resource usage status of each server device.

図1は、本発明の実施の形態におけるコンピュータシステムの全体構成を示すブロック図である。FIG. 1 is a block diagram showing an overall configuration of a computer system according to an embodiment of the present invention. 図2は、本発明の実施の形態におけるサーバ装置の構成を示すブロック図である。FIG. 2 is a block diagram showing the configuration of the server device according to the embodiment of the present invention. 図3は、本実施の形態におけるコンピュータシステム及びサーバ装置の動作を示すフロー図であるFIG. 3 is a flowchart showing operations of the computer system and the server device in the present embodiment. 図4は、本発明の実施の形態におけるサーバ装置を実現するコンピュータの一例を示すブロック図である。FIG. 4 is a block diagram illustrating an example of a computer that implements the server device according to the embodiment of the present invention.

(実施の形態)
以下、本発明の実施の形態における、コンピュータシステム、サーバ装置、負荷分散方法、及びプログラムについて、図1〜図4を参照しながら説明する。
(Embodiment)
Hereinafter, a computer system, a server device, a load distribution method, and a program according to an embodiment of the present invention will be described with reference to FIGS.

[システム構成]
最初に、本発明の実施の形態におけるコンピュータシステムの構成について図1を用いて説明する。図1は、本発明の実施の形態におけるコンピュータシステムの全体構成を示すブロック図である。
[System configuration]
First, the configuration of the computer system according to the embodiment of the present invention will be described with reference to FIG. FIG. 1 is a block diagram showing an overall configuration of a computer system according to an embodiment of the present invention.

図1に示すように、本実施の形態におけるコンピュータシステム100は、外部のユーザからの処理要求に応じてサービスを提供するためのシステムである。コンピュータシステム100は、サービスの提供のためのアプリケーションプログラムを実行するサーバ装置(以下「APサーバ」と表記する。)40を備えている。   As shown in FIG. 1, a computer system 100 according to the present embodiment is a system for providing a service in response to a processing request from an external user. The computer system 100 includes a server device (hereinafter referred to as “AP server”) 40 that executes an application program for providing a service.

このコンピュータシステム100においては、後述するように、APサーバ40の負荷の分散を図ることが目的とされている。なお、図1の例では、3台のサーバ装置40が例示されているが、本実施の形態においてサーバ装置40の台数は特に限定されるものではない。   The computer system 100 is intended to distribute the load on the AP server 40 as will be described later. In the example of FIG. 1, three server devices 40 are illustrated, but the number of server devices 40 is not particularly limited in the present embodiment.

また、図1に示すように、本実施の形態では、コンピュータシステム100は、APサーバ40に加えて、データベースサーバ(以下「DBサーバ」と表記する)30と、複数のWebサーバ20とを備えている。また、Webサーバ20は、互いに接続されず、DBサーバ20に接続されている。同様に、APサーバ40も、互いに接続されず、DBサーバ20に接続される。つまり、DBサーバ30は、Webサーバ20とAPサーバ40との間に介在するように配置されており、コンピュータシステム100は、三層構造によって構築されている。   As shown in FIG. 1, in the present embodiment, the computer system 100 includes a database server (hereinafter referred to as “DB server”) 30 and a plurality of Web servers 20 in addition to the AP server 40. ing. Further, the Web servers 20 are not connected to each other but are connected to the DB server 20. Similarly, the AP servers 40 are not connected to each other but are connected to the DB server 20. That is, the DB server 30 is arranged so as to be interposed between the Web server 20 and the AP server 40, and the computer system 100 is constructed with a three-layer structure.

また、Webサーバ20には、ユーザのクライアント端末10が接続されており、ユーザの処理要求は、クライアント端末10から、Webサーバ20へと送信される。そして、Webサーバ20は、送信されたユーザの処理要求を受け取り、これをDBサーバ30に送信する。   Further, the user's client terminal 10 is connected to the Web server 20, and the user's processing request is transmitted from the client terminal 10 to the Web server 20. The Web server 20 receives the transmitted user processing request and transmits it to the DB server 30.

図1に示すように、DBサーバ30は、記憶装置(図1において図示せず)の記憶領域に構築されたデータベース33を備え、データベース33上には、「ページ」と呼ばれるデータ領域32が作成されている。また、データ領域32内には、データが書き込まれ、書き込まれたデータは、「レコード」と呼ばれる単位で保持される。なお、以降においては、データ領域32は、「ページ32」と表記する。また、1レコード単位で保持されているデータを「レコード31」と表記する。   As shown in FIG. 1, the DB server 30 includes a database 33 constructed in a storage area of a storage device (not shown in FIG. 1), and a data area 32 called “page” is created on the database 33. Has been. Data is written in the data area 32, and the written data is held in units called “records”. Hereinafter, the data area 32 is expressed as “page 32”. Further, data held in units of records is denoted as “record 31”.

DBサーバ30のページ32へのレコード31の書込みは、上述のWebサーバ20によって行なわれている。Webサーバ20は、クライアント端末10から処理要求を受け付けると、DBサーバ30にアクセスし、データベース33上に、受け付けた処理要求をレコード31として(1処理要求=1レコード)書き込みを実行する。また、データベース33には、書き込みが必要な項目として、処理要求の状態を表すステータスが設けられている。よって、Webサーバは、受け付けた処理要求をレコード31に書き込む際は、ステータスに「未処理」と書き込む。   Writing of the record 31 to the page 32 of the DB server 30 is performed by the Web server 20 described above. When the Web server 20 receives a processing request from the client terminal 10, the Web server 20 accesses the DB server 30 and writes the received processing request as a record 31 (1 processing request = 1 record) on the database 33. Further, the database 33 is provided with a status indicating the state of the processing request as an item that needs to be written. Therefore, the Web server writes “unprocessed” in the status when writing the accepted processing request in the record 31.

APサーバ40は、DBサーバ30のページ32に保持されているレコード31のうち、ステータスが未処理となっているレコード31を、処理対象となるジョブとして取得する。このとき、APサーバ40は、レコード31を取得すると同時に、該当するステータスに「処理中」と書き込む。また、APサーバ40は、取得したレコード31の処理が完了すると、更に該当するステータスに「完了」と書き込む。   The AP server 40 acquires the record 31 whose status is not processed among the records 31 held in the page 32 of the DB server 30 as a job to be processed. At this time, the AP server 40 acquires the record 31 and simultaneously writes “processing” in the corresponding status. Further, when the processing of the acquired record 31 is completed, the AP server 40 further writes “completed” in the corresponding status.

[装置構成]
続いて、本実施の形態におけるAPサーバ(サーバ装置)40の構成について図2を用いて説明する。図2は、本発明の実施の形態におけるサーバ装置の構成を示すブロック図である。
[Device configuration]
Next, the configuration of the AP server (server device) 40 in the present embodiment will be described with reference to FIG. FIG. 2 is a block diagram showing the configuration of the server device according to the embodiment of the present invention.

図2に示す各APサーバ40は、上述したように、コンピュータシステム100の一部を構成し、サービスを提供するためのアプリケーションプログラム(以下「業務処理実行アプリケーション」と表記する。)42を実行する。また、図2に示すように、APサーバ40は、リソース情報取得部48と、処理制御部43と、リソース監視部47とを備えている。また、41は、これらを一括りとする監視処理部を示している。   As described above, each AP server 40 shown in FIG. 2 constitutes a part of the computer system 100 and executes an application program (hereinafter referred to as “business process execution application”) 42 for providing a service. . As illustrated in FIG. 2, the AP server 40 includes a resource information acquisition unit 48, a processing control unit 43, and a resource monitoring unit 47. Reference numeral 41 denotes a monitoring processing unit that collects these.

リソース情報取得部48は、リソースの使用状況を特定するリソース情報を取得する。また、処理制御部43は、業務処理実行アプリケーション42の処理対象となるジョブを外部から取得し、取得したジョブを業務処理実行アプリケーション42に渡して実行させる。   The resource information acquisition unit 48 acquires resource information that identifies the resource usage status. In addition, the process control unit 43 acquires a job to be processed by the business process execution application 42 from the outside, and passes the acquired job to the business process execution application 42 to be executed.

リソース監視部47は、処理制御部43に対して、取得されたリソース情報に基づいて、リソース使用状況の目標となるように設定された第1の条件を満たすように、処理対象となるジョブの取得を行なわせる。   Based on the acquired resource information, the resource monitoring unit 47 sets the job to be processed so as to satisfy the first condition set to be the target of the resource usage status. Let the acquisition take place.

また、リソース監視部47は、取得されたリソース情報が、リソースの使用状況についての上限として設定された第2の条件を越える場合には、業務処理実行アプリケーションにジョブの実行をサスペンドさせる。   In addition, when the acquired resource information exceeds the second condition set as the upper limit on the resource usage status, the resource monitoring unit 47 causes the business process execution application to suspend job execution.

このように、本実施の形態では、各APサーバ40は、それぞれ独立に、リソースの使用状況を監視している。また、各APサーバは、第1の条件に基づくリソースの使用状況を適切なものにするための監視と、第2の条件に基づく突発的な高負荷状態の監視とを行なっており、リソースの使用状況は動的に監視されている。   As described above, in the present embodiment, each AP server 40 independently monitors the resource usage status. In addition, each AP server performs monitoring for making the resource usage state appropriate based on the first condition, and monitoring for a sudden high load state based on the second condition. Usage is dynamically monitored.

ここで、本実施の形態におけるAPサーバ(サーバ装置)40の構成について更に具体的に説明する。まず、本実施の形態においては、各APサーバ40は、リソース情報取得部48、処理制御部43、及びリソース監視部47に加えて、能力計算部44と、ジョブ数計算部45と、入力受付部46とを備えている。   Here, the configuration of the AP server (server device) 40 in the present embodiment will be described more specifically. First, in the present embodiment, each AP server 40 includes, in addition to the resource information acquisition unit 48, the processing control unit 43, and the resource monitoring unit 47, a capability calculation unit 44, a job number calculation unit 45, and an input reception. Part 46.

リソース情報取得部48は、本実施の形態では、システムの管理者が設定したポーリング間隔で、それが備えられたAPサーバ40のリソース情報を取得する。また、監視対象とすべきリソースの使用状況は、APサーバ40のシステム環境に応じて異なる。このため、リソース情報によって特定されるリソースの使用状況は、システムの管理者が、APサーバ40のシステム環境に応じて適宜選択することができる。   In this embodiment, the resource information acquisition unit 48 acquires the resource information of the AP server 40 provided with the polling interval set by the system administrator. Further, the usage status of resources to be monitored differs depending on the system environment of the AP server 40. For this reason, the usage status of the resource specified by the resource information can be appropriately selected by the system administrator according to the system environment of the AP server 40.

具体的には、管理者は、以下の(1)〜(7)の中から、システムの環境に応じて、リソース情報によって特定されるリソースの使用状況を選択することができる。
(1)CPU使用率
(2)メモリ使用率
(3)スワップメモリ使用率
(4)オープンファイル数
(5)オープンスレッド数
(6)ハードディスクの使用量
(7)要求元が同一であり、且つ同時に実行されているプロセスの数
Specifically, the administrator can select the usage status of the resource specified by the resource information from the following (1) to (7) according to the system environment.
(1) CPU usage rate (2) Memory usage rate (3) Swap memory usage rate (4) Number of open files (5) Number of open threads (6) Hard disk usage (7) Requesters are the same and at the same time The number of processes that are running

また、本実施の形態では、リソース情報取得部48は、例えば、OS標準コマンドの実行、カーネルパラメータの参照などによって、リソース情報を取得することができる。但し、リソース情報取得部48がリソース情報を取得する際の具体的な手法は、APサーバ40が搭載するオペレーティングシステム(OS)によって異なっており、特に限定されるものではない。   In the present embodiment, the resource information acquisition unit 48 can acquire resource information by executing an OS standard command, referring to a kernel parameter, or the like, for example. However, the specific method when the resource information acquisition unit 48 acquires the resource information differs depending on the operating system (OS) installed in the AP server 40 and is not particularly limited.

入力受付部46は、外部から入力される情報のインターフェースである。システムの管理者が、システムの運用を開始する際に、入力機器又は端末装置を用いて、第1の条件及び第2の条件を入力すると、入力受付部46は、これらを受け付けてリソース監視部47に入力する。第1の条件及び第2の条件は、システムの管理者によって、適宜設定される。   The input receiving unit 46 is an interface for information input from the outside. When the system administrator inputs the first condition and the second condition using the input device or the terminal device when starting the operation of the system, the input receiving unit 46 receives these and the resource monitoring unit 47. The first condition and the second condition are appropriately set by the system administrator.

本実施の形態において、第1の条件としては、リソースの使用状況の適正値(適正使用量、適正使用率)例えば、適正CPU使用率、適正メモリ使用率、適正オープンファイル数等が挙げられる。第1の条件は、APサーバ40が使用を求めるリソースの適正な使用量(又は使用率)である。また、第2の条件としては、リソースの使用状況の上限値、例えば、CPU使用率の上限値、メモリ使用率の上限値、オープンファイル数の上限値等が挙げられる。第2の条件は、APサーバ40が使用を許可するリソースの使用量(又は使用率)の上限値である。   In the present embodiment, the first condition includes an appropriate value (appropriate usage amount, appropriate usage rate) of the resource usage status, for example, an appropriate CPU usage rate, an appropriate memory usage rate, an appropriate number of open files, and the like. The first condition is an appropriate usage amount (or usage rate) of the resource that the AP server 40 seeks to use. The second condition includes an upper limit value of the resource usage status, for example, an upper limit value of the CPU usage rate, an upper limit value of the memory usage rate, an upper limit value of the number of open files, and the like. The second condition is an upper limit value of the usage amount (or usage rate) of the resource that the AP server 40 permits to use.

また、管理者は、更に、リソース情報取得部48がリソース情報の取得を行う際のポーリング間隔を設定することもできる。この場合、管理者は、入力機器又は端末装置を用いて、設定したポーリング間隔を、入力受付部46に入力する。   The administrator can also set a polling interval when the resource information acquisition unit 48 acquires resource information. In this case, the administrator inputs the set polling interval to the input receiving unit 46 using an input device or a terminal device.

また、本実施の形態では、リソース監視部47は、リソース情報で特定されるリソースの使用状況が、第1の条件である適正値に最も近くなるように、処理制御部43によるジョブの取得を制御する。これにより、コンピュータシステム100における負荷分散が行なわれる。   Further, in the present embodiment, the resource monitoring unit 47 acquires the job by the processing control unit 43 so that the usage status of the resource specified by the resource information is closest to the appropriate value that is the first condition. Control. Thereby, load distribution in the computer system 100 is performed.

具体的には、リソース監視部47は、リソース情報取得部48が取得したリソース情報で特定されるリソースの使用状況と、第1の条件である適正値とを比較し、リソースの使用状況が適切かどうかを判定する。   Specifically, the resource monitoring unit 47 compares the resource usage specified by the resource information acquired by the resource information acquisition unit 48 with the appropriate value that is the first condition, and the resource usage is appropriate. Determine whether or not.

そして、判定の結果、リソースの使用状況が適正値を上回っている場合は、リソース監視部47は、リソースの使用状況が適正値に近づくように、処理制御部43に対して、処理対象となるジョブの取得をサスペンドさせる。   If the resource usage status exceeds the appropriate value as a result of the determination, the resource monitoring unit 47 becomes a processing target for the processing control unit 43 so that the resource usage status approaches the appropriate value. Suspend job acquisition.

具体的には、処理制御部43は、SQL文の発行によってDBサーバ30とデータのやり取りを行なうので、リソース監視部47は、処理制御部43に対して、未処理レコード取得のためのSELECT文の発行をサスペンドするようにメッセージを送信する。そして、リソースの使用状況が適正値を下回った時点で、リソース監視部47は、処理制御部43に対して、サスペンドしていたSELECT文の発行を再開するようメッセージを送信する。   Specifically, since the processing control unit 43 exchanges data with the DB server 30 by issuing an SQL statement, the resource monitoring unit 47 instructs the processing control unit 43 to select an unprocessed record. Send a message to suspend issuing. When the resource usage state falls below the appropriate value, the resource monitoring unit 47 transmits a message to the processing control unit 43 so as to resume issuing the SELECT statement that has been suspended.

また、本実施の形態では、リソース監視部47は、リソース情報で特定されるリソースの使用状況が、第2の条件である上限値を超えた場合に、業務処理実行アプリケーション42に対して実行中のジョブをサスペンドさせる。具体的には、リソース監視部47は、処理制御部43から、業務処理実行アプリケーション42に対して、実行中のジョブをサスペンドする旨のメッセージを送信する。これにより、APサーバ40がリソースの枯渇を原因としてダウンする事が防止される。   In the present embodiment, the resource monitoring unit 47 is executing the business process execution application 42 when the usage status of the resource specified by the resource information exceeds the upper limit that is the second condition. Suspend the job. Specifically, the resource monitoring unit 47 transmits a message from the processing control unit 43 to the job processing execution application 42 to suspend the job being executed. This prevents the AP server 40 from going down due to resource exhaustion.

なお、この時の実行中のジョブのサスペンドは、後から実行されたジョブから順に行なわれる。そして、リソース監視部47は、リソースの使用状況が上限値を下回った時点で、サスペンドされたジョブが、先にサスペンドされたジョブから順に再開されるように、処理制御部43を通じて、業務処理実行アプリケーション42に対してメッセージを送信する。   At this time, the job being executed is suspended in order from the job executed later. Then, the resource monitoring unit 47 executes the business process through the processing control unit 43 so that the suspended jobs are resumed in order from the previously suspended job when the resource usage state falls below the upper limit. A message is transmitted to the application 42.

また、本実施の形態では、処理制御部43は、上述したように、DBサーバ30に対してSQL文を発行することによって、クライアント端末10からの処理要求のレコード31をジョブとして取得する。そして、処理制御部43は、レコード31を取得すると、リソース監視部47からSQL文の発行をサスペンドするメッセージを受け取らない限り、取得したレコード31を、APサーバ40の業務処理実行アプリケーション42に引き渡し、実行させる。   In the present embodiment, as described above, the processing control unit 43 issues a SQL statement to the DB server 30 to acquire the processing request record 31 from the client terminal 10 as a job. Then, when the process control unit 43 acquires the record 31, the process control unit 43 delivers the acquired record 31 to the business process execution application 42 of the AP server 40, unless a message for suspending the issuance of the SQL statement is received from the resource monitoring unit 47. Let it run.

また、処理制御部43は、ステータスが「未処理」であり、且つ、他のAPサーバ40のトランザクションによってロックがかけられていないレコード31を取得する。なお、この時、何らかの理由で、DBサーバ30のDBMS(Data Base Management System)のロックが使用できない場合がある。この場合は、処理制御部43は、レコード31を取得する際、明示的にロックを宣言することができ、これにより、複数のAPサーバ40によって重複して同じレコード31が取得される事態は回避される。   Further, the process control unit 43 acquires a record 31 whose status is “unprocessed” and which is not locked by a transaction of another AP server 40. At this time, the DBMS (Data Base Management System) lock of the DB server 30 may not be used for some reason. In this case, the process control unit 43 can explicitly declare a lock when acquiring the record 31, thereby avoiding a situation in which the same record 31 is acquired redundantly by a plurality of AP servers 40. Is done.

なお、上述したように、処理制御部43は、リソース監視部47からSQL文(SELECT文)の発行をサスペンドするメッセージを受け取った場合は、SQL文の発行を再開するメッセージを受け取るまで、SQL文の発行をサスペンドする。   As described above, when the processing control unit 43 receives a message for suspending the issuance of the SQL statement (SELECT statement) from the resource monitoring unit 47, the processing is performed until the message for resuming the issuance of the SQL statement is received. Suspend issuing.

また、上述したように、処理制御部43は、リソース監視部47から、実行中のジョブをサスペンドする旨のメッセージを送信するように指示されると、メッセージを送信する。これにより、処理制御部43が、リソース監視部47からの指示によって、サスペンドしたジョブを再開する旨のメッセージを送信するまで、業務処理実行アプリケーション42は、実行開始時間が最も遅いジョブから順にジョブの実行をサスペンドする。   Further, as described above, the processing control unit 43 transmits a message when instructed by the resource monitoring unit 47 to transmit a message to suspend the job being executed. As a result, until the processing control unit 43 transmits a message indicating that the suspended job is to be resumed in response to an instruction from the resource monitoring unit 47, the business process execution application 42 executes the job in order from the job with the latest execution start time. Suspend execution.

更に、本実施の形態では、レコード31の取得時において、処理制御部43は、DBサーバ30から、レコード31の総数と、ステータスが未処理になっているレコード31の総数とを取得し、これらを、ジョブ数計算部45と、能力計算部44とに送信することができる。   Furthermore, in the present embodiment, when acquiring the record 31, the process control unit 43 acquires the total number of records 31 and the total number of records 31 whose status is unprocessed from the DB server 30, and these Can be transmitted to the job number calculation unit 45 and the capability calculation unit 44.

能力計算部44は、コンピュータシステム100を構成する他のAPサーバ40の能力(例えば、同時処理ジョブ件数等)Aを計算することができる。具体的には、能力計算部44は、処理制御部43から受け取ったレコード31の総数R1とステータスが未処理になっているレコード31の総数R3とを用いて、以下の式(1)に基づいて、他のAPサーバの処理能力Aを算出する。   The capability calculation unit 44 can calculate the capability (for example, the number of simultaneous processing jobs) A of other AP servers 40 configuring the computer system 100. Specifically, the capability calculation unit 44 uses the total number R1 of records 31 received from the processing control unit 43 and the total number R3 of records 31 whose status is unprocessed, based on the following formula (1). Thus, the processing capability A of the other AP server is calculated.

A=(R1−R2)−R3・・・・・(1)
R1:総レコード数
R2:自サーバで処理したレコードの数
R3:ステータスが未処理のレコードの数
A = (R1-R2) -R3 (1)
R1: Total number of records R2: Number of records processed by the local server R3: Number of records whose status is not processed

ジョブ数計算部45は、それを備えているAPサーバ40の能力(例えば、同時実行可能ジョブ数)Bと、能力計算部44によって計算された他のAPサーバ40の能力Aと、を比較し、比較結果に応じて、制御処理部43が取得するジョブの数を計算することができる。   The job number calculation unit 45 compares the capability (for example, the number of jobs that can be executed simultaneously) B of the AP server 40 provided with the job number calculation unit 45 with the capability A of the other AP server 40 calculated by the capability calculation unit 44. Depending on the comparison result, the number of jobs acquired by the control processing unit 43 can be calculated.

具体的には、まず、ジョブ数計算部45は、他のAPサーバ40の処理能力も鑑みて、自APサーバ40によって取得及び処理するレコードの数(ジョブ数)を決定すべく、α(=A−B)を算出する。そして、ジョブ数計算部45は、算出したαの値に基づいて、以下の(a)〜(b)に示すように、制御処理部43によって取得すべきジョブの数を決定する。   Specifically, first, the job number calculation unit 45 also considers the processing capability of other AP servers 40 to determine the number of records (number of jobs) to be acquired and processed by the own AP server 40. A-B) is calculated. Then, the job number calculation unit 45 determines the number of jobs to be acquired by the control processing unit 43 as shown in the following (a) to (b) based on the calculated value of α.

(a)α>0の場合(A>B)
この場合は、他のAPサーバの処理能力が、自APサーバの処理能力を上回るので、まず、ジョブ数計算部45は、ステータスが「未処理」のレコードの数R3から、他のAPサーバの処理能力Aを減算する。そして、ジョブ数計算部45は、減算によって得られたレコード数と、自APサーバの処理能力(同時実行可能ジョブ数)Bとを比較し、Bが大きければ「減算によって得られたレコード数」を、Bが小さければ「B」を、制御処理部43が次回取得すべきジョブの数として設定する。
(b)α<0の場合(A<B)
この場合は、他のAPサーバの処理能力が、自APサーバの処理能力を下回るので、ジョブ数計算部45は、自サーバの処理能力(同時実行可能ジョブ数)Bを制御処理部43が次回取得すべきジョブの数として設定する。但し、このとき、ジョブ数計算部45は、次回取得すべきジョブの数が、ステータスが「未処理」のレコードの数R3を越えないようにする。
(c)α=0の場合(A=B)
この場合は、他のAPサーバの処理能力と、自APサーバの処理能力とが同じとなるので、ジョブ数計算部45は、自APサーバの処理能力(同時実行可能ジョブ数)Bの半数を制御処理部43が次回取得すべきジョブの数として設定する。但し、このとき、ジョブ数計算部45は、次回取得すべきジョブの数が、ステータスが「未処理」のレコードの数R3を越えないようにする。
(A) When α> 0 (A> B)
In this case, since the processing capability of the other AP server exceeds the processing capability of the own AP server, the job number calculation unit 45 first determines the number of records of the status of “unprocessed” R3 from the other AP server. Subtract processing capacity A. Then, the job number calculation unit 45 compares the number of records obtained by subtraction with the processing capacity (number of jobs that can be executed simultaneously) B of the own AP server, and if B is large, “the number of records obtained by subtraction”. If B is small, “B” is set as the number of jobs to be acquired next time by the control processing unit 43.
(B) When α <0 (A <B)
In this case, since the processing capability of the other AP server is lower than the processing capability of the own AP server, the job number calculation unit 45 determines the processing capability (the number of jobs that can be executed simultaneously) B of the own server next time. Set as the number of jobs to be acquired. However, at this time, the job number calculation unit 45 prevents the number of jobs to be acquired next time from exceeding the number R3 of records whose status is “unprocessed”.
(C) When α = 0 (A = B)
In this case, since the processing capability of the other AP server and the processing capability of the own AP server are the same, the job number calculation unit 45 calculates the half of the processing capability (number of jobs that can be executed simultaneously) B of the own AP server. This is set as the number of jobs to be acquired next time by the control processing unit 43. However, at this time, the job number calculation unit 45 prevents the number of jobs to be acquired next time from exceeding the number R3 of records whose status is “unprocessed”.

[システム動作及び装置動作]
次に、本実施の形態におけるコンピュータシステム100及びAPサーバ40の動作について図3を用いて説明する。図3は、本実施の形態におけるコンピュータシステム及びサーバ装置の動作を示すフロー図である。以下の説明においては、適宜図1及び図2を参酌する。また、本実施の形態では、コンピュータシステム100を動作させることによって、負荷分散方法が実施される。よって、本実施の形態における負荷分散方法の説明は、以下のコンピュータシステム100の動作説明に代える。
[System operation and device operation]
Next, operations of the computer system 100 and the AP server 40 in the present embodiment will be described with reference to FIG. FIG. 3 is a flowchart showing operations of the computer system and the server device in the present embodiment. In the following description, FIGS. 1 and 2 are referred to as appropriate. In the present embodiment, the load distribution method is implemented by operating the computer system 100. Therefore, the description of the load distribution method in the present embodiment is replaced with the following description of the operation of the computer system 100.

最初に、図3に示すように、Webサーバ20は、クライアント端末10から処理要求を受け付けると、受け付けた処理要求を、DBサーバ30にレコード31として書き込む(ステップA1)。この時、Webサーバ20は、1つの処理要求を1つのレコード31として書き込む。   First, as shown in FIG. 3, when the Web server 20 receives a processing request from the client terminal 10, the Web server 20 writes the received processing request as a record 31 in the DB server 30 (step A1). At this time, the Web server 20 writes one processing request as one record 31.

次に、各APサーバ4において、処理制御部43は、DBサーバ30にアクセスし、ステータスが「未処理」であり、且つ、他のAPサーバ40のトランザクションによってロックがかけられていないレコード31を取得する(ステップA2)。   Next, in each AP server 4, the process control unit 43 accesses the DB server 30 and records a record 31 whose status is “unprocessed” and which is not locked by a transaction of another AP server 40. Obtain (step A2).

なお、ステップA2によるレコード31の取得に際して、通常あるサーバが取得したレコードは、DBMSによってロックが掛けられ、複数のサーバで同一のレコードが取得される事態は発生しない。但し、何らかの理由でDBMSのロックが使用できない場合は、処理制御部43は、レコード31を取得する際に、明示的にロックを宣言する。   Note that when the record 31 is acquired in step A2, a record that is normally acquired by a server is locked by the DBMS, and a situation in which the same record is acquired by a plurality of servers does not occur. However, if the DBMS lock cannot be used for some reason, the processing control unit 43 explicitly declares the lock when acquiring the record 31.

次に、APサーバ40においては、ステップA2で取得されたジョブの実行に先立ち、リソース監視部47は、リソース情報取得部48によって取得されたリソース情報に基づいて、それが備えられたAPサーバ40のリソースの使用状況を監視する。そして、リソース監視部47は、APサーバ40のリソースの使用状況(システム負荷)が予め設定された基準値以下であるかどうかを判定する(ステップA3)。なお、「基準値」は、例えば、第1の条件である適正値と第2の条件である上限値との間の値に設定される。   Next, in the AP server 40, prior to the execution of the job acquired in step A2, the resource monitoring unit 47 is based on the resource information acquired by the resource information acquiring unit 48, and the AP server 40 provided with the resource monitoring unit 47. Monitor the usage of resources. Then, the resource monitoring unit 47 determines whether or not the resource usage status (system load) of the AP server 40 is equal to or less than a preset reference value (step A3). The “reference value” is set to, for example, a value between an appropriate value that is the first condition and an upper limit value that is the second condition.

ステップA3の判定の結果、APサーバ40のリソースの使用状況が基準値を超えている場合は、リソース管理部47は、リソースの使用状況が基準値を下回るまで待機状態となる。一方、ステップA3の判定の結果、APサーバ40のリソースの使用状況が基準値を超えていない場合は、リソース監視部47は、処理制御部43に対して、処理を実行するようメッセージを送信する。   As a result of the determination in step A3, if the resource usage status of the AP server 40 exceeds the reference value, the resource management unit 47 enters a standby state until the resource usage status falls below the reference value. On the other hand, as a result of the determination in step A3, if the resource usage status of the AP server 40 does not exceed the reference value, the resource monitoring unit 47 sends a message to the processing control unit 43 to execute the processing. .

リソース監視部47から処理実行のメッセージを受け取ると、処理制御部43は、APサーバ40にインストールされている業務処理実行アプリケーション42に対して、処理を実行するようメッセージを送信する(ステップA4)。この後、業務処理実行アプリケーション42は、取得されたレコードの処理を実行する。   Upon receiving the process execution message from the resource monitoring unit 47, the process control unit 43 transmits a message to execute the process to the business process execution application 42 installed in the AP server 40 (step A4). Thereafter, the business process execution application 42 executes processing of the acquired record.

次に、業務処理実行アプリケーション42によってレコードの処理が開始されると、リソース監視部47は、ジョブ(レコード)の実行中における、APサーバ40のリソースの使用状況を監視する。そして、リソース監視部47は、リソースの使用状況が設定された適正値(第1の条件)以下かどうかを判定する(ステップA5)。   Next, when record processing is started by the business process execution application 42, the resource monitoring unit 47 monitors the resource usage status of the AP server 40 during execution of the job (record). Then, the resource monitoring unit 47 determines whether or not the resource usage status is less than or equal to the set appropriate value (first condition) (step A5).

ステップA5の判定の結果、適正値以下でない場合(越えている場合)は、リソース監視部47は、処理制御部43に対して次回のSQL文の発行をサスペンドするよう、メッセージを送信する(ステップA6)。   If the result of determination in step A5 is not less than or equal to the appropriate value (exceeds), the resource monitoring unit 47 sends a message to the processing control unit 43 so as to suspend the next issue of the SQL statement (step A6).

次に、ステップA5が実行されると、処理制御部43は、APサーバ40のリソース使用状況が適正値を超えた時点における実行中のジョブの数を特定する(ステップA7)。そして、処理制御部43は、特定したジョブ数を同時実行可能ジョブ数Bとし、これを能力計算部44及びジョブ数計算部45に送信する。   Next, when step A5 is executed, the process control unit 43 specifies the number of jobs being executed when the resource usage status of the AP server 40 exceeds the appropriate value (step A7). Then, the process control unit 43 sets the specified number of jobs as the simultaneously executable job number B, and transmits this to the capability calculation unit 44 and the job number calculation unit 45.

次に、能力計算部44は、処理制御部43を通じてDBサーバ30にアクセスし、総レコード数R1を取得する。同時に、能力計算部44は、ステータスが「未処理」であり、且つ他のサーバのトランザクションによってロックがかけられていないレコード31を検索し、そのレコード数R3も取得する。   Next, the capability calculation unit 44 accesses the DB server 30 through the processing control unit 43 and acquires the total number of records R1. At the same time, the capability calculation unit 44 searches for a record 31 whose status is “unprocessed” and is not locked by a transaction of another server, and also acquires the record number R3.

次に、能力計算部44は、取得した総レコード数R1と、ステータスが「未処理」のレコード数R3とを、上述した式(1)に適用して、他のAPサーバの処理能力Aを算出する(ステップA8)。   Next, the capacity calculation unit 44 applies the acquired total number of records R1 and the number of records R3 whose status is “unprocessed” to the above-described formula (1) to obtain the processing capacity A of other AP servers. Calculate (step A8).

次に、ジョブ数計算部45は、ステップA7で計算した同時実行可能ジョブ数Bと、ステップA8で計算された他のAPサーバの処理能力Aとを用いて、α(=A−B)を算出する。そして、ジョブ数計算部45は、算出したαの値に基づいて、上述した(a)〜(b)の条件を用いて、制御処理部43によって次回に取得すべきジョブの数を決定する(ステップA9)。   Next, the job number calculation unit 45 calculates α (= A−B) by using the simultaneously executable job number B calculated in step A7 and the processing capability A of the other AP server calculated in step A8. calculate. Then, based on the calculated value of α, the job number calculation unit 45 determines the number of jobs to be acquired next time by the control processing unit 43 using the above-described conditions (a) to (b) ( Step A9).

ステップA9が実行されると、ジョブ数計算部45は、設定した取得すべきジョブ数を、処理制御部43に送信する。これにより、処理制御部43は、ステップA2を再度実行する。具体的には、処理制御部43は、SQL文を発行して、取得すべきジョブ数の数だけレコード31を取得する。   When step A9 is executed, the job number calculation unit 45 transmits the set number of jobs to be acquired to the processing control unit 43. Thereby, the process control unit 43 executes Step A2 again. Specifically, the process control unit 43 issues an SQL statement and acquires as many records 31 as the number of jobs to be acquired.

また、上述したステップA5の判定の結果、適正値以下である場合は、リソース監視部47は、処理制御部43に対して、発行がサスペンドされているSQL文の発行を再開するようメッセージを送信する(ステップA10)。なお、発行はサスペンドされているSQL文が存在しない場合は、ステップA10の処理は省略される。   If the result of determination in step A5 is not more than the appropriate value, the resource monitoring unit 47 sends a message to the processing control unit 43 so as to resume issuance of the SQL statement for which issuance is suspended. (Step A10). If there is no SQL statement that has been suspended, the process of step A10 is omitted.

次に、リソース監視部47は、APサーバ40のリソース使用状況が上限値(第2の条件)以下であるかどうかを判定する(ステップA11)。ステップA11の判定の結果、リソースの使用状況が上限値を超えていない場合は、リソース監視部47は、処理制御部43に、再度ステップA2を実行するよう指示を行なう。これにより、処理制御部43は、DBサーバ30にアクセスし、ステータスが「未処理」であり、他のAPサーバ40のトランザクションによってロックがかけられていないレコード31を取得する。   Next, the resource monitoring unit 47 determines whether the resource usage status of the AP server 40 is equal to or lower than the upper limit value (second condition) (step A11). As a result of the determination in step A11, when the resource usage status does not exceed the upper limit value, the resource monitoring unit 47 instructs the processing control unit 43 to execute step A2 again. Thereby, the process control unit 43 accesses the DB server 30 and acquires the record 31 whose status is “unprocessed” and which is not locked by a transaction of another AP server 40.

一方、ステップA11の判定の結果、APサーバ40のリソース使用状況が上限値以下でない場合(上限値を超えている場合)は、リソース監視部47は、処理制御部43を通じて、業務処理実行アプリケーション42に対して、実行中のジョブを実行開始時間が遅いものから順にサスペンドするよう、メッセージを送信する(ステップA12)。   On the other hand, if the resource usage status of the AP server 40 is not less than or equal to the upper limit value (if the upper limit value is exceeded) as a result of the determination in step A11, the resource monitoring unit 47 passes the business process execution application 42 through the process control unit 43. In response to this, a message is transmitted so that the job being executed is suspended in the order of execution start time (step A12).

また、ステップA12の実行後、監視部47は、更に、APサーバ40のリソース使用状況が上限値を下回った場合は、サスペンドしたジョブを先にサスペンドした物から順に再開する旨のメッセージを、処理制御部43を通じて、業務処理実行アプリケーション42に送信する。その後、リソース監視部47は、処理制御部43に、再度ステップA2を実行するよう指示を行なう。   In addition, after the execution of step A12, the monitoring unit 47 further processes a message indicating that the suspended job is resumed in order from the first suspended one when the resource usage status of the AP server 40 falls below the upper limit value. The data is transmitted to the business process execution application 42 through the control unit 43. Thereafter, the resource monitoring unit 47 instructs the processing control unit 43 to execute Step A2 again.

[実施の形態における効果]
以上説明したように、本実施の形態では、ロードバランサを用いることなく、各APサーバ40がリソースの使用状況を動的に監視している。また、各APサーバは、リソース使用状況の上限値に基づく監視だけでなく、リソース使用状況の適正値に基づく監視も行なっているため、一時的な処理速度の低下及びオーバーフローの発生の抑制だけでなく、システム全体における負荷の分散も可能となる。
[Effects of the embodiment]
As described above, in the present embodiment, each AP server 40 dynamically monitors the resource usage status without using a load balancer. In addition, each AP server performs not only monitoring based on the upper limit value of the resource usage status but also monitoring based on the appropriate value of the resource usage status, so that only a temporary decrease in processing speed and suppression of occurrence of overflow can be achieved. In addition, the load can be distributed throughout the system.

[変形例]
上述の図1〜図3に示した例では、コンピュータシステム100は、DBサーバ30を備えているが、本実施の形態はこの例に限定されるものではない。本実施の形態におけるコンピュータシステムは、DBサーバ30の代わりに、クライアント端末10から受け付けた処理要求を中継する機能を有する中継サーバを備えていても良い。その場合、各APサーバ40は、DBサーバ30にアクセスする代わりに、中継サーバの共有メモリに対してアクセスして、ジョブを取得する。この点以外については、図1〜図3に示した例と同様である。
[Modification]
In the example shown in FIGS. 1 to 3 described above, the computer system 100 includes the DB server 30, but the present embodiment is not limited to this example. The computer system according to the present embodiment may include a relay server having a function of relaying a processing request received from the client terminal 10 instead of the DB server 30. In this case, each AP server 40 accesses the shared memory of the relay server instead of accessing the DB server 30 and acquires a job. Except this point, it is the same as the example shown in FIGS.

[プログラム]
本発明の実施の形態におけるプログラムは、コンピュータに、図3に示すステップA2〜A12を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるAPサーバを実現することができる。この場合、コンピュータのCPU(Central Processing Unit)は、処理制御部43、能力計算部44、ジョブ数計算部45、入力受付部46、リソース監視部47、及びリソース情報取得部48として機能し、処理を行なう。
[program]
The program in the embodiment of the present invention may be a program that causes a computer to execute steps A2 to A12 shown in FIG. By installing and executing this program on a computer, the AP server in the present embodiment can be realized. In this case, the CPU (Central Processing Unit) of the computer functions as a processing control unit 43, a capacity calculation unit 44, a job number calculation unit 45, an input reception unit 46, a resource monitoring unit 47, and a resource information acquisition unit 48, To do.

ここで、本実施の形態におけるプログラムを実行することによって、APサーバ40を実現するコンピュータについて図4を用いて説明する。図4は、本発明の実施の形態におけるサーバ装置を実現するコンピュータの一例を示すブロック図である。   Here, a computer that realizes the AP server 40 by executing the program according to the present embodiment will be described with reference to FIG. FIG. 4 is a block diagram illustrating an example of a computer that implements the server device according to the embodiment of the present invention.

図4に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェース114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェース117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。   As shown in FIG. 4, the computer 110 includes a CPU 111, a main memory 112, a storage device 113, an input interface 114, a display controller 115, a data reader / writer 116, and a communication interface 117. These units are connected to each other via a bus 121 so that data communication is possible.

CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェース117を介して接続されたインターネット上で流通するものであっても良い。   The CPU 111 performs various calculations by developing the program (code) in the present embodiment stored in the storage device 113 in the main memory 112 and executing them in a predetermined order. The main memory 112 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory). Further, the program in the present embodiment is provided in a state of being stored in a computer-readable recording medium 120. Note that the program in the present embodiment may be distributed on the Internet connected via the communication interface 117.

また、記憶装置113の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェース114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。   Specific examples of the storage device 113 include a hard disk and a semiconductor storage device such as a flash memory. The input interface 114 mediates data transmission between the CPU 111 and an input device 118 such as a keyboard and a mouse. The display controller 115 is connected to the display device 119 and controls display on the display device 119.

データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェース117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。   The data reader / writer 116 mediates data transmission between the CPU 111 and the recording medium 120, and reads a program from the recording medium 120 and writes a processing result in the computer 110 to the recording medium 120. The communication interface 117 mediates data transmission between the CPU 111 and another computer.

また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記憶媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体が挙げられる。   Specific examples of the recording medium 120 include general-purpose semiconductor storage devices such as CF (Compact Flash (registered trademark)) and SD (Secure Digital), magnetic storage media such as a flexible disk, or CD- An optical storage medium such as ROM (Compact Disk Read Only Memory) can be used.

以上のように、本発明によれば、複数のサーバ装置で構成されたシステムにおいて、各サーバ装置のリソースの使用状況を動的に鑑みた負荷分散を実施することができる。本発明は、Webアプリケーションサーバを備えたシステムに利用でき、このようなシステムの構築及び保守を行なう情報通信業のSI部門などで特に有用である。   As described above, according to the present invention, in a system constituted by a plurality of server devices, it is possible to implement load distribution that dynamically considers the resource usage status of each server device. The present invention can be used in a system including a Web application server, and is particularly useful in the SI department of the information communication industry that constructs and maintains such a system.

10 クライアント端末
20 Webサーバ
30 DBサーバ
31 レコード
32 ページ
33 データベース
40 APサーバ(サーバ装置)
41 監視処理部
42 業務処理実行アプリケーション
43 処理制御部
44 能力計算部
45 ジョブ数計算部
46 入力受付部
47 リソース監視部
48 リソース情報取得部
100 コンピュータシステム
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェース
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェース
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス
10 Client Terminal 20 Web Server 30 DB Server 31 Record 32 Page 33 Database 40 AP Server (Server Device)
DESCRIPTION OF SYMBOLS 41 Monitoring processing part 42 Business process execution application 43 Processing control part 44 Capacity calculation part 45 Job number calculation part 46 Input reception part 47 Resource monitoring part 48 Resource information acquisition part 100 Computer system 110 Computer 111 CPU
112 Main Memory 113 Storage Device 114 Input Interface 115 Display Controller 116 Data Reader / Writer 117 Communication Interface 118 Input Device 119 Display Device 120 Recording Medium 121 Bus

Claims (7)

外部からの処理要求に応じてサービスを提供するシステムを構成し、且つ、前記サービスを提供するためのアプリケーションプログラムを実行する、サーバ装置であって、
当該サーバ装置のリソースの使用状況を特定するリソース情報を取得する、リソース情報取得部と、
処理要求が書き込まれたレコードを保持するデータベースサーバから、ステータスが未処理となっている前記レコードを、前記アプリケーションプログラムの処理対象となるジョブとして取得し、その際、前記データベースサーバから、更に、前記レコードの総数と、ステータスが未処理となっているレコードの総数とを取得し、そして、取得したジョブを前記アプリケーションプログラムに渡して実行させる、処理制御部と、
前記処理制御部に対して、取得された前記リソース情報が特定する前記リソースの使用状況が、第1の条件である適正値に最も近くなるように、前記処理対象となるジョブの取得を行なわせ、そして、
取得された前記リソース情報が特定する前記リソースの使用状況が、第2の条件である上限値を越える場合に、前記処理制御部に対して、前記リソースの使用状況が前記適正値に近づくように、前記アプリケーションプログラムに前記ジョブの実行をサスペンドさせる、リソース監視部と、
前記レコードの総数から、当該サーバ装置が処理したレコードの数と、ステータスが未処理となっているレコードの総数と、を減算して得られた値を、前記システムを構成する他のサーバ装置の能力として計算する、能力計算部と、
計算された前記他のサーバ装置の能力と、当該サーバ装置の能力である、当該サーバ装置が同時に実行できるレコード数と、を比較し、比較結果に応じて、前記処理制御部が次に前記ジョブを取得する際における、前記ジョブの数を計算する、ジョブ数計算部と、
を備えている、ことを特徴とするサーバ装置。
A server device that constitutes a system that provides a service in response to an external processing request, and that executes an application program for providing the service,
A resource information acquisition unit that acquires resource information for identifying the resource usage status of the server device;
From the database server that holds the record in which the processing request is written, the record whose status is not processed is acquired as a job to be processed by the application program. A processing control unit that obtains the total number of records and the total number of records whose status is unprocessed, and passes the acquired job to the application program for execution;
Let the processing control unit acquire the job to be processed so that the usage status of the resource specified by the acquired resource information is closest to the appropriate value that is the first condition. And
When the usage status of the resource specified by the acquired resource information exceeds an upper limit that is a second condition, the usage status of the resource approaches the appropriate value for the processing control unit. A resource monitoring unit that causes the application program to suspend execution of the job;
From the total number of records, the value obtained by subtracting the number of records processed by the server device and the total number of records whose status is unprocessed is obtained from other server devices constituting the system. Ability calculation part that calculates as ability,
The calculated capability of the other server device is compared with the number of records that can be executed simultaneously by the server device, which is the capability of the server device. A job number calculation unit for calculating the number of jobs when acquiring
The server apparatus characterized by the above-mentioned.
前記リソース情報が、前記リソースの使用状況として、当該サーバ装置における、CPU使用率、メモリ使用率、スワップメモリ使用率、オープンファイル数、オープンスレッド数、当該サーバ装置が備える記憶装置の使用量、及び、要求元が同一であり、且つ同時に実行されているプロセスの数、のうちの少なくとも一つを特定する、
請求項1に記載のサーバ装置。
The resource information is the usage status of the resource, the CPU usage rate, the memory usage rate, the swap memory usage rate, the number of open files, the number of open threads, the usage amount of the storage device provided in the server device, and Identify at least one of the number of processes that have the same request source and are running simultaneously,
The server device according to claim 1.
外部からの処理要求に応じてサービスを提供するシステムであって、
前記サービスを提供するためのアプリケーションプログラムを実行する、複数のサーバ装置を備え、
前記複数のサーバ装置それぞれは、
当該サーバ装置のリソースの使用状況を特定するリソース情報を取得する、リソース情報取得部と、
処理要求が書き込まれたレコードを保持するデータベースサーバから、ステータスが未処理となっている前記レコードを、前記アプリケーションプログラムの処理対象となるジョブとして取得し、その際、前記データベースサーバから、更に、前記レコードの総数と、ステータスが未処理となっているレコードの総数とを取得し、そして、取得したジョブを前記アプリケーションプログラムに渡して実行させる、処理制御部と、
前記処理制御部に対して、取得された前記リソース情報が特定する前記リソースの使用状況が、第1の条件である適正値に最も近くなるように、前記処理対象となるジョブの取得を行なわせ、そして、
取得された前記リソース情報が特定する前記リソースの使用状況が、第2の条件である上限値を越える場合に、前記処理制御部に対して、前記リソースの使用状況が前記適正値に近づくように、前記アプリケーションプログラムに前記ジョブの実行をサスペンドさせる、リソース監視部と、
前記レコードの総数から、当該サーバ装置が処理したレコードの数と、ステータスが未処理となっているレコードの総数と、を減算して得られた値を、前記システムを構成する他のサーバ装置の能力として計算する、能力計算部と、
計算された前記他のサーバ装置の能力と、当該サーバ装置の能力である、当該サーバ装置が同時に実行できるレコード数と、を比較し、比較結果に応じて、前記処理制御部が次に前記ジョブを取得する際における、前記ジョブの数を計算する、ジョブ数計算部と、
を備えている、ことを特徴とするコンピュータシステム。
A system that provides services in response to processing requests from outside,
A plurality of server devices for executing an application program for providing the service;
Each of the plurality of server devices includes:
A resource information acquisition unit that acquires resource information for identifying the resource usage status of the server device;
From the database server that holds the record in which the processing request is written, the record whose status is not processed is acquired as a job to be processed by the application program. A processing control unit that obtains the total number of records and the total number of records whose status is unprocessed, and passes the acquired job to the application program for execution;
Let the processing control unit acquire the job to be processed so that the usage status of the resource specified by the acquired resource information is closest to the appropriate value that is the first condition. And
When the usage status of the resource specified by the acquired resource information exceeds an upper limit that is a second condition, the usage status of the resource approaches the appropriate value for the processing control unit. A resource monitoring unit that causes the application program to suspend execution of the job;
From the total number of records, the value obtained by subtracting the number of records processed by the server device and the total number of records whose status is unprocessed is obtained from other server devices constituting the system. Ability calculation part that calculates as ability,
The calculated capability of the other server device is compared with the number of records that can be executed simultaneously by the server device, which is the capability of the server device. A job number calculation unit for calculating the number of jobs when acquiring
A computer system comprising:
外部からの処理要求に応じてサービスを提供するシステムにおける負荷を軽減するための方法であって、
(a)前記システムを構成し、且つ、前記サービスを提供するためのアプリケーションプログラムを実行する、サーバ装置によって、当該サーバ装置のリソースの使用状況を特定するリソース情報を取得する、ステップと、
(b)前記サーバ装置によって、前記(a)のステップで取得された前記リソース情報が特定する前記リソースの使用状況が、第1の条件である適正値に最も近くなるように、処理要求が書き込まれたレコードを保持するデータベースサーバから、ステータスが未処理となっている前記レコードを、前記アプリケーションプログラムの処理対象となるジョブとして取得し、その際、前記データベースサーバから、更に、前記レコードの総数と、ステータスが未処理となっているレコードの総数とを取得する、ステップと、
(c)前記サーバ装置によって、前記(a)のステップで取得された前記リソース情報が特定する前記リソースの使用状況が、第2の条件である上限値を越える場合に、前記リソースの使用状況が前記適正値に近づくように、前記アプリケーションプログラムにおいて、前記ジョブの実行をサスペンドさせる、ステップと、
(d)前記サーバ装置によって、前記レコードの総数から、当該サーバ装置が処理したレコードの数と、ステータスが未処理となっているレコードの総数と、を減算して得られた値を、前記システムを構成する他のサーバ装置の能力として計算する、ステップと、
(e)前記サーバ装置によって、前記(d)のステップで計算された前記他のサーバ装置の能力と、前記サーバ装置の能力である、当該サーバ装置が同時に実行できるレコード数と、を比較し、比較結果に応じて、次の前記(b)のステップで前記ジョブを取得する際における、前記ジョブの数を計算する、ステップと、
を有し、
前記(d)のステップ及び前記(e)のステップを、前記(a)〜(c)のステップが少なくとも一回実行された後に、実行する、ことを特徴とする負荷分散方法。
A method for reducing a load on a system that provides a service in response to an external processing request,
(A) acquiring resource information for specifying a resource usage status of the server device by the server device that configures the system and executes an application program for providing the service; and
(B) A processing request is written by the server device so that the usage status of the resource specified by the resource information acquired in step (a) is closest to the appropriate value that is the first condition. From the database server that holds the recorded records, the records whose status is unprocessed are acquired as jobs to be processed by the application program. At that time, from the database server, the total number of records , Get the total number of records whose status is unprocessed,
(C) When the usage status of the resource specified by the resource information acquired in the step (a) exceeds the upper limit that is the second condition, the usage status of the resource is determined by the server device. Suspending the execution of the job in the application program so as to approach the appropriate value; and
(D) A value obtained by subtracting, from the total number of records by the server device, the number of records processed by the server device and the total number of records whose status is not processed, Calculating as the capacity of other server devices constituting
(E) The server device compares the capacity of the other server device calculated in the step (d) with the number of records that can be executed simultaneously by the server device, which is the capacity of the server device; Calculating the number of jobs when acquiring the jobs in the next step (b) according to the comparison result; and
Have
The load distribution method, wherein the step (d) and the step (e) are executed after the steps (a) to (c) are executed at least once.
前記リソース情報が、前記リソースの使用状況として、当該サーバ装置における、CPU使用率、メモリ使用率、スワップメモリ使用率、オープンファイル数、オープンスレッド数、当該サーバ装置が備える記憶装置の使用量、及び、要求元が同一であり、且つ同時に実行されているプロセスの数、のうちの少なくとも一つを特定する、
請求項4に記載の負荷分散方法。
The resource information is the usage status of the resource, the CPU usage rate, the memory usage rate, the swap memory usage rate, the number of open files, the number of open threads, the usage amount of the storage device provided in the server device, and Identify at least one of the number of processes that have the same request source and are running simultaneously,
The load distribution method according to claim 4.
外部からの処理要求に応じてサービスを提供するシステムを構成し、且つ、前記サービスを提供するためのアプリケーションプログラムを実行する、コンピュータに、
(a)当該コンピュータのリソースの使用状況を特定するリソース情報を取得する、ステップと、
(b)前記(a)のステップで取得された前記リソース情報が特定する前記リソースの使用状況が、第1の条件である適正値に最も近くなるように、処理要求が書き込まれたレコードを保持するデータベースサーバから、ステータスが未処理となっている前記レコードを、前記アプリケーションプログラムの処理対象となるジョブとして取得し、その際、前記データベースサーバから、更に、前記レコードの総数と、ステータスが未処理となっているレコードの総数とを取得する、ステップと、
(c)前記(a)のステップで取得された前記リソース情報が特定する前記リソースの使用状況が、第2の条件である上限値を越える場合に、前記リソースの使用状況が前記適正値に近づくように、前記アプリケーションプログラムにおいて、前記ジョブの実行をサスペンドさせる、ステップと、
(d)記レコードの総数から、当該コンピュータが処理したレコードの数と、ステータスが未処理となっているレコードの総数と、を減算して得られた値を、前記システムを構成する他のコンピュータの能力として計算する、ステップと、
(e)記(d)のステップで計算された前記他のコンピュータの能力と、当該コンピュータの能力である、当該コンピュータが同時に実行できるレコード数と、を比較し、比較結果に応じて、次の前記(b)のステップで前記ジョブを取得する際における、前記ジョブの数を計算する、ステップと、
を実行させ、
前記(d)のステップ及び前記(e)のステップを、前記(a)〜(c)のステップが少なくとも一回実行された後に、実行する、プログラム。
A computer that configures a system that provides a service in response to an external processing request and that executes an application program for providing the service.
(A) obtaining resource information for identifying resource usage status of the computer; and
(B) Holds a record in which a processing request is written so that the usage status of the resource specified by the resource information acquired in step (a) is closest to the appropriate value that is the first condition The record whose status is unprocessed is acquired from the database server as a job to be processed by the application program, and at that time, the total number of records and the status are unprocessed from the database server. The total number of records that are
(C) When the usage status of the resource specified by the resource information acquired in the step (a) exceeds an upper limit that is a second condition, the usage status of the resource approaches the appropriate value. Suspending the execution of the job in the application program,
(D) the total number of pre-Symbol record, the number of records that the computer has processed, the status is the total number of the record to untreated, a value obtained by subtracting, in addition to constituting the system Calculating as computer capacity, steps,
(E) the previous SL (d) the ability of the other computer calculated in step, is the ability of the computer compares the number of records the computer can run simultaneously, and depending on the comparison result, the following A step of calculating the number of the jobs when acquiring the jobs in the step of (b).
And execute
A program for executing the step (d) and the step (e) after the steps (a) to (c) are executed at least once.
前記リソース情報が、前記リソースの使用状況として、当該コンピュータにおける、CPU使用率、メモリ使用率、スワップメモリ使用率、オープンファイル数、オープンスレッド数、当該コンピュータが備える記憶装置の使用量、及び、要求元が同一であり、且つ同時に実行されているプロセスの数、のうちの少なくとも一つを特定する、
請求項6に記載のプログラム。
The resource information includes the usage status of the resource as the CPU usage rate, the memory usage rate, the swap memory usage rate, the number of open files, the number of open threads, the usage amount of the storage device provided in the computer , and the request. Identify at least one of the number of processes that are originally the same and are running simultaneously;
The program according to claim 6.
JP2012048909A 2012-03-06 2012-03-06 Computer system, server device, load balancing method, and program Active JP5939620B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012048909A JP5939620B2 (en) 2012-03-06 2012-03-06 Computer system, server device, load balancing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012048909A JP5939620B2 (en) 2012-03-06 2012-03-06 Computer system, server device, load balancing method, and program

Publications (2)

Publication Number Publication Date
JP2013186520A JP2013186520A (en) 2013-09-19
JP5939620B2 true JP5939620B2 (en) 2016-06-22

Family

ID=49387932

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012048909A Active JP5939620B2 (en) 2012-03-06 2012-03-06 Computer system, server device, load balancing method, and program

Country Status (1)

Country Link
JP (1) JP5939620B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3460661A4 (en) 2016-05-20 2020-01-01 Hitachi, Ltd. Processing system and program thereof
CN113495798A (en) * 2020-03-20 2021-10-12 深圳市理邦精密仪器股份有限公司 Method and system for selecting server based on information terminal
CN112667560B (en) * 2020-12-22 2023-01-24 深圳致星科技有限公司 Data distribution device and computing platform based on FPGA

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000268012A (en) * 1999-03-12 2000-09-29 Nec Corp Method and device for distributing load in client server system
JP2007199811A (en) * 2006-01-24 2007-08-09 Hitachi Ltd Program control method, computer and program control program
JP5512215B2 (en) * 2009-09-30 2014-06-04 株式会社日立システムズ Job processing system and method, and program thereof
JP5557590B2 (en) * 2010-05-06 2014-07-23 株式会社日立製作所 Load balancing apparatus and system

Also Published As

Publication number Publication date
JP2013186520A (en) 2013-09-19

Similar Documents

Publication Publication Date Title
US11593152B1 (en) Application hosting in a distributed application execution system
JP6186787B2 (en) Data transfer device, data transfer system, data transfer method and program
JP5653151B2 (en) Cloud computing system, cloud computing system control method, and management application
US8595361B2 (en) Virtual machine software license management
JP4240062B2 (en) Computer system, performance measurement method, and management server device
JP6372074B2 (en) Information processing system, control program, and control method
WO2012056596A1 (en) Computer system and processing control method
US20210389995A1 (en) Information processing system and control method
JP2006285316A (en) Server performance measuring method, server performance measuring system and computer program used for the method and system
US7555621B1 (en) Disk access antiblocking system and method
US10754368B1 (en) Method and system for load balancing backup resources
JP2019079334A (en) Information processing apparatus, information processing system, and information processing method
JP2006243781A (en) Method for controlling upper limit of multiplicity of server, management server, server, and program
JP5939620B2 (en) Computer system, server device, load balancing method, and program
KR102227061B1 (en) Service system and control method of the same, and computer readable storage medium
JP6079357B2 (en) Information processing apparatus, virtual PC thin client system, login load reduction method, and login load reduction program
JP2007199829A (en) Computer control method, information processing system, operation management device, computer, and computer control program
US9349012B2 (en) Distributed processing system, distributed processing method and computer-readable recording medium
JP2007179246A (en) Method, program and server for computer management
JP6257296B2 (en) Resource allocation device, resource allocation system, resource allocation method and program
JP6065843B2 (en) Service level management apparatus, program, and method
JP2010026828A (en) Method for controlling virtual computer
JP6885441B2 (en) License management device, license management method, and license management program
US20170168867A1 (en) Information processing system and control method
KR20230063015A (en) Apparatus and method for managing virtual machine cpu resource in virtualization server

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20140609

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20150123

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150901

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160328

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: 20160419

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160512

R150 Certificate of patent or registration of utility model

Ref document number: 5939620

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150