JP5870635B2 - Processing request execution management apparatus and program - Google Patents

Processing request execution management apparatus and program Download PDF

Info

Publication number
JP5870635B2
JP5870635B2 JP2011245265A JP2011245265A JP5870635B2 JP 5870635 B2 JP5870635 B2 JP 5870635B2 JP 2011245265 A JP2011245265 A JP 2011245265A JP 2011245265 A JP2011245265 A JP 2011245265A JP 5870635 B2 JP5870635 B2 JP 5870635B2
Authority
JP
Japan
Prior art keywords
customer
processing
request
data processing
processing request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2011245265A
Other languages
Japanese (ja)
Other versions
JP2013101523A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2011245265A priority Critical patent/JP5870635B2/en
Publication of JP2013101523A publication Critical patent/JP2013101523A/en
Application granted granted Critical
Publication of JP5870635B2 publication Critical patent/JP5870635B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、処理要求実行管理装置及びプログラムに関する。   The present invention relates to a processing request execution management apparatus and a program.

特許文献1には、特定のデータ処理に対する各端末装置からのデータ処理要求が集中しても、許容される特定ユーザに対しては当該データ処理要求を優先して分散処理させるためのシステムが開示されている。このシステムでは、各クライアントからのデータ処理要求受け付け時に、データ要求元のユーザ属性を記憶される判定ファイルに基づいて判定して、特定のユーザからのデータ処理要求を他の情報処理装置に配信させて優先処理させる。   Patent Document 1 discloses a system for performing distributed processing with priority given to specific data processing even if data processing requests from each terminal apparatus are concentrated, to an allowed specific user. Has been. In this system, when a data processing request is received from each client, the user attribute of the data request source is determined based on the stored determination file, and the data processing request from a specific user is distributed to other information processing apparatuses. To give priority processing.

特許文献2には、データセンタにおいて、ユーザ企業ごとに夫々独立な計算資源を割り当て、負荷に応じてその割当てを自動的にリアルタイムに変更するシステムが開示される。このシステムでは、制御プログラムは、ユーザ企業識別子ごとの計算機割当て制御表を作成し、負荷分散装置に設定する。ユーザ要求パケット中のIPアドレスからユーザ企業識別子を識別する手段を設ける。負荷分散装置は、ユーザ要求パケットからユーザ企業を識別し、しかるべき計算機群にそれを転送する。さらに制御プログラムはユーザごとのサービスレベル契約と、計算機の稼動状況モニタ結果を比較、契約条件未達時は割当て計算機を増やす。具体的には制御表を変更し、負荷分散装置に再設定する。さらに、制御プログラムは、それに基づく課金情報を変更する。   Patent Document 2 discloses a system in which independent computing resources are allocated to each user company in a data center, and the allocation is automatically changed in real time according to a load. In this system, the control program creates a computer allocation control table for each user company identifier and sets it in the load balancer. Means are provided for identifying the user company identifier from the IP address in the user request packet. The load balancer identifies the user company from the user request packet and forwards it to the appropriate computer group. Further, the control program compares the service level contract for each user with the operation status monitor result of the computer, and increases the allocated computer when the contract condition is not met. Specifically, the control table is changed and reset in the load balancer. Further, the control program changes the billing information based on it.

特許文献3に開示される動的負荷分散システムは、複数のWebサーバが複数の業務を分散して処理する際、インターネットの外側においてレスポンスを監視し且つ各サーバ側のCPU使用率等のリソースを監視し、予め定めたスケジュールルールに応じて各サーバに対する業務の振り分けを行い、更に予め設定したレスポンスルールの閾値を越えてレスポンスタイムが遅くなったサーバを検出したときや、予め設定したサーバリソースルールの上限値を越えてCPU使用率が高いサーバを検出したとき、サーバ監視・制御エージェントが各Webサーバに対する複数の業務の割り振りを動的に変更する。   In the dynamic load distribution system disclosed in Patent Document 3, when a plurality of Web servers process a plurality of tasks in a distributed manner, the response is monitored outside the Internet, and resources such as the CPU usage rate on each server side are monitored. Monitors and distributes work to each server according to a predetermined schedule rule, and when a server whose response time is delayed by exceeding a preset response rule threshold is detected, or a preset server resource rule When a server having a high CPU usage rate exceeding the upper limit value is detected, the server monitoring / control agent dynamically changes the allocation of a plurality of tasks to each Web server.

特開2002−140299号公報JP 2002-140299 A 特開2002−024192号公報JP 2002-024192 A 特開2005−182641号公報JP 2005-182641 A

本発明は、データ処理システムに余力がある場合には応答保証の時間帯の外にある顧客組織内のユーザの処理要求も受け付けつつも、高負荷状態となった場合には応答保証の時間帯内にある顧客組織の応答保証ができるようにすることを目的とする。   The present invention accepts a processing request of a user in a customer organization outside the response guarantee time zone when the data processing system has sufficient capacity, but responds to a response guarantee time zone in a high load state. The purpose is to be able to guarantee the response of the customer organization within.

請求項1に記載の発明は、複数の顧客組織の各々について、応答保証を行う時間帯である保証時間帯と、当該保証時間帯における前記応答保証の内容と、を記憶した記憶手段であって、前記応答保証の内容には、少なくとも当該顧客組織に割り当てられた最大同時要求処理数が含まれる、記憶手段と、前記複数の顧客組織内の各ユーザからの処理要求に応答してデータ処理を実行するデータ処理システムであって同一時刻における各顧客組織の前記最大同時要求処理数の合計値の、全時間帯の中での最大値を同時に処理できる能力を持つデータ処理システム、の負荷を監視する監視手段と、前記監視手段の監視により前記データ処理システムの高負荷状態が検知されている期間は、当該期間を前記保証時間帯内に含む顧客組織である保証時間内組織内のユーザからの処理要求は前記データ処理システムに実行させ、当該期間を前記保証時間帯に含んでいない顧客組織である保証時間外組織内のユーザからの処理要求は前記データ処理システムに実行させないようにする制御を行う制御手段と、を備える処理要求実行管理装置である。 The invention according to claim 1, for each of the plurality of client organization, and guaranteed time period is a time period during which a response guarantee, a storage means for storing, the contents of the response assurance in the guarantee time period The content of the response guarantee includes at least the maximum number of simultaneous request processes assigned to the customer organization, and performs data processing in response to a processing request from each user in the plurality of customer organizations. Monitors the load of the data processing system to be executed and capable of simultaneously processing the maximum value of all the maximum simultaneous request processes of each customer organization at the same time in all time zones And a period during which a high load state of the data processing system is detected by monitoring by the monitoring means is a guarantee time that is a customer organization that includes the period within the guarantee time zone Processing request from the user within the organization may be executed in the data processing system, the processing requirements of the period from the user of the guaranteed time zone comprise not within the guarantee time outside the organization is the customer organization to the data processing system A processing request execution management device comprising: control means for performing control so as not to be executed.

請求項2に記載の発明は、前記制御手段は、前記各顧客組織内の各ユーザからの処理要求を一時的に保持するキューを備えており、前記データ処理システムの高負荷状態が検知されていない期間は、保証時間内組織及び保証時間外組織のいずれのユーザからの処理要求であるかを区別せずに前記キューの先頭から順に処理要求を前記キューから取り出して前記データ処理システムに実行させると共に、前記データ処理システムの高負荷状態が検知されている期間は、保証時間外組織内のユーザからの処理要求は前記キューから取り出さず、保証時間内組織内のユーザからの処理要求のみを前記キューから取り出して前記データ処理システムに実行させる、ことを特徴とする請求項1に記載の処理要求実行管理装置である。   According to a second aspect of the present invention, the control means includes a queue that temporarily holds a processing request from each user in each customer organization, and a high load state of the data processing system is detected. When there is no period, the processing request is extracted from the queue in order from the top of the queue and executed by the data processing system without distinguishing whether the processing request is from a user within the guarantee time organization or an organization outside the guarantee time. In addition, during a period when a high load state of the data processing system is detected, a processing request from a user in an organization outside the guarantee time is not taken out from the queue, and only a processing request from a user in the organization within the guarantee time is The processing request execution management apparatus according to claim 1, wherein the processing request execution management apparatus extracts the data from the queue and causes the data processing system to execute the data processing system.

請求項3に記載の発明は、前記制御手段は、前記データ処理システムの高負荷状態が検知されている期間において前記保証時間内組織が複数存在する場合に、前記キューからそれら各保証時間内組織の処理要求が取り出される割合が、それら各保証時間内組織に割り当てられた前記最大同時要求処理数同士の比率に応じたものとなるように制御する、ことを特徴とする請求項1又は2に記載の処理要求実行管理装置である。 Invention of claim 3, prior Symbol control means, said data processing high load state of the system in the period that is detected when the guarantee time the organization there are a plurality, they in each guaranteed time from the queue ratio of processing requests tissue is taken out, according to claim 1 or 2 which is controlled so that the one corresponding to the ratio of the maximum simultaneous number of request processing between assigned to each guaranteed time within the organization, and wherein the The processing request execution management device described in 1.

請求項4に記載の発明は、処理要求が再実行可能か否かを判定する再実行可否判定手段を更に備え、前記制御手段は、前記データ処理システムの高負荷状態が検知されている期間において、前記データ処理システムが実行中の前記保証外組織内のユーザからの処理要求のうち、前記再実行可否判定手段で再実行可能と判定される処理要求の実行を強制終了するよう前記データ処理システムに指示する、ことを特徴とする請求項1〜3のいずれか1項に記載の処理要求実行管理装置である。   The invention according to claim 4 further includes a re-execution determination unit that determines whether or not the processing request can be re-executed, and the control unit is configured to detect a high load state of the data processing system. Of the processing requests from users in the non-guaranteed organization that are being executed by the data processing system, the data processing system is forcibly terminated to execute processing requests that are determined to be re-executable by the re-executability determination unit. The processing request execution management apparatus according to claim 1, wherein

請求項5に記載の発明は、処理要求が、前記データ処理システムによる実行に予め定められた時間以下の時間しか要さない軽負荷タイプであるか否かを判定する要求タイプ判定手段を更に備え、前記監視手段は、前記顧客組織ごとに前記データ処理システムが同時に実行している当該顧客組織からの処理要求のうち軽負荷タイプでないと判定される処理要求の数を同時実行数として監視しており、監視している前記各顧客組織の前記同時実行数に基づいて前記データ処理システムが高負荷状態であるか否かを判定する、ことを特徴とする請求項1〜4のいずれか1項に記載の処理要求実行管理装置である。   The invention according to claim 5 further comprises request type determination means for determining whether or not the processing request is a light load type that requires less than a predetermined time for execution by the data processing system. The monitoring means monitors the number of processing requests determined to be not of the light load type among the processing requests from the customer organization that are simultaneously executed by the data processing system for each customer organization as the number of simultaneous executions. And determining whether or not the data processing system is in a high-load state based on the number of concurrent executions of each customer organization being monitored. The processing request execution management device described in 1.

請求項6に記載の発明は、コンピュータを、複数の顧客組織の各々について、応答保証を行う時間帯である保証時間帯と、当該保証時間帯における前記応答保証の内容と、を記憶した記憶手段であって、前記応答保証の内容には、少なくとも当該顧客組織に割り当てられた最大同時要求処理数が含まれる、記憶手段、前記複数の顧客組織内の各ユーザからの処理要求に応答してデータ処理を実行するデータ処理システムであって同一時刻における各顧客組織の前記最大同時要求処理数の合計値の、全時間帯の中での最大値を同時に処理できる能力を持つデータ処理システム、の負荷を監視する監視手段、前記監視手段の監視により前記データ処理システムの高負荷状態が検知されている期間は、当該期間を前記保証時間帯内に含む顧客組織である保証時間内組織内のユーザからの処理要求は前記データ処理システムに実行させ、当該期間を前記保証時間帯に含んでいない顧客組織である保証時間外組織内のユーザからの処理要求は前記データ処理システムに実行させないようにする制御を行う制御手段、として機能させるためのプログラムである。 According to a sixth aspect of the present invention, there is provided storage means for storing a guarantee time zone, which is a time zone in which response is guaranteed, for each of a plurality of customer organizations, and contents of the response guarantee in the guarantee time zone. The content of the response guarantee includes at least the maximum number of simultaneous request processes allocated to the customer organization, and data in response to a processing request from each user in the plurality of customer organizations. The load of a data processing system that executes processing, and that has the ability to simultaneously process the maximum value in all time zones of the total value of the maximum simultaneous request processing counts of each customer organization at the same time The monitoring means for monitoring the period during which the high load state of the data processing system is detected by the monitoring means is a customer organization that includes the period within the guaranteed time zone. That assurance processing request from a user within a time set Onai is to execute on the data processing system, the processing requirements of the period from the user of the guaranteed time zone comprise not a customer organization guarantees overtime in tissue wherein It is a program for causing a data processing system to function as a control unit that performs control to prevent execution .

請求項1又は6に係る発明によれば、データ処理システムが高負荷状態でなければ保証時間外組織内のユーザの処理要求も受け付けつつも、高負荷状態となった場合には保証時間内組織の応答保証の内容を満たすよう制御することができる。   According to the first or sixth aspect of the present invention, if the data processing system is not in a high load state, it accepts a user's processing request in the organization outside the guaranteed time, but if the data processing system is in a high load state, the organization within the guaranteed time It can be controlled to satisfy the contents of the response guarantee.

請求項2に係る発明によれば、データ処理システムが高負荷状態である間、保証時間外組織の処理要求が実行される数が減っていき、これにより生じたデータ処理システムの処理余力を保証時間内組織の処理要求の処理に振り向けることができる。   According to the second aspect of the present invention, while the data processing system is in a high load state, the number of processing requests of the organization outside the guarantee time is reduced, and the processing capacity of the data processing system generated thereby is guaranteed. It can be directed to the processing request of the organization within time.

請求項3に係る発明によれば、最大同時要求処理数が多い保証時間内組織ほど処理要求が実行されやすくし、応答保証が実現されやすくすることができる。   According to the third aspect of the present invention, the processing request can be more easily executed and the response guarantee can be easily realized as the organization within the guaranteed time with the largest number of simultaneous request processing.

請求項4に係る発明によれば、保証時間外組織の処理要求の実行が完了するのを単に待つよりも、データ処理システムの負荷を急速に低減させ、その負荷低減により生じた余力を保証時間内組織の処理要求に振り向けることができる。   According to the fourth aspect of the present invention, rather than simply waiting for the execution of the processing request of the organization outside the guarantee time, the load of the data processing system is rapidly reduced, and the remaining power generated by the load reduction is reduced to the guarantee time. It can be directed to the processing request of the internal organization.

請求項5に係る発明によれば、処理要求が軽負荷タイプであるか否かの区別をせずに単に同時実行数により高負荷状態であるか否かを判定する方式よりも、高負荷状態の判定をより適切に行うことができる。   According to the invention according to claim 5, rather than determining whether or not the processing request is a light load type, it is more than a method of determining whether or not a high load state is based on the number of simultaneous executions. Can be determined more appropriately.

実施形態のシステム構成の一例を示す図である。It is a figure which shows an example of the system configuration | structure of embodiment. サービスレベルデータ保持部に記憶されるサービスレベルデータの例を示す図である。It is a figure which shows the example of the service level data memorize | stored in a service level data holding part. 図2に示したサービスレベルデータが示す保証内容を模式的に示す図である。It is a figure which shows typically the guarantee content which the service level data shown in FIG. 2 shows. 応答時間記録部が管理する応答時間の実測値データのデータ構造の一例を示す図である。It is a figure which shows an example of the data structure of the measured value data of the response time which a response time recording part manages. 処理要求スケジュール部のモード切り換えの手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the mode switching of a process request | requirement schedule part. 保証モード時のキュー内の処理要求の取り出し処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the extraction process of the process request in the queue at the time of guarantee mode. 保証モード時のキュー内の処理要求の取り出し処理の手順の別の一例を示すフローチャートである。It is a flowchart which shows another example of the procedure of the extraction process of the process request in the queue at the time of guarantee mode.

図1を参照して、本発明に係る処理要求実行管理装置10を備えるASP(アプリケーションサービスプロバイダ)システムの一実施形態を説明する。このASPシステムは、顧客に対して、インターネット等のデータ通信ネットワークを介してデータ処理サービスを提供するシステムである。ここでは、個々の顧客は企業等の組織(図1では、「A社」、「B社」など)であるとする。ASPシステムは、それら各顧客に所属する個々のユーザのPC(パーソナルコンピュータ)から処理要求を受け、その処理要求に対応するデータ処理を実行する。各顧客(及びその顧客に所属する個々のユーザ)はあらかじめASPシステム(の中の例えば処理要求実行管理装置10)に登録されている。各顧客に属するユーザは、このシステムにログインし、必要とするアプリケーションを呼び出し、そのアプリケーションによるデータ処理を要求する。ASPシステムは、この処理要求に応じたデータ処理を実行する。   With reference to FIG. 1, an embodiment of an ASP (Application Service Provider) system including a processing request execution management apparatus 10 according to the present invention will be described. This ASP system is a system for providing a data processing service to a customer via a data communication network such as the Internet. Here, it is assumed that each customer is an organization such as a company ("Company A", "Company B", etc. in FIG. 1). The ASP system receives a processing request from each user's PC (personal computer) belonging to each customer, and executes data processing corresponding to the processing request. Each customer (and individual users belonging to the customer) is registered in advance in the ASP system (for example, the processing request execution management device 10). A user belonging to each customer logs in to the system, calls a required application, and requests data processing by the application. The ASP system executes data processing according to this processing request.

このASPシステムは、処理要求実行管理装置10と、サービスレベル登録部20と、データ処理システム30とを備える。   This ASP system includes a processing request execution management device 10, a service level registration unit 20, and a data processing system 30.

データ処理システム30は、顧客に対するアプリケーションサービスのためのデータ処理を実行するシステムであり、複数のデータ処理部32−1,32−2,…32−N(Nは2以上の整数)と、処理用データ保持部34とを備えている。データ処理部32−1,32−2,…32−N(以下、区別の必要がない場合は「データ処理部32」と総称する)は、アプリケーションを実行する個々のコンピュータである。データ処理部32は、必要なアプリケーションを実行することで、ユーザから処理要求に応じた個々のデータ処理を実現する。データ処理部32が実行するアプリケーションには特に限定はない。処理用データ保持部34は、各データ処理部32のデータ処理に用いられるデータを記憶した記憶装置であり、例えばデータベースとして構築されている。処理用データ保持部34は、物理的に単一の装置であってもよいし、複数の装置から構成されていてもよい。各データ処理部32は、ユーザからの処理要求に応じて、必要なデータを処理用データ保持部34から取得し、取得したデータを用いてデータ処理を実行する。また、実行したデータ処理が、処理用データ保持部34内のデータを変更するものであれば、データ処理部32は、そのデータ処理の結果により処理用データ保持部34内のデータを更新する。   The data processing system 30 is a system that executes data processing for application services for customers, and includes a plurality of data processing units 32-1, 32-2, ... 32-N (N is an integer of 2 or more), and processing. And a data storage unit 34. The data processing units 32-1, 32-2,..., 32-N (hereinafter collectively referred to as “data processing unit 32” when there is no need for distinction) are individual computers that execute applications. The data processing unit 32 realizes individual data processing according to a processing request from the user by executing a necessary application. There is no particular limitation on the application executed by the data processing unit 32. The processing data holding unit 34 is a storage device that stores data used for data processing of each data processing unit 32, and is constructed as a database, for example. The processing data holding unit 34 may be physically a single device or may be composed of a plurality of devices. Each data processing unit 32 acquires necessary data from the processing data holding unit 34 in response to a processing request from the user, and executes data processing using the acquired data. Further, if the executed data processing changes data in the processing data holding unit 34, the data processing unit 32 updates the data in the processing data holding unit 34 with the result of the data processing.

データ処理部32が実行する処理の流れの具体例を以下に示す。例えば、ある顧客内のユーザが自身のPC上のブラウザからデータ処理部32上のウェブサーバにアクセスし、データベースの検索UI(ユーザインタフェース)画面を要求する処理要求をHTTPリクエストの形で送信すると、データ処理部32はその要求に応じた検索UI画面のウェブページを提供する。また、ユーザがそのUI画面に検索条件を入力して検索の処理要求を発すると、データ処理部32はその処理要求に応じて処理用データ保持部34内の当該顧客のデータベースを検索し、検索結果を表示したウェブページを生成してユーザに返す。また、ユーザがデータベースへの入力フォームに対してデータを入力し、データ入力の要求を発すると、データ処理部32はその入力データにより処理用データ保持部34内の当該顧客のデータベースを更新する。なお、この具体例はあくまで説明のための一例に過ぎず、データ処理部32が実行するアプリケーションの種類やそのアプリケーションに対する処理要求の種類は、上に例示したものに限られない。   A specific example of the flow of processing executed by the data processing unit 32 is shown below. For example, when a user in a customer accesses a web server on the data processing unit 32 from a browser on his / her PC and sends a processing request for requesting a database search UI (user interface) screen in the form of an HTTP request, The data processing unit 32 provides a web page of a search UI screen according to the request. When the user inputs a search condition on the UI screen and issues a search processing request, the data processing unit 32 searches the database of the customer in the processing data holding unit 34 according to the processing request, and performs a search. A web page displaying the result is generated and returned to the user. When the user inputs data to the database input form and issues a data input request, the data processing unit 32 updates the customer database in the processing data holding unit 34 with the input data. Note that this specific example is merely an example for explanation, and the type of application executed by the data processing unit 32 and the type of processing request for the application are not limited to those exemplified above.

処理要求実行管理装置10は、各顧客に属する各ユーザからの処理要求を、データ処理システム30内の各データ処理部32−1,32−2,…32−Nに割り振る処理を行う。処理要求実行管理装置10は、処理要求受付部11、処理要求保持部13、処理要求スケジュール部15、サービスレベルデータ保持部17、及び応答時間記録部19を備える。   The processing request execution management apparatus 10 performs processing for allocating processing requests from users belonging to customers to the data processing units 32-1, 32-2,..., 32-N in the data processing system 30. The processing request execution management apparatus 10 includes a processing request receiving unit 11, a processing request holding unit 13, a processing request scheduling unit 15, a service level data holding unit 17, and a response time recording unit 19.

処理要求受付部11は、ネットワークを介して、各顧客(図示例ではA,B,C社)内のユーザからの処理要求を受け付ける。受け付けた処理要求は、処理要求保持部13に入れられる。処理要求保持部13は、処理要求を保持するキュー(待ち行列)である。処理要求受付部11が処理要求を受け付けるごとに、新たに受け付けられた処理要求はそのキューの末尾に追加される。処理要求保持部13に保持された処理要求は、次に説明する処理要求スケジュール部15により取り出され、いずれかのデータ処理部32に渡される。取り出された処理要求は、処理要求保持部13から削除される。   The processing request reception unit 11 receives processing requests from users in each customer (A, B, and C companies in the illustrated example) via the network. The accepted processing request is entered in the processing request holding unit 13. The processing request holding unit 13 is a queue (queue) that holds processing requests. Each time the process request accepting unit 11 accepts a process request, the newly accepted process request is added to the end of the queue. The processing request held in the processing request holding unit 13 is taken out by the processing request scheduling unit 15 described below, and is passed to any data processing unit 32. The extracted processing request is deleted from the processing request holding unit 13.

処理要求スケジュール部15は、処理要求保持部13内のキュー内の処理要求を、データ処理システム30内の各データ処理部32に分配して実行させる。例えば、いずれかのデータ処理部32が次の処理要求を受け入れ可能になると、処理要求スケジュール部15は、処理要求保持部13から処理要求を取り出し、取り出した処理要求をそのデータ処理部32に対して割り当てる。処理要求スケジュール部15は、キュー(処理要求保持部13)からの処理要求の取り出し方のモードとして、少なくとも通常モードと保証モードと呼ぶ2つのモードを有している。通常モードは、処理要求保持部13のキューの先頭から順に処理要求を取り出すという一般的なFIFO(先入れ先出し)方式のモードである。保証モードは、顧客に保証したサービスレベルを達成するために、保証対象の顧客からの処理要求を保証対象でない顧客からの処理要求よりも優先してキューから取り出すモードである。一つの例では、すべての顧客に保証したサービスレベルが達成できている状況では、処理要求スケジュール部15は通常モードで動作し、データ処理システム30が高負荷状態となった場合には、処理要求スケジュール部15は保証モードで動作する。なお、高負荷状態とは、少なくとも1つの顧客に保証したサービスレベルが達成されなくなった(あるいは達成できなくなりそうになった)状態のことである。   The processing request scheduling unit 15 distributes and executes the processing requests in the queue in the processing request holding unit 13 to each data processing unit 32 in the data processing system 30. For example, when any one of the data processing units 32 can accept the next processing request, the processing request scheduling unit 15 extracts the processing request from the processing request holding unit 13 and sends the extracted processing request to the data processing unit 32. Assign. The processing request scheduling unit 15 has at least two modes called a normal mode and a guarantee mode as modes for extracting processing requests from the queue (processing request holding unit 13). The normal mode is a general FIFO (first-in first-out) mode in which processing requests are extracted in order from the head of the queue of the processing request holding unit 13. In the guarantee mode, in order to achieve the service level guaranteed to the customer, the processing request from the customer to be guaranteed is taken out from the queue in preference to the processing request from the customer not to be guaranteed. In one example, in a situation where the service level guaranteed to all customers can be achieved, the processing request scheduling unit 15 operates in the normal mode, and when the data processing system 30 is in a high load state, the processing request The schedule unit 15 operates in the guarantee mode. The high load state is a state in which the service level guaranteed to at least one customer is no longer achieved (or is almost impossible to achieve).

サービスレベルデータ保持部17には、各顧客に保証したサービスレベルの内容を示すデータが記憶されている。サービスレベルとは、このシステムを運用するプロバイダが各顧客に対して保証するASPサービスの品質の内容である。   The service level data holding unit 17 stores data indicating the contents of the service level guaranteed to each customer. The service level is the content of the ASP service quality that the provider operating this system guarantees to each customer.

図2に、サービスレベルデータ保持部17に記憶されるサービスレベルデータの例を示す。この例では、ASPサービスの品質として、最大同時セッション数と目標応答時間の組合せを用いている。ここで、最大同時セッション数は、プロバイダが顧客に保証する同時セッション数の上限値である。なお、同時セッション数は、データ処理システム30が同時に実行する一つの顧客からの処理要求の数である。また、目標応答時間は、ユーザのPCが処理要求を発してから、データ処理部32がその処理要求の実行結果をユーザのPCに返すまでの時間(この時間を「応答時間」と呼ぶ)の目標上限値である。この実施形態では、処理要求スケジュール部15は、顧客からの処理要求の数が最大同時セッション数に達するまでは、その顧客からの処理要求に対するデータ処理システム30の応答時間が目標応答時間を超えないよう保証すべく、処理要求保持部13内の処理要求の実行順序を制御する。ここで、目標応答時間は、個々の処理要求についての応答時間についてのものであってもよいし、直近のある期間における当該顧客からの処理要求についての応答時間の平均についてものであってもよい。すなわち、処理要求スケジュール部15は、顧客からの個々の処理要求についての応答時間がすべてその顧客の目標応答時間を超えないように制御するものであってもよいし、直近のある期間における当該顧客からの処理要求についての応答時間の平均が目標応答時間を超えないように制御するものであってもよい。処理要求スケジュール部15がこれら2つの方式のうちのいずれの方式で動作するかを選択できるようにしてもよい。   FIG. 2 shows an example of service level data stored in the service level data holding unit 17. In this example, the combination of the maximum number of simultaneous sessions and the target response time is used as the ASP service quality. Here, the maximum number of simultaneous sessions is an upper limit value of the number of simultaneous sessions guaranteed by the provider to the customer. The number of simultaneous sessions is the number of processing requests from one customer that the data processing system 30 executes simultaneously. The target response time is a time from when the user's PC issues a processing request until the data processing unit 32 returns the execution result of the processing request to the user's PC (this time is referred to as “response time”). The target upper limit value. In this embodiment, the processing request scheduling unit 15 does not exceed the target response time for the response time of the data processing system 30 to the processing request from the customer until the number of processing requests from the customer reaches the maximum number of simultaneous sessions. In order to assure such, the execution order of the processing requests in the processing request holding unit 13 is controlled. Here, the target response time may be about the response time for each processing request, or may be about the average response time for the processing request from the customer in a certain period of time. . In other words, the processing request scheduling unit 15 may control the response time for each processing request from the customer so that it does not exceed the target response time of the customer, or the customer in the most recent period. Control may be made so that the average response time for the processing requests from does not exceed the target response time. The processing request schedule unit 15 may be able to select which of these two methods is used.

また、図2の例では、ASPサービスのレベル(応答保証の内容)を時間帯ごとに登録している。例えば、顧客企業Aについては、午前9時〜午前10時の時間帯に最大セッション数100、目標応答時間5秒という応答保証内容が登録され、顧客企業Cについては、午前8時〜午後6時の時間帯に最大同時セッション数30、目標応答時間8秒という応答保証内容が登録されている。一方、顧客企業Bについては、午前11時〜正午の時間帯に最大同時セッション数50、目標応答時間5秒という応答保証内容が、午後1時〜午後2時の時間帯に最大同時セッション数100、目標応答時間5秒という応答保証内容が登録されている。このように、サービスレベル(応答保証内容)が登録された時間帯のことを、以下では「保証時間帯」と呼ぶ。図2の例では、顧客A及びCは保証時間帯を1つだけ登録しており、顧客Bは保証時間帯を2つ登録している。   In the example of FIG. 2, the ASP service level (response guarantee content) is registered for each time zone. For example, for the customer company A, response guarantee details of a maximum number of sessions of 100 and a target response time of 5 seconds are registered in the time zone from 9 am to 10 am, and for the customer company C, from 8 am to 6 pm The response guarantee contents of the maximum number of simultaneous sessions 30 and the target response time of 8 seconds are registered in this time zone. On the other hand, for the customer company B, the response guarantee content that the maximum number of simultaneous sessions is 50 and the target response time is 5 seconds from 11:00 am to noon, the maximum number of simultaneous sessions is 100 from 1 pm to 2 pm The response guarantee content of the target response time of 5 seconds is registered. The time zone in which the service level (response guarantee content) is registered in this way is hereinafter referred to as “guaranteed time zone”. In the example of FIG. 2, customers A and C register only one guaranteed time zone, and customer B registers two guaranteed time zones.

なお、ある顧客の保証時間帯以外の時間帯でも、その顧客内のユーザはデータ処理システム30を利用する(すなわちデータ処理システム30に処理要求を送ってデータ処理を実行させる)ことはできる。しかし、サービスレベルの保証は行われない。したがって、ユーザが保証時間帯以外の時間帯にデータ処理システム30を利用していたとしても、保証時間帯内に他の顧客の応答保証が必要となった等の理由で、利用が制限される(例えば新たな処理要求が受け付けられなくなる)ことがある。   It should be noted that the user within the customer can use the data processing system 30 (that is, send a processing request to the data processing system 30 to execute the data processing) even in a time zone other than the guarantee time zone of a certain customer. However, there is no guarantee of service level. Therefore, even if the user uses the data processing system 30 in a time zone other than the guarantee time zone, the use is limited because the response guarantee of another customer is required within the guarantee time zone. (For example, a new processing request cannot be accepted).

図2に示したサービスレベルデータが示す保証内容を、図3に模式的に示す。保証時間帯の設定がない場合、顧客A、B、Cの最大同時セッション数を満たすには、データ処理システム30は230セッション(230の処理要求)を同時に実行する処理能力を有する。これに対し、図2のように各顧客の保証時間帯が設定されている場合、データ処理システム30は130セッションを同時に実行する処理能力を持てばよい。すなわち、データ処理システム30は、同一時刻における各顧客の最大同時セッション数の合計値の、全時間帯の中での最大値を同時に処理できる能力を持っていればよい。   The guarantee contents indicated by the service level data shown in FIG. 2 are schematically shown in FIG. In the case where there is no setting of the guaranteed time zone, the data processing system 30 has a processing capacity to simultaneously execute 230 sessions (230 processing requests) in order to satisfy the maximum number of simultaneous sessions of the customers A, B, and C. On the other hand, when the guarantee time zone of each customer is set as shown in FIG. 2, the data processing system 30 only needs to have a processing capability to simultaneously execute 130 sessions. In other words, the data processing system 30 only needs to have the ability to simultaneously process the maximum value of the total number of simultaneous sessions of each customer at the same time in all time zones.

サービスレベル登録部20は、サービスレベルデータ保持部17に対してサービスレベルデータの登録を行うためのUIである。サービスレベル登録部20は、例えばウェブページの形で処理要求実行管理装置10から顧客内のユーザ(例えば顧客内のシステム管理者)に提供してもよい。この場合、そのユーザがそのウェブページ内の入力欄に保証時間帯、最大同時セッション数、目標応答時間等を入力し、入力結果を送信することで、サービスレベルデータ保持部17内に当該顧客のサービスレベルの情報が登録される。同様にして、顧客の既登録のサービスレベルデータを更新できるようにしてもよい。また、サービスレベル登録部20をASPシステム内に設け、ASPシステムの職員が顧客からの要請に応じてサービスレベルデータ保持部17へのデータの登録又は更新を行ってもよい。   The service level registration unit 20 is a UI for registering service level data in the service level data holding unit 17. The service level registration unit 20 may be provided to a user in the customer (for example, a system administrator in the customer) from the processing request execution management apparatus 10 in the form of a web page, for example. In this case, the user inputs the guaranteed time zone, the maximum number of simultaneous sessions, the target response time, etc. in the input fields in the web page, and transmits the input result, so that the service level data holding unit 17 stores the customer's Service level information is registered. Similarly, the customer's registered service level data may be updated. Further, the service level registration unit 20 may be provided in the ASP system, and the staff of the ASP system may register or update data in the service level data holding unit 17 in response to a request from a customer.

応答時間記録部19は、各顧客の各ユーザが発した処理要求に対するデータ処理システム30の応答時間を計測し、顧客ごとに処理要求の応答時間の実測値を記録する。   The response time recording unit 19 measures the response time of the data processing system 30 with respect to the processing request issued by each user of each customer, and records the measured value of the response time of the processing request for each customer.

応答時間記録部19が管理する応答時間の実測値データのデータ構造の一例を図4に示す。図示のように、応答時間記録部19は、顧客ごとに、現在実行しているその顧客の処理要求の数(「実行中セッション数」)と、現時点でのその顧客の処理要求についての応答時間の実測値と、をメモリに記憶する。   An example of the data structure of the actually measured response time data managed by the response time recording unit 19 is shown in FIG. As shown in the figure, for each customer, the response time recording unit 19 displays the number of processing requests currently being executed by the customer (“the number of sessions being executed”) and the response time for the current processing request of the customer. Are measured and stored in the memory.

例えば、応答時間記録部19は、処理要求受付部11がある顧客の所属ユーザからの処理要求を受け付けると、その処理要求にID(識別情報)を付与し、その処理要求IDに対応づけて、その処理要求を発したユーザのIDと、その処理要求の受付時刻を記録する。処理要求スケジュール部15が処理要求保持部13から処理要求を取り出していずれかのデータ処理部32に割り当てると、応答時間記録部19はその処理要求の発行元ユーザの属する顧客の「実行中セッション数」を1増加させる。処理要求を発したユーザがどの顧客に属するかどうかは、顧客IDとユーザIDの対応関係のデータベースを参照する等の処理により判別すればよい。また、データ処理部32から処理要求の実行が完了した旨の通知(その処理要求のIDを含む)を受けると、その処理要求を発したユーザの属する顧客の実行中セッション数を1つ減少させる。また、このとき、その処理要求の受付時刻から完了時刻までの時間、すなわちその処理要求についての応答時間、を計算し、その応答時間により当該顧客の応答時間の実測値を更新する。「応答時間実測値」として、単一の処理要求についての応答時間を用いる場合には、そのとき計算した応答時間を当該顧客の「応答時間実測値」の値に上書きすればよい。また、応答時間の平均を用いる場合は、例えば過去ある一定の期間の間に実行が完了した処理要求の応答時間を顧客ごとに分類して記憶しておき、新たにある顧客内のユーザからの処理要求の応答時間が計算された場合、その新たに計算された応答時間を考慮して応答時間の平均を更新すればよい。このように、応答時間記録部19は、処理要求保持部13内の処理要求をデータ処理システム30に渡す都度、その処理要求の発行元の顧客の「実行中セッション数」をインクリメントし、データ処理部32で処理要求の実行が完了する都度、その処理要求の発行元の顧客の「実行中セッション数」をデクリメントし、「応答時間実測値」を更新する。このような処理により、各顧客の実行中セッション数及び応答時間実測値が常に最新状況を表すように管理される。   For example, when the processing request receiving unit 11 receives a processing request from a user belonging to a customer, the response time recording unit 19 assigns an ID (identification information) to the processing request and associates the processing request with the processing request ID. The ID of the user who issued the processing request and the reception time of the processing request are recorded. When the processing request scheduling unit 15 retrieves a processing request from the processing request holding unit 13 and assigns it to one of the data processing units 32, the response time recording unit 19 displays the “number of running sessions” of the customer to which the processing request issuing user belongs Is increased by one. What customer the user who issued the processing request belongs to may be determined by referring to a database of correspondence relationship between the customer ID and the user ID. In addition, upon receiving a notification that the execution of the processing request has been completed (including the ID of the processing request) from the data processing unit 32, the number of running sessions of the customer to which the user who issued the processing request belongs is decreased by one. . At this time, the time from the reception time of the processing request to the completion time, that is, the response time for the processing request is calculated, and the measured value of the response time of the customer is updated with the response time. When the response time for a single processing request is used as the “response time actual value”, the calculated response time may be overwritten on the value of the “response time actual value” of the customer. Also, when using the average response time, for example, the response time of processing requests that have been executed during a certain period in the past is classified and stored for each customer, When the response time of the processing request is calculated, the average response time may be updated in consideration of the newly calculated response time. In this way, each time the processing request in the processing request holding unit 13 is transferred to the data processing system 30, the response time recording unit 19 increments the “number of running sessions” of the customer who issued the processing request to perform data processing. Each time the processing request is executed in the unit 32, the “number of sessions in execution” of the customer who issued the processing request is decremented, and the “measured response time value” is updated. By such processing, the number of sessions being executed and the actual response time of each customer are managed so as to always represent the latest situation.

処理要求スケジュール部15は、応答時間記録部19が管理する各顧客の実行中セッション数及び応答時間実測値の情報と、サービスレベルデータ保持部17に保持された各顧客のサービスレベルデータとを参照して、処理要求保持部13からの処理要求の取り出しの制御を行う。   The processing request schedule unit 15 refers to the information on the number of sessions being executed and the measured response time of each customer managed by the response time recording unit 19 and the service level data of each customer held in the service level data holding unit 17. Then, control of fetching the processing request from the processing request holding unit 13 is performed.

この取り出し制御には、前述のように少なくとも通常モードと保証モードの2つの動作モードがある。処理要求スケジュール部15は、データ処理システム30が高負荷状態になった場合に、通常モードから保証モードへの切換を行う。一つの例では、保証時間帯内にある顧客のうちの少なくとも1つの目標応答時間が達成されていない(又は近いうちに達成できなくなる可能性が高いと判定される)場合に、データ処理システム30が高負荷状態となったと判定する。ある顧客の目標応答時間が達成されているか否かは、その顧客の目標応答時間と応答時間実測値とを比較することで判定すればよい。応答時間実測値が目標応答時間よりも長ければ目標応答時間が達成されておらず、応答時間実測値が目標応答時間以下であれば目標応答時間が達成できているということである。また、応答時間実測値が、目標応答時間より少し短く設定した閾値時間よりも長くなった場合に、近いうちに目標応答時間が達成できなくなる可能性が高いと判定し、高負荷状態と判定してもよい。また、応答時間実測値の履歴を記録しておき、その履歴から、このままでは近いうちに応答時間実測値が目標応答時間を超えると判定される場合に、目標応答時間が達成できなくなる可能性が高いと判定し、高負荷状態と判定してもよい。なお、以下では、記載を簡潔にするために、目標応答時間が近いうちに達成できなくなる可能性が高い状態も、「目標応答時間が達成されていない」という記載で包括して表現することとする。同様に、目標応答時間が近いうちに達成できなくなる可能性が低い状態を、「目標応答時間が達成されている」という記載で包括して表現することとする。   As described above, this take-out control has at least two operation modes of the normal mode and the guarantee mode. The processing request schedule unit 15 switches from the normal mode to the guarantee mode when the data processing system 30 is in a high load state. In one example, the data processing system 30 when the target response time of at least one of the customers within the warranty window is not achieved (or is determined to be likely not to be achieved in the near future). Is determined to be in a high load state. Whether or not the target response time of a certain customer has been achieved may be determined by comparing the target response time of the customer with the measured response time. If the measured response time is longer than the target response time, the target response time is not achieved, and if the measured response time is less than or equal to the target response time, the target response time is achieved. If the measured response time is longer than the threshold time set slightly shorter than the target response time, it is determined that there is a high possibility that the target response time will not be achieved soon, and it is determined that the load is high. May be. In addition, if a history of actual response time is recorded and it is determined from the history that the actual response time exceeds the target response time, the target response time may not be achieved. It may be determined that the load is high and the load may be determined to be high. In the following, in order to simplify the description, the state that the target response time is likely not to be achieved in the near future is also comprehensively expressed as “the target response time is not achieved”. To do. Similarly, a state where there is a low possibility that the target response time cannot be achieved in the near future will be comprehensively expressed by a description “target response time is achieved”.

高負荷状態と判定した場合、処理要求スケジュール部15は、サービスレベルデータ保持部17に保持された各顧客の保証時間帯や目標応答時間等の情報と、応答時間記録部19が保持している各顧客の応答時間実測値等の情報とを参照して、高負荷状態か否かを判定する。高負荷状態と判定し、保証モードに移行した場合、処理要求スケジュール部15は、保証時間帯内の顧客(以下、「保証時間内顧客」と呼ぶ)の処理要求を保証時間帯外の顧客(以下、「保証時間外顧客」と呼ぶ)の処理要求よりも優先的に処理要求保持部13から取り出し、データ処理システム30に処理させる。また、保証モードでは、同じ保証時間内顧客のうちでも、目標応答時間が達成されていない顧客の処理要求を、目標応答時間が達成されている顧客の処理要求よりも優先して処理要求保持部13から取り出すようにしてもよい。また、保証モードでは、同じ保証時間内顧客のうちでも、実行中セッション数(図4参照)が最大同時セッション数よりも少ない顧客の処理要求を、そうでない顧客の処理要求よりも優先して処理要求保持部13から取り出すようにしてもよい。   When it is determined that the load is high, the processing request scheduling unit 15 holds information such as the guaranteed time zone and target response time of each customer held in the service level data holding unit 17 and the response time recording unit 19. It is determined whether or not there is a high load state with reference to information such as measured response time of each customer. When it is determined that the load is high and the process is shifted to the guarantee mode, the process request schedule unit 15 sends a process request of a customer within the guarantee time zone (hereinafter referred to as “customer within the guarantee time period”) Hereinafter, the processing request is taken out from the processing request holding unit 13 in preference to the processing request of “customer outside warranty time” and is processed by the data processing system 30. In the guarantee mode, the processing request holding unit gives priority to the processing request of the customer whose target response time is not achieved among the customers within the same warranty time, over the processing request of the customer who has achieved the target response time. You may make it take out from 13. Moreover, in the guarantee mode, among the customers within the same guarantee time, the processing request of the customer whose number of running sessions (see FIG. 4) is less than the maximum number of simultaneous sessions is given priority over the processing request of the other customer. You may make it take out from the request | requirement holding | maintenance part 13. FIG.

保証モードにおける処理要求の実行の優先関係をまとめると以下のようになる。   The priority relationship of processing request execution in the guarantee mode is summarized as follows.

(1)保証モードのときに最も優先するのは、目標応答時間が達成されておらず、且つ実行中セッション数が最大同時セッション数に達していない保証時間内顧客である。このような顧客の処理要求を優先して処理することで、目標応答時間が達成されやすくするのである。   (1) The highest priority in the guarantee mode is a customer within the guarantee time when the target response time is not achieved and the number of running sessions does not reach the maximum number of simultaneous sessions. By preferentially processing such customer processing requests, the target response time is easily achieved.

(2)次に優先するのは、実行中セッション数は最大同時セッション数に達しているが目標応答時間は達成できていない保証時間内顧客である。最大同時セッション数以上の処理要求を現在処理中であるからといって、このような顧客の処理要求を待機させたのでは、応答時間実測値がますます延びることになり、目標応答時間の達成が更に難しくなるからである。   (2) The next priority is the customer within the guaranteed time when the number of running sessions has reached the maximum number of simultaneous sessions but the target response time has not been achieved. Even if processing requests exceeding the maximum number of simultaneous sessions are currently being processed, waiting for such customer processing requests will increase the measured response time and achieve the target response time. This is because it becomes more difficult.

(3)その次に優先するのは、目標応答時間は達成できているが実行中セッション数は最大同時セッション数に達していない保証時間内顧客である。このような顧客は、目標応答時間が達成されているので、処理要求の実行を多少待たせても上記(1)及び(2)のケースよりは問題が少ない。したがって、上記(1)及び(2)のケースよりは優先度は下がる。しかし、最大同時セッション数までの同時実行は保証しているので、応答時間実測値が目標応答時間を超過してしまうことのないよう、ある程度の優先度で処理要求を実行していく必要はある。   (3) The next priority is the customer within the guaranteed time period in which the target response time has been achieved but the number of running sessions has not reached the maximum number of simultaneous sessions. Since the target response time has been achieved for such a customer, there are fewer problems than the cases (1) and (2) above even if the execution of the processing request is delayed. Therefore, the priority is lower than the cases (1) and (2). However, since simultaneous execution up to the maximum number of simultaneous sessions is guaranteed, it is necessary to execute processing requests with a certain degree of priority so that the measured response time does not exceed the target response time. .

(4)その次に優先するのは、実行中セッション数が最大同時セッション数に達しており、且つ目標応答時間が達成されている保証時間内顧客である。このような顧客は、目標応答時間が達成されているので、処理要求の実行を多少待たせても上記(1)及び(2)のケースよりは問題が少ない。また、最大同時セッション数以上の処理要求を現に処理しているので、更に同時実行数を増やす必要もない。したがって、このケースは、上記(3)のケースよりも優先度が下がる。   (4) The next priority is the customer within the guaranteed time in which the number of running sessions has reached the maximum number of simultaneous sessions and the target response time has been achieved. Since the target response time has been achieved for such a customer, there are fewer problems than the cases (1) and (2) above even if the execution of the processing request is delayed. In addition, since processing requests exceeding the maximum number of simultaneous sessions are currently being processed, there is no need to further increase the number of simultaneous executions. Therefore, this case has a lower priority than the case (3).

(5)優先度が最も低いのは、保証時間外顧客である。保証時間外顧客は、応答保証の時間帯から外れているのだから応答保証の必要がない。そこで、保証モードでは、保証時間外顧客の処理要求を処理要求保持部13から新たに取り出す(そしてデータ処理システム30に実行させる)ことはしない。これにより、データ処理システム30の持つ限られた処理能力が、より優先度の高い顧客に振り向けられるようにする。   (5) The customer with the lowest priority is a customer outside the guaranteed time. Since the customer outside the guarantee time is out of the time zone for guaranteeing the response, there is no need to guarantee the response. Therefore, in the guarantee mode, the processing request of the customer outside the guarantee time is not newly taken out from the processing request holding unit 13 (and is executed by the data processing system 30). This allows the limited processing capability of the data processing system 30 to be directed to customers with higher priorities.

以上、ケース(1)〜(5)の優先順位を例示したが、システムに実装する場合にこれら5段階のすべてを区別する必要は必ずしもない。例えば、ケース(1)〜(4)を同じ扱いとするなど(後述する図6の例)、優先順位が隣り合う複数のケースの取扱を同じレベルとしてもよい。   As mentioned above, although the priority of cases (1) to (5) has been illustrated, it is not always necessary to distinguish all of these five stages when implemented in a system. For example, cases (1) to (4) may be treated the same (example in FIG. 6 to be described later), and handling of a plurality of cases having adjacent priorities may be set to the same level.

また、優先順位(取扱のレベル)が同じ顧客が複数存在する場合には、処理要求保持部13からの処理要求の取り出し数のそれら顧客間での比率が、それら顧客の最大同時セッション数の比率と等しくなるよう、処理要求保持部13からの処理要求の取り出しを制御してもよい。   Further, when there are a plurality of customers having the same priority (handling level), the ratio of the number of processing requests taken out from the processing request holding unit 13 is the ratio of the maximum number of simultaneous sessions of these customers. The processing request extraction from the processing request holding unit 13 may be controlled so as to be equal to.

以上、処理要求スケジュール部15の制御内容について概説した。次に、その制御の具体例を、図5を参照して説明する。   The control content of the processing request schedule unit 15 has been outlined above. Next, a specific example of the control will be described with reference to FIG.

まず、システムの起動時点では、処理要求スケジュール部15の動作モードは「通常モード」に設定される。処理要求スケジュール部15は、自身の動作モードをデータ処理システム30の最新の状態に合わせて動的に切り換えるために、定期的に図5の処理を繰り返す。図5の手順では、処理要求スケジュール部15は、現在時刻とサービスレベルデータ保持部17に記憶された各顧客の保証時間帯とを比較し、保証時間内顧客(自身の保証時間帯内に現在時刻が含まれる顧客)を特定する(S12)。S12で、保証時間内顧客が1つもなければ、動作モードを通常モードとし(S14)、S12に戻る。   First, at the time of starting the system, the operation mode of the processing request scheduling unit 15 is set to “normal mode”. The process request schedule unit 15 periodically repeats the process of FIG. 5 in order to dynamically switch its operation mode in accordance with the latest state of the data processing system 30. In the procedure of FIG. 5, the process request schedule unit 15 compares the current time with the guarantee time zone of each customer stored in the service level data holding unit 17, and the customer within the guarantee time (the current time within its own guarantee time zone). The customer including the time is specified (S12). If there is no customer within the guarantee time in S12, the operation mode is set to the normal mode (S14), and the process returns to S12.

また、S12で保証時間内顧客が1つでも見つかれば、応答時間記録部19から各保証時間内顧客の応答時間実測値を取得し(S16)、取得した応答時間実測値をサービスレベルデータ保持部17内の当該顧客の目標応答時間と比較することで、目標応答時間が達成されていない保証時間内顧客が存在するかどうかを判定する(S18)。目標応答時間が達成されていない保証時間内顧客が存在しない場合、この例ではデータ処理システム30は高負荷状態ではないと判定し、動作モードを通常モードとし(S14)、S12に戻る。S18で目標応答時間が達成されていない保証時間内顧客が存在すると判定した場合、処理要求スケジュール部15は、動作モードを保証モードとし(S20)、S12に戻る。   If at least one customer within the guaranteed time is found in S12, the response time measured value of each customer within the guaranteed time is acquired from the response time recording unit 19 (S16), and the acquired response time measured value is stored in the service level data holding unit. By comparing with the target response time of the customer in 17, it is determined whether or not there is a customer within the guaranteed time for which the target response time has not been achieved (S 18). If there is no customer within the guaranteed time period for which the target response time has not been achieved, in this example, the data processing system 30 determines that it is not in a high load state, sets the operation mode to the normal mode (S14), and returns to S12. When it is determined in S18 that there is a customer within the guaranteed time for which the target response time has not been achieved, the process request scheduling unit 15 sets the operation mode to the guaranteed mode (S20), and returns to S12.

データ処理システム30内の各データ処理部32は、新たな処理要求の処理が可能になる都度、処理要求スケジュール部15に対して、新たな処理要求を割り当てるよう要求する。処理要求スケジュール部15は、データ処理部32から新たな処理要求を要求されると、処理要求スケジュール部15から処理要求を取り出し、要求元のデータ処理部32に供給する。   Each data processing unit 32 in the data processing system 30 requests the processing request scheduling unit 15 to allocate a new processing request every time processing of a new processing request becomes possible. When a new processing request is requested from the data processing unit 32, the processing request scheduling unit 15 extracts the processing request from the processing request scheduling unit 15 and supplies the processing request to the requesting data processing unit 32.

ここで、動作モードが通常モードである場合は、処理要求スケジュール部15は、処理要求保持部13(キュー)内の順序に従い、その順序の先頭の処理要求を取り出して要求元のデータ処理部32に供給する。   Here, when the operation mode is the normal mode, the processing request scheduling unit 15 takes out the first processing request in the order according to the order in the processing request holding unit 13 (queue), and requests the data processing unit 32 of the request source. To supply.

一方、動作モードが保証モードである場合の処理要求スケジュール部15の処理手順の一例を図6に示す。   On the other hand, FIG. 6 shows an example of the processing procedure of the processing request scheduling unit 15 when the operation mode is the guarantee mode.

この手順では、処理要求スケジュール部15は、データ処理システム30内の各データ処理部32からの割当要求を待ち(S22)、割当要求が到来すると、制御変数n(nは1以上の整数)を1に初期化する(S24)。そして、キュー(処理要求保持部13)の先頭からn番目の処理要求の発行元の顧客を特定し、サービスレベルデータ保持部17を参照してその顧客が保証時間内顧客であるかどうかを判定する(S26)。n番目の処理要求の発行元の顧客が保証時間内顧客でなければ、その処理要求は処理要求保持部13から取り出さずに、nを1増加させて(S28)S26に戻り、キュー内の次の処理要求を検査する。   In this procedure, the processing request scheduling unit 15 waits for an allocation request from each data processing unit 32 in the data processing system 30 (S22), and when the allocation request arrives, sets the control variable n (n is an integer of 1 or more). It is initialized to 1 (S24). Then, the customer who issued the nth processing request from the head of the queue (processing request holding unit 13) is identified, and the service level data holding unit 17 is referenced to determine whether the customer is a customer within guaranteed time (S26). If the customer who issued the n-th processing request is not a customer within the guaranteed time, the processing request is not taken out from the processing request holding unit 13, and n is incremented by 1 (S28) and the process returns to S26, and the next in the queue Check the processing request.

S26で、キュー内のn番目の処理要求が保証時間内顧客のものであると判定した場合、処理要求スケジュール部15は、そのn番目の処理要求を処理要求保持部13から取り出し、割当要求発行元のデータ処理部32に割り当て(S30)、S22に戻る。   If it is determined in S26 that the nth processing request in the queue is for the customer within the guaranteed time, the processing request scheduling unit 15 extracts the nth processing request from the processing request holding unit 13 and issues an allocation request. The original data processing unit 32 is assigned (S30), and the process returns to S22.

図6の処理手順では、キューの先頭からみて最初に見つかる保証時間内顧客(上述したケース(1)〜(4)のいずれかに該当)の処理要求が処理要求保持部13から取り出され、処理されることとなる。逆に、保証時間外顧客(上述したケース(5)に該当)の処理要求は、処理要求保持部13内に残ったままとなる。このような処理によれば、保証モードの間は、保証時間外顧客の新たな処理要求は実行されないので、現に実行中の保証時間外顧客の各処理要求の処理が時間の経過に伴って完了していくにつれて、データ処理システム30の余力が増大していく。そして、その増大した余力が保証時間内顧客の新たな処理要求に振り向けられることになる。これにより、保証時間内顧客の処理要求の実行が加速され、目標応答時間が達成される方向に推移していく。   In the processing procedure of FIG. 6, the processing request of the customer within the guaranteed time that is found first when viewed from the head of the queue (corresponding to any of the cases (1) to (4) described above) is taken out from the processing request holding unit 13 and processed. Will be. On the contrary, the processing request of the customer outside the guarantee time (corresponding to the case (5) described above) remains in the processing request holding unit 13. According to such processing, during the guarantee mode, new processing requests for customers outside the warranty period are not executed, so processing of each processing request for the customer currently outside the warranty period is completed as time passes. As the process proceeds, the remaining capacity of the data processing system 30 increases. Then, the increased surplus capacity will be directed to new processing requests of customers within the guaranteed time. As a result, the execution of the processing request of the customer within the guarantee time is accelerated, and the target response time is achieved.

図6の処理手順では、保証時間内顧客が複数存在する場合、高負荷状態では、それら各保証時間内顧客の処理要求が単純にキュー内の順序に従って処理されていく。これに対し、別の例として、データ処理システム30が高負荷状態にある期間において保証時間内顧客が複数存在する場合、キューからそれら各保証時間内顧客の処理要求が取り出される割合が、それら各保証時間内顧客に割り当てられた最大同時セッション数同士の比率に応じたものとなるように制御してもよい。例えば、キューから取り出す数の比率が最大同時セッション数同士の比率と等しくなるように、各保証時間内顧客の処理要求のキューからの取り出しの間引きを行ってもよい(例えば、最大同時セッション数同士の比率よりも実際の取り出し数の比率が高い保証時間内顧客の処理要求はキューからの取り出しの間引き率を高くするなど)。   In the processing procedure of FIG. 6, when there are a plurality of customers within the guarantee time, in the high load state, the processing requests of the customers within the guarantee time are simply processed according to the order in the queue. On the other hand, as another example, when there are a plurality of customers within the guaranteed time period during the period when the data processing system 30 is in a high load state, the rate at which the processing requests of each customer within the guaranteed time period are taken from the queue You may control so that it may become a thing according to the ratio of the maximum number of simultaneous sessions allocated to the customer within guarantee time. For example, thinning out of processing requests from queues of customers within each guaranteed time period may be performed so that the ratio of the number to be taken out from the queue is equal to the ratio between the maximum number of simultaneous sessions (for example, For example, the processing request of the customer within the guaranteed time period in which the ratio of the actual number of fetches is higher than the ratio of the number of fetches is set to a higher decimation rate from the queue).

次に、図7を参照して、保証モードにおける処理要求スケジュール部15の別の処理手順の例を説明する。   Next, an example of another processing procedure of the processing request schedule unit 15 in the guarantee mode will be described with reference to FIG.

この手順では、処理要求スケジュール部15は、データ処理システム30内の各データ処理部32からの割当要求を待ち(S22)、割当要求が到来すると、制御変数n(nは1以上の整数)を1に初期化する(S24)。そして、キュー(処理要求保持部13)の先頭からn番目の処理要求の発行元の顧客を特定し、サービスレベルデータ保持部17を参照してその顧客が保証時間内顧客であるかどうかを判定する(S26)。n番目の処理要求の発行元の顧客が保証時間内顧客でなければ、その処理要求は処理要求保持部13から取り出さずに、nを1増加させて(S28)S26に戻り、キュー内の次の処理要求を検査する。   In this procedure, the processing request scheduling unit 15 waits for an allocation request from each data processing unit 32 in the data processing system 30 (S22), and when the allocation request arrives, sets the control variable n (n is an integer of 1 or more). It is initialized to 1 (S24). Then, the customer who issued the nth processing request from the head of the queue (processing request holding unit 13) is identified, and the service level data holding unit 17 is referenced to determine whether the customer is a customer within guaranteed time (S26). If the customer who issued the n-th processing request is not a customer within the guaranteed time, the processing request is not taken out from the processing request holding unit 13, and n is incremented by 1 (S28) and the process returns to S26, and the next in the queue Check the processing request.

S26で、キュー内のn番目の処理要求が保証時間内顧客のものであると判定した場合、処理要求スケジュール部15は、応答時間記録部19とサービスレベルデータ保持部17を参照して、当該保証時間内顧客の目標応答時間が達成されているかどうかを判定する(S32)。達成されていない場合は、そのn番目の処理要求を処理要求保持部13から取り出し、割当要求発行元のデータ処理部32に割り当て(S30)、S22に戻る。   If it is determined in S26 that the n-th processing request in the queue belongs to the customer within the guaranteed time, the processing request scheduling unit 15 refers to the response time recording unit 19 and the service level data holding unit 17, and It is determined whether or not the target response time of the customer within the guarantee time has been achieved (S32). If not achieved, the n-th processing request is taken out from the processing request holding unit 13 and assigned to the data processing unit 32 of the allocation request issuing source (S30), and the process returns to S22.

S32で、その保証時間内顧客の目標応答時間が達成されていると判定した場合、処理要求スケジュール部15は、更にその保証時間内顧客の実行中セッション数が最大同時セッション数に達しているかを判定する(S34)。達している場合は、そのn番目の処理要求は処理要求保持部13から取り出さず、nを1増加させて(S28)、S26に戻る。達していない場合は、そのn番目の処理要求を処理要求保持部13から取り出し、割当要求発行元のデータ処理部32に割り当て(S30)、S22に戻る。   If it is determined in S32 that the target response time of the customer within the guaranteed time has been achieved, the processing request scheduling unit 15 further determines whether the number of running sessions of the customer within the guaranteed time has reached the maximum number of simultaneous sessions. Determine (S34). If it has reached, the n-th processing request is not taken out from the processing request holding unit 13, n is incremented by 1 (S28), and the process returns to S26. If not, the n-th processing request is taken out from the processing request holding unit 13 and assigned to the data processing unit 32 of the allocation request issuing source (S30), and the process returns to S22.

図7の処理手順では、キューの先頭からみて最初に見つかる、上述したケース(1)〜(3)に該当する顧客の処理要求が処理要求保持部13から取り出され、処理されることとなる。逆に、上述したケース(4)又は(5)に該当する顧客の処理要求は、処理要求保持部13内に残ったままとなる。すなわち、この手順では、ケース(4)又は(5)に該当する顧客の処理要求を待たせることでデータ処理システム30の負荷を低減し、この負荷低減により生じた余力でケース(1)〜(3)に該当する顧客の処理要求が早く実行されるようにするのである。   In the processing procedure of FIG. 7, a customer processing request corresponding to the above-described cases (1) to (3), which is found first when viewed from the head of the queue, is taken out from the processing request holding unit 13 and processed. On the contrary, the customer's processing request corresponding to the above-described case (4) or (5) remains in the processing request holding unit 13. That is, in this procedure, the load on the data processing system 30 is reduced by waiting for the customer's processing request corresponding to the case (4) or (5), and the cases (1) to ( The processing request of the customer corresponding to 3) is executed quickly.

以上に説明した図6及び図7の例では、処理要求保持部13内の処理要求を待たせるかどうかの区切りを、図6の手順ではケース(5)と(4)の間に置き、図7の手順ではケース(4)と(3)の間に置いた。しかし、これらはあくまで一例に過ぎず、例えば別の例としてその区切りをケース(3)と(2)の間に設定してもよい。   In the example of FIGS. 6 and 7 described above, a delimiter as to whether or not to wait for a processing request in the processing request holding unit 13 is placed between cases (5) and (4) in the procedure of FIG. The procedure of 7 was placed between cases (4) and (3). However, these are merely examples. For example, as another example, the separation may be set between cases (3) and (2).

以上の例では、保証モード時の制御は、優先されない顧客の処理要求は処理要求保持部13内で待たせ、優先される顧客の処理要求は先入れ先出し順に実行するという2段階の段階分けであったが、これは一例に過ぎない。別の例として、例えば、優先順位が高いほど、相対的に高い頻度で処理要求が処理要求保持部13内から取り出されるように制御してもよい。この例では、例えば、ケース(5)(保証時間外顧客)の処理要求はキュー(処理要求保持部13)内で完全に待たせ、ケース(1)〜(4)の顧客は、優先順位が高いほど処理要求がキューから取り出されやすくする。例えば、キューを先頭から調べていく過程で、ケース(1)の顧客の処理要求は見つけるたびにすべてキューから取り出し、ケース(2)の顧客の処理要求は2回見つけるごとに1回の割合でキューから取り出す等というように、優先順位が下がるほどキューから取り出す割合を下げていくのである。   In the above example, the control in the guarantee mode is a two-stage process in which non-prioritized customer processing requests are waited in the processing request holding unit 13 and the prioritized customer processing requests are executed in first-in first-out order. But this is just an example. As another example, for example, control may be performed so that processing requests are fetched from the processing request holding unit 13 at a relatively high frequency as the priority is higher. In this example, for example, the processing request for case (5) (customer out of warranty time) is completely waited in the queue (processing request holding unit 13), and the customers of cases (1) to (4) have a priority order. The higher the value, the easier the processing request is taken from the queue. For example, in the process of examining the queue from the top, every time a customer's processing request in case (1) is found, it is taken out from the queue, and every time a customer's processing request in case (2) is found twice, As the priority decreases, the rate of taking out from the queue is lowered, such as taking out from the queue.

また、同じ優先順位の保証時間内顧客が複数存在している場合には、キューからそれら同順位の各保証時間内顧客の処理要求が取り出される割合が、それら各保証時間内顧客に割り当てられた最大同時セッション数同士の比率に応じたものとなるように制御してもよい。   In addition, when there are multiple customers with warranty time of the same priority, the ratio of processing requests for each customer within the warranty time of the same rank from the queue is assigned to each customer within the warranty time. You may control so that it may become a thing according to the ratio of the maximum number of simultaneous sessions.

また、以上の例では、保証時間外顧客のように優先されない顧客の現に実行中の処理要求は実行が完了するまで待ったが、これも一例に過ぎない。この代わりに、次のような制御を行ってもよい。   Further, in the above example, a processing request that is currently being executed by a customer who is not prioritized, such as a customer outside the guarantee time, waits until execution is completed, but this is only an example. Instead of this, the following control may be performed.

すなわち、この例では、処理要求を、再実行可能なものと再実行不可能なものとに分類しておき、保証モードでは、優先されない顧客の現にデータ処理システム30内で実行中の処理要求のうち、再実行可能な処理要求については、その実行を強制的に取りやめる(途中までの処理結果を破棄)。また、別の例として、再実行可能な処理要求は強制的に中断(途中までの処理結果を保持してサスペンド)してもよい。再実行不可能な処理要求については、そのような強制的な取りやめ又は中断は行わず、実行が完了するのを待つ。実行を取りやめた再実行可能な処理要求は、例えばキューの先頭に戻すなどにより、動作モードが通常モードに戻ったときにその取りやめた処理要求から実行されるようにしてもよい。また中断した処理要求は、動作モードが通常モードに戻り次第、途中の処理結果を用いて再開する。なお、再実行可能な処理要求としては、例えば、データベースの内容の閲覧などのように、実行を取りやめ又は中断して後で再開しても、最初の実行時と再開後の実行時で実行結果が変わらない種類の処理要求がある。再実行不可能な処理要求には、例えば、データベースへの書き込み処理の要求などがある。   In other words, in this example, processing requests are classified into those that can be re-executed and those that cannot be re-executed, and in the guarantee mode, the processing requests that are currently being executed in the data processing system 30 are not preferred. Of these, re-executable processing requests are forcibly canceled (discarding the processing results up to the middle). As another example, a re-executable processing request may be forcibly interrupted (suspended by holding the processing result up to the middle). Processing requests that cannot be re-executed are not forcibly canceled or interrupted, but are waited for completion. The re-executable processing request whose execution has been canceled may be executed from the canceled processing request when the operation mode returns to the normal mode, for example, by returning to the head of the queue. The interrupted processing request is resumed using the processing result in the middle as soon as the operation mode returns to the normal mode. Note that the re-executable processing request includes, for example, the execution result at the first execution time and the execution time after the restart even if execution is canceled or interrupted and resumed later, such as browsing the contents of the database. There is a type of processing request that does not change. Non-re-executable processing requests include, for example, a request for database write processing.

この制御のためには、処理要求スケジュール部15は、各処理要求が再実行可能か否かを示す分類情報を保持していればよい。   For this control, the process request schedule unit 15 only needs to hold classification information indicating whether each process request can be reexecuted.

このように優先されない顧客の再実行可能な処理要求の実行を取りやめ又は中断することで、そのような取りやめ又は中断をしない場合よりも急速にデータ処理システム30の余力を増大させ、その余力が優先される顧客に振り向けられることとなる。   By canceling or interrupting the execution of a re-executable processing request of a customer that is not prioritized in this way, the remaining capacity of the data processing system 30 is increased more rapidly than when such cancellation or interruption is not performed, and the surplus power has priority. Will be directed to customers.

また、以上の例では、データ処理システム30が高負荷状態であるか否かを、各顧客の目標応答時間の達成状況に基づいて判定したが、これは一例に過ぎない。この他に、例えば、すべての顧客の実行中セッション数の総和が予め定められた閾値を超えた場合に、高負荷状態と判定してもよい。   In the above example, whether or not the data processing system 30 is in a high load state is determined based on the achievement status of each customer's target response time, but this is only an example. In addition to this, for example, when the sum of the number of running sessions of all customers exceeds a predetermined threshold, it may be determined that the load is high.

また、各顧客の目標応答時間の達成状況と、全顧客の実行中セッション数の総和との組合せにより、高負荷状態か否かを判定してもよい。この場合、例えば、少なくとも1つの顧客の目標応答時間が達成されていない場合は高負荷状態と判定すると共に、すべての顧客の目標応答時間が達成されている場合でも、全顧客の実行中セッション数の総和が閾値を超えていれば高負荷状態と判定する、等の判定条件を用いればよい。   Further, it may be determined whether or not a high load state is set based on a combination of the achievement status of the target response time of each customer and the total number of running sessions of all customers. In this case, for example, when the target response time of at least one customer is not achieved, it is determined that the load is high, and even if the target response time of all customers is achieved, the number of sessions being executed by all customers A determination condition such as determining a high load state may be used if the sum of the values exceeds a threshold value.

また、各顧客の目標応答時間の達成状況や全顧客の実行中セッション数ではなく、各データ処理部32のCPU(中央演算装置)の使用率等といった、ハードウエアの負荷状況の計測値に基づき、データ処理システム30が高負荷状態であるか否かを判定してもよい。   Moreover, it is based on the measured value of the load condition of the hardware such as the usage rate of the CPU (central processing unit) of each data processing unit 32, not the achievement status of each customer's target response time and the number of running sessions of all customers. It may be determined whether or not the data processing system 30 is in a high load state.

さて、処理要求の中には、単純な画面遷移の要求等のように、極めて短時間で処理が完了する(すなわちデータ処理システム30にとっての負荷が極めて低い)ものが存在する。またその一方で、大量のデータ処理や大量のデータ更新などを伴う処理のように、ある程度以上の処理時間を要する(すなわち処理負荷が高い)処理要求も存在する。一般に、各ユーザからの処理要求にはそのような負荷の異なるものが混在している。このような状況において、処理負荷が極めて軽い処理要求と、そうでない処理要求とを同列に取り扱ったのでは、不都合な場合もある。例えば、保証モード時に、保証時間外顧客の単純な画面遷移の要求をキュー内で待たせたとしても、データ処理システム30の負荷軽減にはあまり寄与しないが、その顧客にとっての操作の快適性は著しく低下する。また、データ処理システム30が高負荷状態か否かの判定に実行中セッション数を用いる場合に、単純な画面遷移要求のようなほとんど負荷のない処理要求も1つのセッションとしてカウントすると、カウント結果と実際の負荷との乖離が激しくなってしまう。   Some processing requests are completed in a very short time (that is, the load on the data processing system 30 is extremely low), such as a simple screen transition request. On the other hand, there are processing requests that require a certain amount of processing time (that is, processing load is high), such as processing involving a large amount of data processing or a large amount of data update. In general, processing requests from users are mixed with those having different loads. In such a situation, it may be inconvenient if a processing request with a very light processing load and a processing request that is not so are handled in the same row. For example, in the guarantee mode, even if a simple screen transition request of a customer outside the guarantee time is kept waiting in the queue, it does not contribute much to the load reduction of the data processing system 30, but the comfort of operation for the customer is It drops significantly. Further, when the number of running sessions is used for determining whether or not the data processing system 30 is in a high load state, if a processing request with little load such as a simple screen transition request is counted as one session, the count result Deviation from the actual load becomes severe.

そこで、処理要求を、極めて短時間で処理が完了するものとそうでないものとに分類しておき、前者は実行中セッション数にカウントしないようにしてもよい。この場合、極めて短時間で処理が完了する処理要求を、保証時間外顧客からのものであっても、キュー内で待機させずに、先入れ先出し順に実行するようにしてもよい。   Therefore, processing requests may be classified into those that complete processing in a very short time and those that do not, and the former may not be counted as the number of running sessions. In this case, processing requests that can be processed in an extremely short time may be executed in the first-in first-out order without waiting in the queue even if the request is from a customer outside the guaranteed time.

以上に例示した処理要求実行管理装置10は、例えば、汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現してもよい。ここで、コンピュータは、例えば、ハードウエアとして、CPU等のマイクロプロセッサ、ランダムアクセスメモリ(RAM)およびリードオンリメモリ(ROM)等のメモリ(一次記憶)、HDD(ハードディスクドライブ)を制御するHDDコントローラ、各種I/O(入出力)インタフェース、ローカル・エリア・ネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばI/Oインタフェース経由で、CDやDVDなどの可搬型ディスク記録媒体に対する読み取り及び/又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び/又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されCPU等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。   The processing request execution management apparatus 10 exemplified above may be realized by causing a general-purpose computer to execute a program representing the processing of each functional module described above, for example. Here, the computer includes, as hardware, a microprocessor such as a CPU, a memory (primary storage) such as a random access memory (RAM) and a read only memory (ROM), an HDD controller that controls an HDD (hard disk drive), Various I / O (input / output) interfaces, network interfaces that perform control for connection to a network such as a local area network, and the like have a circuit configuration connected via a bus, for example. Also, portable non-volatile recording of various standards such as a disk drive and a flash memory for reading and / or writing to a portable disk recording medium such as a CD or a DVD via the I / O interface, for example. A memory reader / writer for reading from and / or writing to a medium may be connected. A program in which the processing contents of each functional module exemplified above are described is stored in a fixed storage device such as a hard disk drive via a recording medium such as a CD or DVD, or via a communication means such as a network, and stored in a computer. Installed. The program stored in the fixed storage device is read into the RAM and executed by a microprocessor such as a CPU, thereby realizing the functional module group exemplified above.

10 処理要求実行管理装置、11 処理要求受付部、13 処理要求保持部、15 処理要求スケジュール部、17 サービスレベルデータ保持部、19 応答時間記録部、20 サービスレベル登録部、30 データ処理システム、32 データ処理部、34 処理用データ保持部。   DESCRIPTION OF SYMBOLS 10 Process request execution management apparatus, 11 Process request reception part, 13 Process request holding part, 15 Process request schedule part, 17 Service level data holding part, 19 Response time recording part, 20 Service level registration part, 30 Data processing system, 32 Data processing unit, 34 processing data holding unit.

Claims (6)

複数の顧客組織の各々について、応答保証を行う時間帯である保証時間帯と、当該保証時間帯における前記応答保証の内容と、を記憶した記憶手段であって、前記応答保証の内容には、少なくとも当該顧客組織に割り当てられた最大同時要求処理数が含まれる、記憶手段と、
前記複数の顧客組織内の各ユーザからの処理要求に応答してデータ処理を実行するデータ処理システムであって同一時刻における各顧客組織の前記最大同時要求処理数の合計値の、全時間帯の中での最大値を同時に処理できる能力を持つデータ処理システム、の負荷を監視する監視手段と、
前記監視手段の監視により前記データ処理システムの高負荷状態が検知されている期間は、当該期間を前記保証時間帯内に含む顧客組織である保証時間内組織内のユーザからの処理要求は前記データ処理システムに実行させ、当該期間を前記保証時間帯に含んでいない顧客組織である保証時間外組織内のユーザからの処理要求は前記データ処理システムに実行させないようにする制御を行う制御手段と、
を備える処理要求実行管理装置。
For each of a plurality of customer organizations, storage means for storing a guarantee time zone that is a time zone for performing a response guarantee and the content of the response guarantee in the guarantee time zone , the content of the response guarantee includes: A storage means including at least the maximum number of simultaneous request processes assigned to the customer organization ;
A data processing system that executes data processing in response to a processing request from each user in the plurality of customer organizations, the total value of the maximum simultaneous request processing number of each customer organization at the same time, in all time zones A monitoring means for monitoring the load of a data processing system capable of simultaneously processing the maximum value among them ,
The period of high load state of the data processing system has been detected by the monitoring of the monitoring means, the processing request from the user guarantee time the set Onai a customer organization including the period in the warranty time period the it is performed on the data processing system, a control unit processing request for the period from the user of the guaranteed time zone comprise not a customer organization guarantees overtime in the organization to perform control so as not to execute the data processing system ,
A processing request execution management device comprising:
前記制御手段は、前記各顧客組織内の各ユーザからの処理要求を一時的に保持するキューを備えており、前記データ処理システムの高負荷状態が検知されていない期間は、保証時間内組織及び保証時間外組織のいずれのユーザからの処理要求であるかを区別せずに前記キューの先頭から順に処理要求を前記キューから取り出して前記データ処理システムに実行させると共に、前記データ処理システムの高負荷状態が検知されている期間は、保証時間外組織内のユーザからの処理要求は前記キューから取り出さず、保証時間内組織内のユーザからの処理要求のみを前記キューから取り出して前記データ処理システムに実行させる、ことを特徴とする請求項1に記載の処理要求実行管理装置。   The control means includes a queue that temporarily holds a processing request from each user in each customer organization, and a period during which a high load state of the data processing system is not detected The processing request is taken out from the queue in order from the top of the queue without distinguishing which user from the organization outside the guarantee time, and the data processing system is subjected to high load. During the period in which the state is detected, processing requests from users within the organization outside the guarantee time are not taken out from the queue, but only processing requests from users within the organization within the guarantee time are taken out from the queue and sent to the data processing system. The processing request execution management apparatus according to claim 1, wherein the processing request execution management apparatus is executed. 前記制御手段は、前記データ処理システムの高負荷状態が検知されている期間において前記保証時間内組織が複数存在する場合に、前記キューからそれら各保証時間内組織の処理要求が取り出される割合が、それら各保証時間内組織に割り当てられた前記最大同時要求処理数同士の比率に応じたものとなるように制御する、
ことを特徴とする請求項1又は2に記載の処理要求実行管理装置。
The control means, when there are a plurality of organizations within the guaranteed time period during the period when a high load state of the data processing system is detected, the ratio of processing requests for each organization within the guaranteed time period from the queue, Control to be in accordance with the ratio between the maximum simultaneous request processing number allocated to the organization within each guarantee time,
The processing request execution management apparatus according to claim 1 or 2, characterized in that
処理要求が再実行可能か否かを判定する再実行可否判定手段を更に備え、
前記制御手段は、前記データ処理システムの高負荷状態が検知されている期間において、前記データ処理システムが実行中の前記保証外組織内のユーザからの処理要求のうち、前記再実行可否判定手段で再実行可能と判定される処理要求の実行を強制終了するよう前記データ処理システムに指示する、
ことを特徴とする請求項1〜3のいずれか1項に記載の処理要求実行管理装置。
Re-executability determination means for determining whether or not the processing request is re-executable;
The control means is the re-executability determination means among processing requests from users in the non-guaranteed organization that is being executed by the data processing system during a period when a high load state of the data processing system is detected. Instructing the data processing system to forcibly terminate execution of a processing request determined to be re-executable;
The processing request execution management apparatus according to any one of claims 1 to 3, wherein
処理要求が、前記データ処理システムによる実行に予め定められた時間以下の時間しか要さない軽負荷タイプであるか否かを判定する要求タイプ判定手段を更に備え、
前記監視手段は、前記顧客組織ごとに前記データ処理システムが同時に実行している当該顧客組織からの処理要求のうち軽負荷タイプでないと判定される処理要求の数を同時実行数として監視しており、監視している前記各顧客組織の前記同時実行数に基づいて前記データ処理システムが高負荷状態であるか否かを判定する、
ことを特徴とする請求項1〜4のいずれか1項に記載の処理要求実行管理装置。
Request type determination means for determining whether or not the processing request is a light load type that requires only a predetermined time or less for execution by the data processing system;
The monitoring means monitors the number of processing requests determined to be not of light load type among the processing requests from the customer organization that are simultaneously executed by the data processing system for each customer organization as the number of simultaneous executions. Determining whether the data processing system is in a high load state based on the number of concurrent executions of each customer organization being monitored,
The processing request execution management apparatus according to claim 1, wherein the processing request execution management apparatus is a management request execution management apparatus.
コンピュータを、
複数の顧客組織の各々について、応答保証を行う時間帯である保証時間帯と、当該保証時間帯における前記応答保証の内容と、を記憶した記憶手段であって、前記応答保証の内容には、少なくとも当該顧客組織に割り当てられた最大同時要求処理数が含まれる、記憶手段
前記複数の顧客組織内の各ユーザからの処理要求に応答してデータ処理を実行するデータ処理システムであって同一時刻における各顧客組織の前記最大同時要求処理数の合計値の、全時間帯の中での最大値を同時に処理できる能力を持つデータ処理システム、の負荷を監視する監視手段、
前記監視手段の監視により前記データ処理システムの高負荷状態が検知されている期間は、当該期間を前記保証時間帯内に含む顧客組織である保証時間内組織内のユーザからの処理要求は前記データ処理システムに実行させ、当該期間を前記保証時間帯に含んでいない顧客組織である保証時間外組織内のユーザからの処理要求は前記データ処理システムに実行させないようにする制御を行う制御手段、
として機能させるためのプログラム。
Computer
For each of a plurality of customer organizations, storage means for storing a guarantee time zone that is a time zone for performing a response guarantee and the content of the response guarantee in the guarantee time zone , the content of the response guarantee includes: Storage means including at least the maximum number of concurrent request processes assigned to the customer organization ;
A data processing system that executes data processing in response to a processing request from each user in the plurality of customer organizations, the total value of the maximum simultaneous request processing number of each customer organization at the same time, in all time zones Monitoring means to monitor the load of the data processing system capable of simultaneously processing the maximum value among them ,
The period of high load state of the data processing system has been detected by the monitoring of the monitoring means, the processing request from the user guarantee time the set Onai a customer organization including the period in the warranty time period the is performed on the data processing system, the control means processing request for the period from the user of the guaranteed time zone comprise not a customer organization guarantees overtime in the organization to perform control so as not to execute the data processing system,
Program to function as.
JP2011245265A 2011-11-09 2011-11-09 Processing request execution management apparatus and program Expired - Fee Related JP5870635B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011245265A JP5870635B2 (en) 2011-11-09 2011-11-09 Processing request execution management apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011245265A JP5870635B2 (en) 2011-11-09 2011-11-09 Processing request execution management apparatus and program

Publications (2)

Publication Number Publication Date
JP2013101523A JP2013101523A (en) 2013-05-23
JP5870635B2 true JP5870635B2 (en) 2016-03-01

Family

ID=48622087

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011245265A Expired - Fee Related JP5870635B2 (en) 2011-11-09 2011-11-09 Processing request execution management apparatus and program

Country Status (1)

Country Link
JP (1) JP5870635B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021043684A (en) 2019-09-11 2021-03-18 富士通株式会社 Information processing system, information processing method and information processing program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204667A (en) * 1992-01-27 1993-08-13 Toshiba Corp Task execution control device in computer system
JP2003223335A (en) * 2002-01-30 2003-08-08 Nec Corp Out-sourcing system, out-sourcing method, and program for out-sourcing
JP2004147131A (en) * 2002-10-25 2004-05-20 Hitachi Ltd Service providing system for managing band and band management method
JP2006065566A (en) * 2004-08-26 2006-03-09 Casio Comput Co Ltd Batch processor and program
JP4812680B2 (en) * 2007-04-11 2011-11-09 三菱電機株式会社 Access control device

Also Published As

Publication number Publication date
JP2013101523A (en) 2013-05-23

Similar Documents

Publication Publication Date Title
US12107769B2 (en) Throttling queue for a request scheduling and processing system
US20210311781A1 (en) Method and system for scalable job processing
CN111406250B (en) Provisioning using prefetched data in a serverless computing environment
US8156226B2 (en) Ordering provisioning request execution based on service level agreement and customer entitlement
Dabbagh et al. An energy-efficient VM prediction and migration framework for overcommitted clouds
JP5336094B2 (en) Multipurpose allocation of computing jobs in client / server or hosting environments
US8424007B1 (en) Prioritizing tasks from virtual machines
US8522241B1 (en) Systems and methods for auto-balancing of throughput in a real-time event-driven system
US7493419B2 (en) Input/output workload fingerprinting for input/output schedulers
JP5706529B2 (en) Virtual resource cost tracking using dedicated implementation resources
US7624208B2 (en) Method, system, and computer program for managing a queuing system
US20200348977A1 (en) Resource scheduling methods, device and system, and central server
US20150033237A1 (en) Utility-optimized scheduling of time-sensitive tasks in a resource-constrained environment
EP3115897A1 (en) Intelligent load balancer selection in a multi-load balancer environment
US20120096457A1 (en) System, method and computer program product for preprovisioning virtual machines
US8875152B2 (en) System, method and computer program product for dynamically increasing resources utilized for processing tasks
Householder et al. On cloud-based oversubscription
US11108618B2 (en) Live-monitoring of agent instances to trigger automation
US10944683B1 (en) Hybrid queue system for request throttling
US20100042723A1 (en) Method and system for managing load in a network
JP2009176097A (en) Service management apparatus and program
JP2017041191A (en) Resource management apparatus, resource management program, and resource management method
US20170097849A1 (en) Batch processing of oversubscribed system based on subscriber usage patterns
Zaouch et al. Load balancing for improved quality of service in the cloud
US11477322B1 (en) System and method for prioritizing tenants for a service for a request router in a cloud-based software as a service (SaaS) platform contact-center

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150928

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151228

R150 Certificate of patent or registration of utility model

Ref document number: 5870635

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees