JP2011113139A - Computer system, information processing method, and program - Google Patents

Computer system, information processing method, and program Download PDF

Info

Publication number
JP2011113139A
JP2011113139A JP2009266660A JP2009266660A JP2011113139A JP 2011113139 A JP2011113139 A JP 2011113139A JP 2009266660 A JP2009266660 A JP 2009266660A JP 2009266660 A JP2009266660 A JP 2009266660A JP 2011113139 A JP2011113139 A JP 2011113139A
Authority
JP
Japan
Prior art keywords
time
queue
stored
message
residence time
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.)
Granted
Application number
JP2009266660A
Other languages
Japanese (ja)
Other versions
JP5482139B2 (en
Inventor
Shingo Takasago
信吾 高砂
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009266660A priority Critical patent/JP5482139B2/en
Publication of JP2011113139A publication Critical patent/JP2011113139A/en
Application granted granted Critical
Publication of JP5482139B2 publication Critical patent/JP5482139B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a computer system that efficiently obtains a processing load. <P>SOLUTION: The computer system includes: a queue for storing a message in association with a storage time when the message is stored; a table for storing the number of messages stored in the queue, a total retention time that is a sum of message retention time when a message is extracted or stored the last time, and a calculation time when the first total retention time is calculated; and a calculation means for calculating the total retention time of messages stored in the queue based on a storage time for the extracted message, the number of messages stored in the table, the total retention time, and the calculation time when a message to be subjected to specific processing is extracted from a queue. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本技術は、システムのスループットを向上させるための技術に関する。   The present technology relates to a technology for improving system throughput.

例えばLAN(Local Area Network)やインターネット等のネットワークを介して受信したメッセージに対して、複数種類の業務処理を実施し、処理結果を例えばクライアント端末等に送信するようなシステムがある。このようなシステムにおいては、特定の業務処理プロセスの業務処理が終了したメッセージをキューに一時的に格納することが行われる。例えば、図1に示したシステムでは、業務処理プロセスAがメッセージに対して業務処理Aを実行した後、処理後のメッセージをキューに格納する。一方、業務処理プロセスBは、キューに格納されたメッセージを抽出し、業務処理Bを実行する。   For example, there is a system that performs a plurality of types of business processing on a message received via a network such as a LAN (Local Area Network) or the Internet, and transmits the processing result to, for example, a client terminal. In such a system, a message indicating completion of business processing of a specific business processing process is temporarily stored in a queue. For example, in the system shown in FIG. 1, after the business process A executes the business process A on the message, the processed message is stored in a queue. On the other hand, the business process B extracts a message stored in the queue and executes the business process B.

上で述べたシステムでは、例えば業務処理プロセスBに負荷が集中した場合や、業務処理プロセスAの処理速度に比して業務処理プロセスBの処理速度が遅い場合には、キューにメッセージが滞留することがある。すると、キューにおける待ち時間が長くなるため、システムがメッセージを受信してから送信するまでの時間が長くなる(すなわち、システムの処理効率が下がる)。そのため、キューにおけるメッセージの滞留状況を監視し、システムの処理効率が落ちることを未然に防ぐための措置を講ずることが求められる。上で述べた例では、例えば業務処理プロセスAのプロセス数を減らしたり、業務処理プロセスBのプロセス数を増やしたりすることが考えられる。   In the system described above, for example, when the load is concentrated on the business process B, or when the business process B is slower than the business process A, the message stays in the queue. Sometimes. Then, since the waiting time in the queue becomes long, the time from when the system receives a message to when it is transmitted becomes long (that is, the processing efficiency of the system decreases). Therefore, it is required to monitor the status of message retention in the queue and take measures to prevent the system processing efficiency from dropping. In the example described above, for example, it is conceivable to reduce the number of business processing processes A or increase the number of business processing processes B.

従来、キューに格納されているメッセージの数に基づき、メッセージの滞留状況を監視する技術が存在する。すなわち、監視プロセスのプロセス数制御手段が、所定時間毎に登録された処理対象I/O要求数から処理対象I/O要求数が増加傾向又は減少傾向のいずれにあるかを判別し、また現時点における処理対象I/O要求数が現時点における起動I/O処理プロセス数と閾値α以上差があるかを判別する。そして、判別した結果に基づき、起動I/O処理プロセスの数を増加、減少又は現状維持させる。   Conventionally, there is a technique for monitoring a message retention state based on the number of messages stored in a queue. That is, the process number control means of the monitoring process determines whether the number of processing target I / O requests is increasing or decreasing from the number of processing target I / O requests registered every predetermined time. It is determined whether the number of processing target I / O requests is different from the current activation I / O processing process number by a threshold value α or more. Based on the determined result, the number of startup I / O processing processes is increased, decreased, or the current state is maintained.

しかし、たとえ滞留するメッセージの数が少なくても滞留時間が長いような場合にはプロセス数が足りず業務処理が滞っている可能性があり、逆に滞留するメッセージの数が多くても滞留時間が短いような場合には現状のままでもプロセス数に問題は無いと考えられる。したがって、上で述べたような技術を用いて滞留状況を監視することは必ずしも適切であるとは言えない。   However, even if the number of staying messages is small, if the staying time is long, there is a possibility that the number of processes is insufficient and the business process is delayed. Is short, it can be considered that there is no problem in the number of processes even in the current state. Therefore, it is not always appropriate to monitor the staying status using the technique as described above.

このような問題に対処するための技術として、キュー内のメッセージの滞留時間の合計である、総滞留時間を求める方法が知られている。この方法については図1を用いて説明する。図1のシステムでは、業務処理プロセスAがメッセージに対して業務処理Aを実行した後、処理後のメッセージをキューに格納し、さらに業務処理プロセスBがメッセージを取り出して業務処理Bを実行する。この技術では、メッセージとともに現在時刻がキューに格納され、この現在時刻(以下、格納時刻と呼ぶ)を用いて総滞留時間が算出される。   As a technique for dealing with such a problem, a method for obtaining a total residence time, which is the total residence time of messages in a queue, is known. This method will be described with reference to FIG. In the system of FIG. 1, after the business process A executes the business process A on the message, the processed message is stored in a queue, and the business process B extracts the message and executes the business process B. In this technique, the current time is stored in a queue together with a message, and the total residence time is calculated using the current time (hereinafter referred to as storage time).

総滞留時間の算出は、具体的には以下のような方法により行われる。すなわち、監視プロセスは、(1)業務処理プロセスA及び業務処理プロセスBの実行の一時停止を要求し、(2)キューを検索し、全メッセージについて格納時刻を取得し、(3)現在時刻と格納時刻との差を全メッセージにつき算出して総和を求めることにより総滞留時間を算出し、(4)業務処理プロセスA及び業務処理プロセスBの実行の再開を要求する。図1の例において現在時刻が09:00の場合には、総滞留時間は(09:00−08:30)+(09:00−08:20)+(09:00−08:10)+(09:00−08:00)=180(分)となる。   Specifically, the total residence time is calculated by the following method. That is, the monitoring process requests (1) suspension of execution of the business process A and the business process B, (2) searches the queue, acquires the storage time for all messages, and (3) the current time and The total residence time is calculated by calculating the difference from the storage time for all messages and calculating the sum, and (4) requesting the execution of the business process A and the business process B to be resumed. In the example of FIG. 1, when the current time is 09:00, the total residence time is (09: 0-08: 30) + (09: 0-08: 20) + (09: 0-08: 10) + (09: 00-08: 00) = 180 (minutes).

しかしながら、図1に示した方法では、キューを検索して全てのメッセージについて格納時刻を取得する処理が必要であるため、業務処理を一時的に停止しなければならず、業務処理の効率が低下する。   However, the method shown in FIG. 1 requires processing for searching the queue and acquiring the storage time for all messages, so the business processing must be temporarily stopped, and the efficiency of the business processing is reduced. To do.

また、監視プロセスによる監視を行う場合、監視周期を定め、キュー内を定期的に監視しなければならないが、メッセージ数の増減が大きい時間帯には頻繁に監視をすることが必要であるのに対し、そうでない時間帯には頻繁に監視をする必要性は低い。従って、最適な監視周期を定めるのが難しいという問題がある。さらに、監視プロセスと業務処理プロセスとの間のプロセス間通信が発生するため、解決処理を即時に行うことができないという問題がある。   In addition, when monitoring by a monitoring process, it is necessary to set a monitoring cycle and periodically monitor the queue, but it is necessary to monitor frequently during times when the number of messages increases or decreases greatly On the other hand, frequent monitoring is not necessary during other times. Therefore, there is a problem that it is difficult to determine an optimal monitoring cycle. Furthermore, since inter-process communication occurs between the monitoring process and the business process, there is a problem that the solution process cannot be performed immediately.

特開2004−348233号公報JP 2004-348233 A

従って、本技術の目的は、効率的に処理負荷を把握するための技術を提供することである。   Therefore, an object of the present technology is to provide a technology for efficiently grasping the processing load.

本技術の第1の態様に係るコンピュータ・システムは、メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルと、第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出されたメッセージについての格納時刻と、第1のステータステーブルに格納されている第1の件数、第1の総滞留時間及び第1の算出時刻とに基づき、第1のキューに格納されているメッセージの滞留時間の合計を算出し、第1のステータステーブルにおいて、第1の件数を1減少させ、第1のキューに格納されているメッセージの滞留時間の合計で第1の総滞留時間を更新し、第1の算出時刻を現在時刻で更新する算出手段とを有する。   The computer system according to the first aspect of the present technology includes a first queue that stores a message in association with a storage time at which the message is stored, and the number of messages stored in the first queue. A first calculation time which is a time when a first total dwell time and a first total dwell time are calculated, which is a total of message dwell times at the time when a certain first number of messages and a previous message are extracted or stored. Are stored in the first status table and the storage time for the extracted message and the first status table when a message to be processed is extracted from the first queue. Based on the first number of cases, the first total residence time, and the first calculation time, the total residence time of the messages stored in the first queue is calculated, and the first In the status table, the first number is decreased by 1, the first total residence time is updated with the total residence time of the messages stored in the first queue, and the first calculation time is updated with the current time. Calculating means.

効率的に処理負荷を把握できるようになる。   It becomes possible to grasp the processing load efficiently.

従来技術を説明するための図である。It is a figure for demonstrating a prior art. 本技術の一実施の形態に係るシステムの構成図である。1 is a configuration diagram of a system according to an embodiment of the present technology. キューに格納されるデータの一例を示す図である。It is a figure which shows an example of the data stored in a queue. 共通ステータステーブルに格納されるデータの一例を示す図である。It is a figure which shows an example of the data stored in a common status table. メッセージが滞留するケースの一例を示す図である。It is a figure which shows an example of the case where a message stays. プロセス数調節処理1の処理フローを示す図である。It is a figure which shows the processing flow of the process number adjustment process 1. FIG. (a)及び(b)はキュー及び共通ステータステーブルに格納されるデータの一例を示す図である。(A) And (b) is a figure which shows an example of the data stored in a queue and a common status table. プロセス数調節処理1の処理フローを示す図である。It is a figure which shows the processing flow of the process number adjustment process 1. FIG. 共通ステータステーブルに格納されるデータの一例を示す図である。It is a figure which shows an example of the data stored in a common status table. プロセス数調節処理2の処理フローを示す図である。It is a figure which shows the processing flow of the process number adjustment process. 総滞留時間の算出方法を説明するための図である。It is a figure for demonstrating the calculation method of total residence time. 総滞留時間の算出方法を説明するための図である。It is a figure for demonstrating the calculation method of total residence time. 総滞留時間の算出方法を説明するための図である。It is a figure for demonstrating the calculation method of total residence time. 総滞留時間の算出方法を説明するための図である。It is a figure for demonstrating the calculation method of total residence time. 総滞留時間の算出方法を説明するための図である。It is a figure for demonstrating the calculation method of total residence time. 総滞留時間の算出方法を説明するための図である。It is a figure for demonstrating the calculation method of total residence time. キューの総滞留時間を適切な状態に調節する方法を説明するための図である。It is a figure for demonstrating the method to adjust the total residence time of a queue to an appropriate state. キューの総滞留時間を適切な状態に調節する方法を説明するための図である。It is a figure for demonstrating the method to adjust the total residence time of a queue to an appropriate state. コンピュータの機能ブロック図である。It is a functional block diagram of a computer.

本実施の形態に係る業務システム1の機能ブロック図を図2に示す。本実施の形態に係る業務システム1は、受信部3と、キュー7Aと、共通ステータステーブル9Aと、1又は複数の業務処理プロセス11Aと、キュー7Bと、共通ステータステーブル9Bと、1又は複数の業務処理プロセス11Bと、キュー7Cと、共通ステータステーブル9Cと、1又は複数の業務処理プロセス11Cと、送信部5とを有する。   FIG. 2 shows a functional block diagram of the business system 1 according to the present embodiment. The business system 1 according to the present embodiment includes a reception unit 3, a queue 7A, a common status table 9A, one or more business processing processes 11A, a queue 7B, a common status table 9B, and one or more It has a business process 11B, a queue 7C, a common status table 9C, one or a plurality of business processes 11C, and a transmission unit 5.

なお、業務処理プロセス11Aは、メッセージに対して業務処理Aを実施するために実行されているプロセスであり、業務処理部101Aと、総滞留時間算出部103Aと、プロセス数調節処理部105Aとを有する。同様に、業務処理プロセス11Bは、メッセージに対して業務処理Bを実施するために実行されているプロセスであり、業務処理部101Bと、総滞留時間算出部103Bと、プロセス数調節処理部105Bとを有する。また、業務処理プロセス11Cは、メッセージに対して業務処理Cを実施するために実行されているプロセスであり、業務処理部101Cと、総滞留時間算出部103Cと、プロセス数調節処理部105Cとを有する。   The business process 11A is a process that is executed to perform the business process A on the message. The business process unit 101A, the total residence time calculation unit 103A, and the process number adjustment processing unit 105A include Have. Similarly, the business process 11B is a process executed to execute the business process B on the message, and includes a business process unit 101B, a total residence time calculation unit 103B, and a process number adjustment processing unit 105B. Have Further, the business process 11C is a process that is executed to execute the business process C on the message, and includes a business process unit 101C, a total residence time calculation unit 103C, and a process number adjustment processing unit 105C. Have.

受信部3は、例えばLAN(Local Area Network)やインターネット等のネットワークを介してメッセージを受信し、キュー7Aに格納する。業務処理プロセス11Aの業務処理部101Aは、FIFO(First In First Out)方式に従ってキュー7Aからメッセージを抽出し、業務処理Aを実施した後、処理後のメッセージをキュー7Bに格納する。総滞留時間算出部103Aは、メッセージがキュー7Aに格納された格納時刻と共通ステータステーブル9Aに格納されているデータとに基づきキュー7Aに格納されているメッセージの総滞留時間を算出したり、共通ステータステーブル9Bに格納されているデータに基づきキュー7Bに格納されているメッセージの総滞留時間を算出したりする。プロセス数調節処理部105Aは、キュー7Aについての総滞留時間とキュー7Bについての総滞留時間とに基づき、当該プロセス数調節処理部105Aを含む業務処理プロセス11Aを停止又は業務処理プロセス11Aを新たに起動する。   The receiving unit 3 receives a message via a network such as a LAN (Local Area Network) or the Internet and stores it in the queue 7A. The business processing unit 101A of the business processing process 11A extracts a message from the queue 7A according to a FIFO (First In First Out) method, performs the business processing A, and then stores the processed message in the queue 7B. The total dwell time calculation unit 103A calculates the total dwell time of the messages stored in the queue 7A based on the storage time when the messages are stored in the queue 7A and the data stored in the common status table 9A. The total residence time of the messages stored in the queue 7B is calculated based on the data stored in the status table 9B. Based on the total residence time for the queue 7A and the total residence time for the queue 7B, the process number adjustment processing unit 105A stops the business processing process 11A including the process number adjustment processing unit 105A or newly starts the business processing process 11A. to start.

また、業務処理プロセス11Bの業務処理部101Bは、FIFO方式に従ってキュー7Bからメッセージを抽出し、業務処理Bを実施した後、処理後のメッセージをキュー7Cに格納する。総滞留時間算出部103Bは、メッセージがキュー7Bに格納された格納時刻と共通ステータステーブル9Bに格納されているデータとに基づきキュー7Bに格納されているメッセージの総滞留時間を算出したり、共通ステータステーブル9Cに格納されているデータに基づきキュー7Cに格納されているメッセージの総滞留時間を算出したりする。プロセス数調節処理部105Bは、キュー7Bについての総滞留時間とキュー7Cについての総滞留時間とに基づき、当該プロセス数調節処理部105Bを含む業務処理プロセス11Bを停止又は業務処理プロセス11Bを新たに起動する。   In addition, the business processing unit 101B of the business processing process 11B extracts a message from the queue 7B according to the FIFO method, performs the business processing B, and then stores the processed message in the queue 7C. The total residence time calculation unit 103B calculates the total residence time of the messages stored in the queue 7B based on the storage time when the message is stored in the queue 7B and the data stored in the common status table 9B. The total residence time of messages stored in the queue 7C is calculated based on the data stored in the status table 9C. Based on the total residence time for the queue 7B and the total residence time for the queue 7C, the process number adjustment processing unit 105B stops the business processing process 11B including the process number adjustment processing unit 105B or newly starts the business processing process 11B. to start.

また、業務処理プロセス11Cの業務処理部101Cは、FIFO方式に従ってキュー7Cからメッセージを抽出し、業務処理Cを実施した後、処理後のメッセージを送信部5に出力する。総滞留時間算出部103Cは、メッセージがキュー7Cに格納された格納時刻と共通ステータステーブル9Cに格納されているデータとに基づきキュー7Cに格納されているメッセージの総滞留時間を算出する。プロセス数調節処理部105Cは、キュー7Cの総滞留時間に基づき、当該プロセス数調節処理部105Cを含む業務処理プロセス11Cを停止又は業務処理プロセス11Cを新たに起動する。そして、送信部5は、必要な処理が全て実行されたメッセージを、当該メッセージを受け取るべき端末等にネットワークを介して送信する。   The business processing unit 101C of the business processing process 11C extracts a message from the queue 7C according to the FIFO method, performs the business processing C, and then outputs the processed message to the transmission unit 5. The total residence time calculation unit 103C calculates the total residence time of the message stored in the queue 7C based on the storage time when the message is stored in the queue 7C and the data stored in the common status table 9C. Based on the total residence time of the queue 7C, the process number adjustment processing unit 105C stops the business processing process 11C including the process number adjustment processing unit 105C or newly starts the business processing process 11C. Then, the transmission unit 5 transmits a message in which all necessary processes have been executed to a terminal or the like that should receive the message via the network.

図3に、キュー7Aに格納されるデータの一例を示す。図3の例では、キュー7Aには、メッセージと、当該メッセージが格納された格納時刻とが格納されるようになっている。図3の例では、格納時刻が11:00であるメッセージが最も先に格納されたメッセージであるので、当該メッセージは最も先にキュー7Aから抽出される。一方、格納時刻が12:00であるメッセージは最後に格納されたメッセージであるので、当該メッセージは最後にキュー7Aから抽出される。なお、キュー7B及びキュー7Cについても同様のデータが格納される。   FIG. 3 shows an example of data stored in the queue 7A. In the example of FIG. 3, a message and a storage time when the message is stored are stored in the queue 7A. In the example of FIG. 3, since the message whose storage time is 11:00 is the message stored first, the message is extracted from the queue 7A first. On the other hand, since the message whose storage time is 12:00 is the message stored last, the message is finally extracted from the queue 7A. Similar data is stored in the queue 7B and the queue 7C.

図4に、キュー7Aについての共通ステータステーブル9Aに格納されるデータの一例を示す。図4の例では、共通ステータステーブル9Aには、前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である前回総滞留時間と、前回総滞留時間が算出された時刻である前回時刻と、キュー7Aに格納されているメッセージの数が格納されるようになっている。前回総滞留時間は、後述する処理により算出される。なお、共通ステータステーブル9B及び共通ステータステーブル9Cについても同様のフォーマットでデータが格納されるが、共通ステータステーブル9Bにはキュー7Bについてのデータが格納され、共通ステータステーブル9Cにはキュー7Cについてのデータが格納される。   FIG. 4 shows an example of data stored in the common status table 9A for the queue 7A. In the example of FIG. 4, the common status table 9 </ b> A includes the previous total residence time that is the sum of the residence times of messages at the time when the previous message was extracted or stored, and the previous time that is the time at which the previous total residence time was calculated. The number of messages stored in the queue 7A is stored. The previous total residence time is calculated by a process described later. The common status table 9B and the common status table 9C store data in the same format, but the common status table 9B stores data about the queue 7B, and the common status table 9C stores data about the queue 7C. Is stored.

ここで、キューに格納されているメッセージが滞留するケースの一例を図5を用いて説明する。図5は、図2に示した本実施の形態に係るシステムにおいて、業務処理プロセス11Aのプロセス数が2であり、業務処理プロセス11Bのプロセス数が3であり、業務処理プロセス11Cのプロセス数が3である状態を示している。また、ここでは、業務処理プロセス11Aの業務処理A及び業務処理プロセス11Cの業務処理Cには時間がかからないが、業務処理Bには時間がかかるものとする。   Here, an example of a case where a message stored in the queue stays will be described with reference to FIG. FIG. 5 shows that in the system according to the present embodiment shown in FIG. 2, the number of business processing processes 11A is 2, the number of business processing processes 11B is 3, and the number of business processing processes 11C is 3. 3 is shown. Here, it is assumed that the business process A of the business process 11A and the business process C of the business process 11C do not take time, but the business process B takes time.

このようなケースでは、業務処理Aには時間がかからないためキュー7Bへのメッセージの格納は比較的高い頻度で行われる。一方、業務処理Bには時間がかかるためキュー7Bからのメッセージの抽出頻度は高くない。そのため、キュー7Bにはメッセージが滞留しがちになる。また、業務処理Bには時間がかかるため業務処理C用キューへのメッセージの格納の頻度は高くない。一方、業務処理Cには時間がかからないため、業務処理プロセス11Cは待ち状態になりやすい。これでは、キュー7Bにおける待ち時間が長くなりシステムのスループットが低下してしまうだけでなく、業務処理プロセス11Cの資源を有効に活用できていないため、好ましいものではない。   In such a case, since the business process A does not take time, the message is stored in the queue 7B at a relatively high frequency. On the other hand, since the business process B takes time, the frequency of extracting messages from the queue 7B is not high. Therefore, messages tend to stay in the queue 7B. Further, since the business process B takes time, the frequency of storing messages in the business process C queue is not high. On the other hand, since the business process C does not take time, the business process 11C tends to be in a waiting state. This is not preferable because not only the waiting time in the queue 7B becomes long and the throughput of the system decreases, but also the resources of the business process 11C cannot be effectively used.

そこで、本実施の形態では以下に述べる処理を実施することにより、メッセージの滞留状況を監視し、システムのスループットの低下を未然に防ぐための措置を講ずることができるようにしている。図6乃至図10を用いて、図2に示したシステムの処理内容について説明する。まず、業務処理プロセス11A及び11Bのように、キューからメッセージを抽出する処理及びキューにメッセージを格納する処理の両方を実施する業務処理プロセスの処理(プロセス数調節処理1)について説明する。ここでは、業務処理プロセス11Bを例に説明する。なお、キュー7A、キュー7B及びキュー7Cには既にデータが格納されているものとする。   Therefore, in the present embodiment, by performing the processing described below, it is possible to monitor the message retention status and take measures to prevent a reduction in system throughput. The processing contents of the system shown in FIG. 2 will be described with reference to FIGS. First, a description will be given of a business process process (process number adjustment process 1) that performs both a process of extracting a message from a queue and a process of storing a message in the queue as in the business process 11A and 11B. Here, the business process 11B will be described as an example. It is assumed that data has already been stored in the queue 7A, the queue 7B, and the queue 7C.

まず、業務処理プロセス11Bの業務処理部101Bは、FIFO方式に従い抽出用キュー(すなわち、キュー7B)から1件のメッセージと当該メッセージの格納時刻とを抽出し、メインメモリ等の記憶装置に格納する(図6:ステップS1)。例えば図7(a)に示したデータがキュー7Bに格納されている場合には、最上段の行のメッセージと格納時刻11:10とを抽出する。   First, the business processing unit 101B of the business processing process 11B extracts one message and the storage time of the message from the extraction queue (that is, the queue 7B) according to the FIFO method, and stores it in a storage device such as a main memory. (FIG. 6: Step S1). For example, when the data shown in FIG. 7A is stored in the queue 7B, the message in the uppermost row and the storage time 11:10 are extracted.

そして、総滞留時間算出部103Bは、現在時刻を取得し、メインメモリ等の記憶装置に格納する(ステップS3)。現在時刻は、例えば業務システム1の図示しないシステム時計から取得する。ここでは、現在時刻が12:30であるとする。また、総滞留時間算出部103Bは、共通ステータステーブル9Bから前回時刻、前回総滞留時間及びメッセージ数を読み出し、メインメモリ等の記憶装置に格納する(ステップS5)。例えば図7(b)に示したデータが共通ステータステーブル9Bに格納されている場合には、前回時刻12:10と、前回総滞留時間200分と、メッセージ数「7」とを読み出す。   Then, the total residence time calculation unit 103B acquires the current time and stores it in a storage device such as a main memory (step S3). The current time is acquired from, for example, a system clock (not shown) of the business system 1. Here, it is assumed that the current time is 12:30. The total residence time calculation unit 103B reads the previous time, the previous total residence time, and the number of messages from the common status table 9B, and stores them in a storage device such as a main memory (step S5). For example, when the data shown in FIG. 7B is stored in the common status table 9B, the previous time 12:10, the previous total residence time 200 minutes, and the number of messages “7” are read.

そして、総滞留時間算出部103Bは、キュー7Bについての総滞留時間Tを、T=前回総滞留時間+(現在時刻−前回時刻)×メッセージ数−(現在時刻−格納時刻)として算出し、メインメモリ等の記憶装置に格納する(ステップS7)。ここでは、総滞留時間T=200分+(12:30−12:10)×7−(12:30−11:10)であるので、Tは260分となる。なお、図1を用いて説明した方法で算出する場合には、(12:30−11:30)+(12:30−11:35)+(12:30−11:40)+(12:30−11:45)+(12:30−12:00)+(12:30−12:10)=260分となる。いずれの方法であっても、キュー7Bに格納されているメッセージの総滞留時間は260分となる。 The total residence time calculating unit 103B is the total residence time T 1 of the the queue 7B, T 1 = the previous total residence time + (current time - last time) × number of messages - (current time - storing time) was calculated as And stored in a storage device such as a main memory (step S7). Here, since the total residence time T 1 = 200 minutes + (12: 30-12: 10) × 7− (12: 30-11: 10), T 1 is 260 minutes. In addition, when calculating by the method demonstrated using FIG. 1, (12: 30-11: 30) + (12: 30-11: 35) + (12: 30-11: 40) + (12: 30-11: 45) + (12: 30-12: 00) + (12: 30-12: 10) = 260 minutes. In any method, the total residence time of the messages stored in the queue 7B is 260 minutes.

そして、総滞留時間算出部103Bは、共通ステータステーブル9Bにおいて、前回時刻を現在時刻で更新し、ステップS7で算出した総滞留時間で前回総滞留時間を更新し、メッセージ件数を1減らす(ステップS9)。ここでは、共通ステータステーブル9Bには、前回時刻として12:30が格納され、前回総滞留時間として260分が格納され、メッセージ件数として「6」が格納される。   The total residence time calculation unit 103B then updates the previous time with the current time in the common status table 9B, updates the previous total residence time with the total residence time calculated in step S7, and reduces the number of messages by 1 (step S9). ). Here, in the common status table 9B, 12:30 is stored as the previous time, 260 minutes is stored as the previous total residence time, and “6” is stored as the number of messages.

そして、業務処理部101Bは、ステップS1において抽出されたメッセージに対して業務処理Bを実施する(ステップS11)。ステップS11が終了した後、業務処理部101Bは、現在時刻を取得し、メッセージに付加する(ステップS13)。また、ステップS13において、現在時刻をメインメモリ等の記憶装置に格納する。ここでは、現在時刻が12:50であるとする。処理は端子Aを介して図8のステップS15へ移行する。   Then, the business processing unit 101B performs business processing B on the message extracted in step S1 (step S11). After step S11 is completed, the task processing unit 101B acquires the current time and adds it to the message (step S13). In step S13, the current time is stored in a storage device such as a main memory. Here, it is assumed that the current time is 12:50. The process proceeds to step S15 in FIG.

図8の説明に移行して、総滞留時間算出部103Bは、共通ステータステーブル9Cから、前回時刻、前回総滞留時間及びメッセージ数を読み出し、メインメモリ等の記憶装置に格納する(ステップS15)。例えば図9に示したデータが共通ステータステーブル9Cに格納されている場合には、前回時刻12:30と、前回総滞留時間200分と、メッセージ数「6」とを読み出す。   Shifting to the description of FIG. 8, the total residence time calculation unit 103B reads the previous time, the previous total residence time, and the number of messages from the common status table 9C, and stores them in a storage device such as a main memory (step S15). For example, when the data shown in FIG. 9 is stored in the common status table 9C, the previous time 12:30, the previous total residence time 200 minutes, and the number of messages “6” are read.

そして、総滞留時間算出部103Bは、キュー7Cについての総滞留時間Tを、T=前回総滞留時間+(現在時刻−前回時刻)×メッセージ数として算出し、メインメモリ等の記憶装置に格納する(ステップS17)。ここでは、総滞留時間T=200分+(12:50−12:30)×6であるので、Tは320分となる。なお、図1を用いて説明した従来の方法で算出する場合には、(12:50−11:30)+(12:50−11:35)+(12:50−11:50)+(12:50−11:55)+(12:50−12:20)+(12:50−12:30)=320分となる。いずれの方法であっても、キュー7Cに格納されているメッセージの総滞留時間は320分となる。 The total residence time calculating unit 103B, the total residence time T 2 of the the queue 7C, T 2 = previous total residence time + - calculated as (current time last time) × number of messages, a storage device such as a main memory Store (step S17). Here, since the total residence time T 2 = 200 minutes + (12: 50−12: 30) × 6, T 2 is 320 minutes. In addition, when calculating by the conventional method demonstrated using FIG. 1, (12: 50-11: 30) + (12: 50-11: 35) + (12: 50-11: 50) + ( 12: 50-11: 55) + (12: 50-12: 20) + (12: 50-12: 30) = 320 minutes. In any method, the total residence time of messages stored in the queue 7C is 320 minutes.

そして、業務処理部101Bは、ステップS13において現在時刻が付加されたメッセージを、FIFO方式に従いキュー7Cに格納する(ステップS19)。キュー7Cにおける格納時刻とは、ステップS19においてキュー7Cに格納された現在時刻のことである。また、総滞留時間算出部103Bは、共通ステータステーブル9Cにおいて、前回時刻を現在時刻で更新し、ステップS17で算出した総滞留時間で前回総滞留時間を更新し、メッセージ件数を1増やす(ステップS21)。ここでは、共通ステータステーブル9Cには、前回時刻として12:50が格納され、前回総滞留時間として320分が格納され、メッセージ件数として「7」が格納される。   Then, the business processing unit 101B stores the message to which the current time is added in step S13 in the queue 7C according to the FIFO method (step S19). The storage time in the queue 7C is the current time stored in the queue 7C in step S19. Further, the total residence time calculation unit 103B updates the previous time with the current time in the common status table 9C, updates the previous total residence time with the total residence time calculated in step S17, and increases the number of messages by 1 (step S21). ). Here, in the common status table 9C, 12:50 is stored as the previous time, 320 minutes is stored as the previous total dwell time, and “7” is stored as the number of messages.

そして、プロセス数調節処理部105Bは、T≧TH且つT<THであるか判断する(ステップS23)。TH及びTHは予め設定された閾値である。例えばTHにはある程度大きい値を設定しておき、T≧THを満たす場合にはキュー7Bにメッセージが十分に滞留していると判断する。また、例えばTHにはある程度小さい値を設定しておき、T<THを満たす場合にはキュー7Cにはメッセージがほとんど滞留していないと判断する。 Then, the process number adjustment processing unit 105B determines whether T 1 ≧ TH 1 and T 2 <TH 2 (step S23). TH 1 and TH 2 are preset threshold values. For example TH 1 may be set to relatively large value to determines that message to a queue 7B is retained sufficiently in the case of satisfying the T 1 ≧ TH 1. For example, a small value is set for TH 2 to some extent, and when T 2 <TH 2 is satisfied, it is determined that the message is hardly retained in the queue 7C.

≧TH且つT<THである場合(ステップS23:Yesルート)、プロセス数調節処理部105Bは、業務処理プロセス11Bを新たに1つ起動する(ステップS25)。図5を用いて説明したように、T≧TH且つT<THである場合には、キュー7Bにおける待ち時間が長くなっていると考えられるため、待ち時間を減らしシステムのスループットを向上させる。 When T 1 ≧ TH 1 and T 2 <TH 2 (step S23: Yes route), the process number adjustment processing unit 105B starts one new business process 11B (step S25). As described with reference to FIG. 5, when T 1 ≧ TH 1 and T 2 <TH 2 , it is considered that the waiting time in the queue 7B is long, so the waiting time is reduced and the throughput of the system is reduced. Improve.

一方、T≧TH且つT<THでない場合(ステップS23:Noルート)、プロセス数調節処理部105Bは、T<TH且つT≧THであるか判断する(ステップS27)。TH及びTHは予め設定された閾値である。例えばTHにはある程度小さい値を設定しておき、T<THを満たす場合にはキュー7Bにはメッセージがほとんど滞留していないと判断する。また、例えばTHにはある程度大きい値を設定しておき、T≧THを満たす場合にはキュー7Cにメッセージが十分に滞留していると判断する。 On the other hand, when T 1 ≧ TH 1 and T 2 <TH 2 are not satisfied (step S23: No route), the process number adjustment processing unit 105B determines whether T 1 <TH 3 and T 2 ≧ TH 4 (step S27). ). TH 3 and TH 4 are preset threshold values. For example, a small value is set to TH 3 to some extent, and when T 1 <TH 3 is satisfied, it is determined that the message is hardly retained in the queue 7B. Further, for example, TH 4 may be set to relatively large value to determines that message to a queue 7C is retained sufficiently in the case satisfying T 2 ≧ TH 4.

<TH且つT≧THである場合(ステップS27:Yesルート)、プロセス数調節処理部105Bは、当該プロセス数調節処理部105Bを含む業務処理プロセス11Bを停止する(ステップS29)。すなわち、自らを停止する。図5を用いて説明したように、T<TH且つT≧THである場合には、業務処理プロセス11Aの資源を有効に活用できていないおそれがあるため、業務処理プロセス11Aに割り当てる資源を減らすものである。 When T 1 <TH 3 and T 2 ≧ TH 4 (step S27: Yes route), the process number adjustment processing unit 105B stops the business process 11B including the process number adjustment processing unit 105B (step S29). . That is, it stops itself. As described with reference to FIG. 5, when T 1 <TH 3 and T 2 ≧ TH 4 , there is a possibility that the resources of the business process 11A may not be effectively used. It reduces the resources allocated.

一方、T<TH且つT≧THでない場合(ステップS27:Noルート)、処理を終了する。業務処理プロセス11Bの数は現状のままでも問題ないと考えられるからである。 On the other hand, if T 1 <TH 3 and T 2 ≧ TH 4 are not satisfied (step S27: No route), the process is terminated. This is because it is considered that there is no problem with the number of the business process 11B as it is.

以上のように、キューに格納されている全てのメッセージについての格納時刻を取得することなく総滞留時間を算出しているので、総滞留時間を算出するにあたって業務処理を停止する必要が無く、業務処理の効率が向上する。また、業務処理プロセスの数を自律的に調節できるようになるため、別途監視プロセス等を用意してキューの監視を行う必要がなくなる。別途監視プロセス等を設けた場合においては監視プロセス等と処理部との間にプロセス間通信が発生するため、即時にプロセス数の制御を行うことができないという問題があるが、本実施の形態に係る処理であればそのような問題は生じない。   As described above, the total residence time is calculated without obtaining the storage time for all messages stored in the queue, so there is no need to stop the business process when calculating the total residence time. Processing efficiency is improved. In addition, since the number of business processing processes can be adjusted autonomously, there is no need to prepare a separate monitoring process and monitor the queue. In the case where a separate monitoring process is provided, inter-process communication occurs between the monitoring process etc. and the processing unit, so there is a problem that the number of processes cannot be controlled immediately. Such processing does not cause such a problem.

次に、図10を用いて、メッセージをキューに格納する処理を行わない業務処理プロセスの処理(プロセス数調節処理2)について説明する。ここでは、業務処理プロセス11Cを例に説明する。なお、ステップS41乃至S51の処理の内容は、ステップS1乃至S11と同様であるので、具体例を用いた説明は省略する。   Next, with reference to FIG. 10, a description will be given of a business process process (process number adjustment process 2) that does not perform a process of storing a message in a queue. Here, the business process 11C will be described as an example. Note that the contents of the processes in steps S41 to S51 are the same as those in steps S1 to S11, and thus description using a specific example is omitted.

まず、業務処理プロセス11Cの業務処理部101Cは、FIFO方式に従いキュー7Cから1件のメッセージと当該メッセージの格納時刻とを抽出し、メインメモリ等の記憶装置に格納する(図10:ステップS41)。そして、総滞留時間算出部103Cは、現在時刻を取得し、メインメモリ等の記憶装置に格納する(ステップS43)。現在時刻は、例えば業務システム1の図示しないシステム時計から取得する。また、総滞留時間算出部103Cは、共通ステータステーブル9Cから前回時刻、前回総滞留時間及びメッセージ数を読み出し、メインメモリ等の記憶装置に格納する(ステップS45)。   First, the business processing unit 101C of the business processing process 11C extracts one message and the storage time of the message from the queue 7C according to the FIFO method, and stores them in a storage device such as a main memory (FIG. 10: Step S41). . Then, the total residence time calculation unit 103C acquires the current time and stores it in a storage device such as a main memory (step S43). The current time is acquired from, for example, a system clock (not shown) of the business system 1. The total residence time calculation unit 103C reads the previous time, the previous total residence time, and the number of messages from the common status table 9C, and stores them in a storage device such as a main memory (step S45).

そして、総滞留時間算出部103Cは、キュー7Cについての総滞留時間Tを、T=前回総滞留時間+(現在時刻−前回時刻)×メッセージ数−(現在時刻−格納時刻)として算出し、メインメモリ等の記憶装置に格納する(ステップS47)。また、総滞留時間算出部103Cは、共通ステータステーブル9Cにおいて、前回時刻を現在時刻で更新し、ステップS47で算出した総滞留時間で前回総滞留時間を更新し、メッセージ件数を1減らす(ステップS49)。 The total residence time calculating unit 103C, the total residence time T 3 in the queue 7C, T 3 = previous total residence time + (current time - last time) × number of messages - (current time - storing time) was calculated as Then, it is stored in a storage device such as a main memory (step S47). Further, the total residence time calculation unit 103C updates the previous time with the current time in the common status table 9C, updates the previous total residence time with the total residence time calculated in step S47, and reduces the number of messages by 1 (step S49). ).

そして、業務処理部101Cは、ステップS41において抽出されたメッセージに対して業務処理Cを実施する(ステップS51)。また、プロセス数調節処理部105Cは、TH≦Tであるか判断する(ステップS53)。THは予め設定された閾値である。例えばTHにはある程度大きい値を設定しておき、TH≦Tを満たす場合にはキュー7Cにメッセージが十分に滞留していると判断する。 Then, the business processing unit 101C performs business processing C on the message extracted in step S41 (step S51). Further, the process number adjustment processing unit 105C determines whether TH 5 ≦ T 3 is satisfied (step S53). TH 5 is a preset threshold value. For example TH to 5 have set up relatively large value, it is determined that the message queue 7C is retained sufficiently in the case of satisfying the TH 5 ≦ T 3.

TH≦Tである場合(ステップS53:Yesルート)、プロセス数調節処理部105Cは、業務処理プロセス11Cを新たに1つ起動する(ステップS55)。キュー7Cにおける待ち時間が長くなっていると考えられるため、待ち時間を減らしシステムのスループットを向上させるためである。 When TH 5 ≦ T 3 (step S53: Yes route), the process number adjustment processing unit 105C newly starts one business process 11C (step S55). This is because the waiting time in the queue 7C is considered to be long, so that the waiting time is reduced and the throughput of the system is improved.

一方、TH≦Tでない場合(ステップS53:Noルート)、プロセス数調節処理部105Cは、T<THであるか判断する(ステップS57)。THは予め設定された閾値である。例えばTHにはある程小さい値を設定しておき、T<THを満たす場合にはキュー7Cにはメッセージがほとんど滞留していないと判断する。 On the other hand, when TH 5 ≦ T 3 is not satisfied (step S53: No route), the process number adjustment processing unit 105C determines whether T 3 <TH 6 is satisfied (step S57). TH 6 is a preset threshold value. For example may be set a lower value enough in the TH 6, when satisfying T 3 <TH 6 is in the queue 7C determines that the message is hardly retained.

<THである場合(ステップS57:Yesルート)、プロセス数調節処理部105Cは、当該プロセス数調節処理部105Cを含む業務処理プロセス11Cを停止する(ステップS59)。すなわち、自らを停止する。業務処理プロセス11Cの資源を有効に活用できていないと考えられるため、業務処理プロセス11Cに割り当てる資源を減らすものである。 When T 3 <TH 6 (step S57: Yes route), the process number adjustment processing unit 105C stops the business process 11C including the process number adjustment processing unit 105C (step S59). That is, it stops itself. Since it is considered that the resources of the business process 11C cannot be effectively used, the resources allocated to the business process 11C are reduced.

一方、T<THでない場合(ステップS57:Noルート)、処理を終了する。業務処理プロセス11Cの数は現状のままでも問題ないと考えられるからである。 On the other hand, if T 3 <TH 6 is not satisfied (step S57: No route), the process is terminated. This is because it is considered that there is no problem with the number of the business process 11C as it is.

以上のような処理を実施すれば、例えば業務処理プロセス11Cのように、業務処理後のメッセージをキューに格納しない業務処理プロセスについても、プロセス数を適切に調節することができるようになる。なお、総滞留時間を算出するにあたって業務処理を停止する必要が無いという点、及び業務処理プロセスが自律的にプロセスの数を調節することができるという点はプロセス数調節処理1と同様である。   By performing the processing as described above, the number of processes can be appropriately adjusted even for a business process that does not store a message after the business process in the queue, such as the business process 11C. The point that it is not necessary to stop the business process in calculating the total residence time and the point that the business process can autonomously adjust the number of processes are the same as the process number adjustment process 1.

ここで、図11乃至図16に示した具体例を用いて、本実施の形態に係る総滞留時間の算出方法について説明する。図11乃至図16に示した例では、業務処理プロセスAがメッセージに対して業務処理Aを実行した後、キューに格納する。そして、業務処理プロセスBがメッセージをキューから抽出し、業務処理Bを実行する。   Here, the calculation method of the total residence time according to the present embodiment will be described using the specific examples shown in FIGS. In the example shown in FIGS. 11 to 16, the business process A performs the business process A on the message and then stores it in the queue. Then, the business process B extracts the message from the queue and executes the business process B.

まず、図11の時点(現在時刻が9:00)において、業務処理プロセスAがメッセージ1をキューに格納する。このとき、総滞留時間を、0分+(9:00−8:50)×0=0分として算出する。そして、共通ステータステーブルにおいて、前回総滞留時間を「0分」で、前回時刻を「9:00」で、メッセージ数を「1」で更新する。   First, at the time of FIG. 11 (current time is 9:00), the business process A stores the message 1 in the queue. At this time, the total residence time is calculated as 0 minutes + (9: 00-8: 50) × 0 = 0 minutes. In the common status table, the previous total dwell time is updated to “0 minutes”, the previous time is updated to “9:00”, and the number of messages is updated to “1”.

また、図12の時点(現在時刻が9:10)において、業務処理プロセスAがメッセージ2をキューに格納する。このとき、総滞留時間を、0分+(9:10−9:00)×1=10分として算出する。そして、共通ステータステーブルにおいて、前回総滞留時間を「10分」で、前回時刻を「9:10」で、メッセージ数を「2」で更新する。   Also, at the time of FIG. 12 (current time is 9:10), the business process A stores the message 2 in the queue. At this time, the total residence time is calculated as 0 minute + (9: 10−9: 00) × 1 = 10 minutes. In the common status table, the previous total dwell time is updated to “10 minutes”, the previous time is updated to “9:10”, and the number of messages is updated to “2”.

さらに、図13の時点(現在時刻が9:30)において、業務処理プロセスAがメッセージ3をキューに格納する。このとき、総滞留時間を、10分+(9:30−9:10)×2=50分として算出する。そして、共通ステータステーブルにおいて、前回総滞留時間を「50分」で、前回時刻を「9:30」で、メッセージ数を「3」で更新する。   Further, at the time of FIG. 13 (current time is 9:30), the business process A stores the message 3 in the queue. At this time, the total residence time is calculated as 10 minutes + (9: 30-9: 10) × 2 = 50 minutes. In the common status table, the previous total residence time is updated to “50 minutes”, the previous time is updated to “9:30”, and the number of messages is updated to “3”.

一方、図14の時点(現在時刻が10:00)において、業務処理プロセスBがメッセージ1をキューから抽出する。なお、最も先に格納されたメッセージがメッセージ1であるため、メッセージ1が抽出されている。このとき、総滞留時間を、50分+(10:00−9:30)×3−(10:00−9:00)=80分として算出する。そして、共通ステータステーブルにおいて、前回総滞留時間を「80分」で、前回時刻を「10:00」で、メッセージ数を「2」で更新する。   On the other hand, at the time of FIG. 14 (current time is 10:00), the business process B extracts the message 1 from the queue. Since the message stored first is message 1, message 1 is extracted. At this time, the total residence time is calculated as 50 minutes + (10: 00-9: 30) × 3- (10: 00−9: 00) = 80 minutes. In the common status table, the previous total residence time is updated to “80 minutes”, the previous time is updated to “10:00”, and the number of messages is updated to “2”.

また、図15の時点(現在時刻が10:10)において、業務処理プロセスBがメッセージ2をキューから抽出する。なお、メッセージ2とメッセージ3とではメッセージ2の方が先に格納されているので、メッセージ2が抽出されている。このとき、総滞留時間を、80分+(10:10−10:00)×2−(10:10−9:10)=40分として算出する。そして、共通ステータステーブルにおいて、前回総滞留時間を「40分」で、前回時刻を「10:10」で、メッセージ数を「1」で更新する。   Further, at the time of FIG. 15 (current time is 10:10), the business process B extracts the message 2 from the queue. Since message 2 is stored first in message 2 and message 3, message 2 is extracted. At this time, the total residence time is calculated as 80 minutes + (10: 10-10: 00) × 2- (10: 10-9: 10) = 40 minutes. In the common status table, the previous total dwell time is updated to “40 minutes”, the previous time is updated to “10:10”, and the number of messages is updated to “1”.

そして、図16の時点(現在時刻が10:30)において、業務処理プロセスBがメッセージ3をキューから抽出する。このとき、総滞留時間を、40分+(10:30−10:10)×1−(10:30−9:30)=0分として算出する。そして、共通ステータステーブルにおいて、前回総滞留時間を「0分」で、前回時刻を「10:30」で、メッセージ数を「0」で更新する。   Then, at the time of FIG. 16 (current time is 10:30), the business process B extracts the message 3 from the queue. At this time, the total residence time is calculated as 40 minutes + (10: 30−10: 10) × 1− (10: 30−9: 30) = 0 minutes. Then, in the common status table, the previous total residence time is updated to “0 minutes”, the previous time is updated to “10:30”, and the number of messages is updated to “0”.

このようにメッセージの抽出及び格納時に共通ステータステーブルを更新し、キューについての総滞留時間を算出する。   In this way, the common status table is updated during message extraction and storage, and the total residence time for the queue is calculated.

次に、図17及び図18に示した具体例を用いて、本実施の形態に係るプロセス数調節処理によりキューの総滞留時間を適切な状態に調整する方法の一例を示す。なお、図17及び図18のシステムは、図2に示したシステムを簡略化して示したものである。   Next, using the specific examples shown in FIGS. 17 and 18, an example of a method for adjusting the total residence time of the queue to an appropriate state by the process number adjustment processing according to the present embodiment will be described. Note that the systems shown in FIGS. 17 and 18 are simplified from the system shown in FIG.

まず、図17を用いて、キュー7A、キュー7B及びキュー7Cの総滞留時間がいずれも長い状態にあるケースにおいて、全てのキューの総滞留時間を適切な状態に調節する方法の一例を示す。例えば、業務処理プロセス11Cが、キュー7Cの総滞留時間が長い状態にあると判断し、業務処理プロセス11Cを新たに起動してプロセス数を増やす(図17の第1段階)。これにより、キュー7Cの総滞留時間は短くなる。すると、業務処理プロセス11Bは、キュー7Bの総滞留時間が長く且つキュー7Cの総滞留時間が短い状態にあると判断し、業務処理プロセス11Bを新たに起動してプロセス数を増やす(図17の第2段階)。これにより、キュー7Cにメッセージが格納される頻度が高くなるのでキュー7Cの総滞留時間が少し長くなって適切な状態になり、一方でキュー7Bの総滞留時間は短くなる。すると、業務処理プロセス11Aは、キュー7Aの総滞留時間が長く且つキュー7Bの総滞留時間が短い状態にあると判断し、業務処理プロセス11Aを新たに起動してプロセス数を増やす(図17の第3段階)。これにより、キュー7Bにメッセージが格納される頻度が高くなるのでキュー7Bの総滞留時間は少し長くなって適切な状態になり、一方でキュー7Aの総滞留時間も適切な状態に調整される(図17の第4段階)。すなわち、全てのキューの総滞留時間が適切な状態に調整される。   First, an example of a method for adjusting the total residence time of all the queues to an appropriate state in the case where the total residence times of the queue 7A, the queue 7B, and the queue 7C are all long will be described with reference to FIG. For example, the business process 11C determines that the total residence time of the queue 7C is long, and starts the business process 11C newly to increase the number of processes (first stage in FIG. 17). This shortens the total residence time of the queue 7C. Then, the business process 11B determines that the total residence time of the queue 7B is long and the total residence time of the queue 7C is short, and the business process 11B is newly activated to increase the number of processes (FIG. 17). Second stage). As a result, the frequency at which messages are stored in the queue 7C is increased, so that the total residence time of the queue 7C becomes a little longer and becomes an appropriate state, while the total residence time of the queue 7B becomes shorter. Then, the business process 11A determines that the total residence time of the queue 7A is long and the total residence time of the queue 7B is short, and the business process 11A is newly activated to increase the number of processes (FIG. 17). (3rd stage). As a result, the frequency at which messages are stored in the queue 7B increases, so that the total residence time of the queue 7B becomes a little longer and becomes an appropriate state, while the total residence time of the queue 7A is also adjusted to an appropriate state ( (4th stage of FIG. 17). That is, the total residence time of all the queues is adjusted to an appropriate state.

逆に、図18を用いて、キュー7A、キュー7B及びキュー7Cの総滞留時間がいずれも短い状態にあるケースにおいて、全てのキューの総滞留時間を適切な状態に調整する方法の一例を示す。例えば、業務処理プロセス11Cが、キュー7Cの総滞留時間が短い状態にあると判断するので、自らが停止し、プロセス数を減らす(図18の第1段階)。これにより、キュー7Cの総滞留時間は長くなる。すると、業務処理プロセス11Bは、キュー7Bの総滞留時間が短く且つキュー7Cの総滞留時間が長い状態にあると判断するので、自らが停止し、プロセス数を減らす(図18の第2段階)。これにより、キュー7Cにメッセージが格納される頻度が低くなるのでキュー7Cの総滞留時間は少し短くなって適切な状態になり、一方でキュー7Bの総滞留時間は長くなる。すると、業務処理プロセス11Aは、キュー7Aの総滞留時間が短く且つキュー7Bの総滞留時間が長い状態にあると判断するので、自らが停止し、プロセス数を減らす(図18の第3段階)。これにより、キュー7Bにメッセージが格納される頻度が低くなるのでキュー7Bの総滞留時間は少し短くなって適切な状態になり、一方でキュー7Aの総滞留時間も適切な状態に調整される(図18の第4段階)。すなわち、全てのキューの総滞留時間が適切な状態に調節される。   Conversely, FIG. 18 shows an example of a method for adjusting the total residence time of all the queues to an appropriate state in a case where the total residence times of the queues 7A, 7B, and 7C are all short. . For example, since the business process 11C determines that the total residence time of the queue 7C is short, it stops itself and reduces the number of processes (first stage in FIG. 18). As a result, the total residence time of the queue 7C becomes longer. Then, since the business process 11B determines that the total residence time of the queue 7B is short and the total residence time of the queue 7C is long, it stops itself and reduces the number of processes (second stage in FIG. 18). . As a result, the frequency at which messages are stored in the queue 7C is reduced, so that the total residence time of the queue 7C is slightly shortened to an appropriate state, while the total residence time of the queue 7B is increased. Then, since the business process 11A determines that the total residence time of the queue 7A is short and the total residence time of the queue 7B is long, it stops itself and reduces the number of processes (third stage in FIG. 18). . As a result, the frequency at which messages are stored in the queue 7B is reduced, so that the total residence time of the queue 7B is shortened to an appropriate state, while the total residence time of the queue 7A is adjusted to an appropriate state ( (Fourth stage in FIG. 18). That is, the total residence time of all the queues is adjusted to an appropriate state.

以上本技術の一実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明した業務システム1の機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。   Although one embodiment of the present technology has been described above, the present technology is not limited to this. For example, the functional block diagram of the business system 1 described above does not necessarily correspond to an actual program module configuration.

また、上で説明した各テーブルの構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。   Further, the configuration of each table described above is an example, and the configuration as described above is not necessarily required. Further, in the processing flow, the processing order can be changed if the processing result does not change. Further, it may be executed in parallel.

また、ステップS25及びS55においては、起動するプロセスは1つではなく、複数であってもよい。   In steps S25 and S55, the number of processes to be activated is not one but may be plural.

また、ステップS29及びS59においては、プロセス数調節処理部が自らを含む業務処理プロセスを停止しているが、プロセス数調節処理部が他の業務処理プロセスの状態を確認し、停止可能な他の業務プロセスを停止するようにしてもよい。   In steps S29 and S59, the process number adjustment processing unit stops the business process including itself. However, the process number adjustment processing unit confirms the status of other business processing processes and can stop other business processing processes. The business process may be stopped.

なお、業務システム1は、図19に示すように、メモリ2501(記憶部)とCPU2503(処理部)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。OS及びWebブラウザを含むアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。このようなコンピュータは、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。   As shown in FIG. 19, the business system 1 includes a memory 2501 (storage unit), a CPU 2503 (processing unit), a hard disk drive (HDD) 2505, a display control unit 2507 connected to a display device 2509, and a removable disk. A drive device 2513 for 2511, an input device 2515, and a communication control unit 2517 for connecting to a network are connected by a bus 2519. Application programs including the OS and the Web browser are stored in the HDD 2505, and are read from the HDD 2505 to the memory 2501 when executed by the CPU 2503. If necessary, the CPU 2503 controls the display control unit 2507, the communication control unit 2517, and the drive device 2513 to perform necessary operations. Further, data in the middle of processing is stored in the memory 2501 and stored in the HDD 2505 if necessary. Such a computer realizes various functions as described above by organically cooperating hardware such as the CPU 2503 and the memory 2501 described above with the OS and necessary application programs.

以上述べた本技術の実施の形態をまとめると以下のようになる。   The embodiments of the present technology described above are summarized as follows.

第1の態様に係るコンピュータ・システムは、メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルと、第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出されたメッセージについての格納時刻と、第1のステータステーブルに格納されている第1の件数、第1の総滞留時間及び第1の算出時刻とに基づき、第1のキューに格納されているメッセージの滞留時間の合計を算出し、第1のステータステーブルにおいて、第1の件数を1減少させ、第1のキューに格納されているメッセージの滞留時間の合計で第1の総滞留時間を更新し、第1の算出時刻を現在時刻で更新する算出手段とを有する。   The computer system according to the first aspect includes a first queue that stores a message in association with a storage time at which the message is stored, and a first number that is the number of messages stored in the first queue. And the first total residence time that is the sum of the residence times of the messages at the time when the previous message was extracted or stored, and the first calculation time that is the time at which the first total residence time was calculated. When a message to be processed is extracted from the first status table and the first queue, the storage time for the extracted message and the first status table stored in the first status table are stored. Based on the number of cases, the first total residence time, and the first calculation time, the total residence time of the messages stored in the first queue is calculated, and the first stay is calculated. In the stable, the first number of cases is decreased by 1, the first total residence time is updated with the total residence time of the messages stored in the first queue, and the first calculation time is updated with the current time. Calculating means.

このような構成であれば、滞留時間の合計を算出するにあたって、第1のキューを検索して全てのメッセージについての格納時刻を取得する処理は不要であり、特定の処理を一時的に停止する必要はないため、特定の処理の効率が向上する。また、メッセージの抽出時に総滞留時間の算出を行うため、総滞留時間を定期的に算出してキューを監視するような必要はなく、監視周期を定めるのが難しいシステム(例えば、受信するメッセージの数が時間帯により大きく変化するシステム等)にも有効である。   With such a configuration, when calculating the total residence time, the process of searching the first queue and acquiring the storage time for all messages is unnecessary, and the specific process is temporarily stopped. Since it is not necessary, the efficiency of a specific process is improved. In addition, since the total residence time is calculated at the time of message extraction, there is no need to periodically calculate the total residence time and monitor the queue, and it is difficult to determine the monitoring cycle (for example, This is also effective for systems in which the number varies greatly depending on the time zone.

また、上で述べた算出手段が、第1のステータステーブルに格納されている第1の総滞留時間に、現在時刻と第1のステータステーブルに格納されている第1の算出時刻との差に第1のステータステーブルに格納されている第1の件数を乗じた値を加え、現在時刻と抽出されたメッセージについての格納時刻との差を差し引くことにより、第1のキューに格納されているメッセージの滞留時間の合計を算出するようにしてもよい。このようにすれば、第1のキューを検索して全てのメッセージについての格納時刻を取得する処理は不要になる。   In addition, the calculation means described above determines the difference between the current time and the first calculation time stored in the first status table in the first total residence time stored in the first status table. The message stored in the first queue is obtained by adding a value obtained by multiplying the first number stored in the first status table and subtracting the difference between the current time and the storage time for the extracted message. The total residence time may be calculated. In this way, it is not necessary to search the first queue and acquire the storage time for all messages.

また、特定の処理がなされた後のメッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第2のキューと、第2のキューに格納されているメッセージの件数である第2の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第2の総滞留時間と当該第2の総滞留時間が算出された時刻である第2の算出時刻とを格納する第2のステータステーブルとをさらに有するようにしてもよい。そして、上で述べた算出手段が、抽出されたメッセージに対して特定の処理がなされた後に、第2のステータステーブルに格納されている第2の件数、第2の総滞留時間及び第2の算出時刻に基づき、第2のキューに格納されているメッセージの滞留時間の合計を算出し、第2のステータステーブルにおいて、第2の件数を1増加させ、第2のキューに格納されているメッセージの滞留時間の合計で第2の総滞留時間を更新し、第2の算出時刻を現在時刻で更新するようにしてもよい。これにより、特定の処理がなされた後のメッセージを格納する第2のキューについても、特定の処理を一時的に停止することなく、滞留時間の合計を算出することができるようになる。   In addition, a second queue that stores a message after a specific process is associated with a storage time at which the message is stored, and a second queue that is the number of messages stored in the second queue. The number of cases and the second total residence time that is the sum of the residence times of the messages at the time when the previous message was extracted or stored and the second calculation time that is the time at which the second total residence time was calculated are stored. You may make it have a 2nd status table further. Then, after the calculation means described above performs a specific process on the extracted message, the second number stored in the second status table, the second total residence time, and the second Based on the calculated time, the total residence time of messages stored in the second queue is calculated, the second number is increased by 1 in the second status table, and the messages stored in the second queue are stored. The second total residence time may be updated with the sum of the residence times, and the second calculation time may be updated with the current time. As a result, the total residence time can be calculated for the second queue that stores the message after the specific processing is performed without temporarily stopping the specific processing.

また、上で述べた算出手段が、第2のステータステーブルに格納されている第2の総滞留時間に、現在時刻と第2のステータステーブルに格納されている第2の算出時刻との差に第2のステータステーブルに格納されている第2の件数を乗じた値を加えることにより、第2のキューに格納されているメッセージの滞留時間の合計を算出するようにしてもよい。このようにすれば、第2のキューを検索して全てのメッセージについての格納時刻を取得する処理は不要になる。   In addition, the calculation means described above determines the difference between the current time and the second calculation time stored in the second status table in the second total residence time stored in the second status table. You may make it calculate the sum total of the residence time of the message stored in the 2nd queue by adding the value which multiplied the 2nd number stored in the 2nd status table. In this way, it is not necessary to search the second queue and acquire the storage time for all messages.

また、特定の処理を実施する1又は複数の処理部をさらに有するようにしてもよい。そして、各処理部が、算出手段と、第1のキューに格納されているメッセージの滞留時間の合計が第1の閾値以上であり且つ第2のキューに格納されているメッセージの滞留時間の合計が第2の閾値未満である場合には処理部を新たに起動し、第1のキューに格納されているメッセージの滞留時間の合計が第1の閾値未満であり且つ第2のキューに格納されているメッセージの滞留時間の合計が第2の閾値以上である場合には処理部の少なくとも1つを停止する調節手段を有するようにしてもよい。例えば、第1のキューについての総滞留時間が長い場合であっても、第2のキューについての総滞留時間が長ければ、処理部の数を増やすことは必ずしも適切ではない。上で述べたような構成であれば、第1のキューについての滞留時間の合計及び第2のキューについての滞留時間の合計を考慮した上で、適切に処理部の数を調節できるようになる。また、別途監視部等を用意してキューの監視を行う必要がなく、特定の処理を実施する処理部の数を当該処理部により自律的に調節することができる。なお、処理部とは、例えば、特定の処理を実施するために、コンピュータ・システムにおいて実行されているプログラム(すなわち、プロセス)である。上で述べた算出手段及び調節手段は、処理部の起動に伴って起動し、上で述べた機能を実現する。   Moreover, you may make it further have the 1 or several process part which performs a specific process. Then, each processing unit calculates the sum of the residence times of the messages stored in the second queue and the sum of the residence times of the messages stored in the first queue is equal to or greater than the first threshold. Is less than the second threshold value, the processing unit is newly activated, and the total residence time of the messages stored in the first queue is less than the first threshold value and stored in the second queue. If the total stay time of the messages being received is equal to or greater than the second threshold value, an adjusting means for stopping at least one of the processing units may be provided. For example, even if the total residence time for the first queue is long, it is not always appropriate to increase the number of processing units if the total residence time for the second queue is long. With the configuration as described above, the number of processing units can be adjusted appropriately in consideration of the total residence time for the first queue and the total residence time for the second queue. . Further, there is no need to prepare a separate monitoring unit or the like to monitor the queue, and the number of processing units that perform specific processing can be autonomously adjusted by the processing unit. Note that the processing unit is, for example, a program (that is, a process) that is executed in a computer system in order to perform specific processing. The calculation unit and the adjustment unit described above are activated when the processing unit is activated, and realize the functions described above.

第2の態様に係る情報処理方法は、メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルとにアクセス可能なコンピュータにより実行される。そして、本情報処理方法は、第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出されたメッセージについての格納時刻と、第1のステータステーブルに格納されている第1の件数、第1の総滞留時間及び第1の算出時刻とに基づき、第1のキューに格納されているメッセージの滞留時間の合計を算出し、第1のステータステーブルにおいて、第1の件数を1減少させ、第1のキューに格納されているメッセージの滞留時間の合計で第1の総滞留時間を更新し、第1の算出時刻を現在時刻で更新するステップを含む。   The information processing method according to the second aspect includes a first queue that stores a message and a storage time at which the message is stored in association with each other, and a first queue that is the number of messages stored in the first queue. And the first total residence time that is the sum of the residence times of the messages at the time when the previous message was extracted or stored, and the first calculation time that is the time at which the first total residence time was calculated. Executed by a computer having access to the first status table. In the information processing method, when a message to be processed is extracted from the first queue, the storage time for the extracted message and the first status table stored in the first status table are stored. Based on the number of cases 1, the first total residence time, and the first calculation time, the total residence time of the messages stored in the first queue is calculated. In the first status table, the first number of cases 1 is updated, the first total residence time is updated with the total residence time of the messages stored in the first queue, and the first calculation time is updated with the current time.

なお、上記方法による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。   A program for causing a computer to perform the processing according to the above method can be created. The program can be a computer-readable storage medium such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, or a hard disk. It is stored in a storage device. The intermediate processing result is temporarily stored in a storage device such as a main memory.

以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。   The following supplementary notes are further disclosed with respect to the embodiments including the above examples.

(付記1)
メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、
前記第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルと、
前記第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出された前記メッセージについての格納時刻と、前記第1のステータステーブルに格納されている前記第1の件数、前記第1の総滞留時間及び前記第1の算出時刻とに基づき、前記第1のキューに格納されているメッセージの滞留時間の合計を算出し、前記第1のステータステーブルにおいて、前記第1の件数を1減少させ、前記第1のキューに格納されているメッセージの滞留時間の合計で前記第1の総滞留時間を更新し、前記第1の算出時刻を現在時刻で更新する算出手段と、
を有するコンピュータ・システム。
(Appendix 1)
A first queue that stores a message in association with a storage time at which the message is stored;
The first total residence time that is the total number of messages stored in the first queue and the total residence time of messages at the time when the previous message was extracted or stored, and the first total A first status table storing a first calculation time which is a time at which the residence time is calculated;
When a message to be processed is extracted from the first queue, the storage time for the extracted message and the first number stored in the first status table, Based on the first total residence time and the first calculation time, a total residence time of messages stored in the first queue is calculated, and in the first status table, the first Calculating means for reducing the number of cases by 1, updating the first total residence time with the total residence time of messages stored in the first queue, and updating the first calculation time with the current time;
A computer system.

(付記2)
前記算出手段が、
前記第1のステータステーブルに格納されている前記第1の総滞留時間に、現在時刻と前記第1のステータステーブルに格納されている前記第1の算出時刻との差に前記第1のステータステーブルに格納されている前記第1の件数を乗じた値を加え、現在時刻と抽出された前記メッセージについての格納時刻との差を差し引くことにより、前記第1のキューに格納されているメッセージの滞留時間の合計を算出する
ことを特徴とする付記1記載のコンピュータ・システム。
(Appendix 2)
The calculating means is
In the first total residence time stored in the first status table, the difference between the current time and the first calculation time stored in the first status table is the first status table. The value stored in the first queue is added, and the difference between the current time and the storage time for the extracted message is subtracted to thereby hold the message stored in the first queue. The computer system according to appendix 1, wherein a total of time is calculated.

(付記3)
前記特定の処理がなされた後のメッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第2のキューと、
前記第2のキューに格納されているメッセージの件数である第2の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第2の総滞留時間と当該第2の総滞留時間が算出された時刻である第2の算出時刻とを格納する第2のステータステーブルと、
をさらに有し、
前記算出手段が、
抽出された前記メッセージに対して前記特定の処理がなされた後に、前記第2のステータステーブルに格納されている前記第2の件数、前記第2の総滞留時間及び前記第2の算出時刻に基づき、前記第2のキューに格納されているメッセージの滞留時間の合計を算出し、前記第2のステータステーブルにおいて、前記第2の件数を1増加させ、前記第2のキューに格納されているメッセージの滞留時間の合計で前記第2の総滞留時間を更新し、前記第2の算出時刻を現在時刻で更新する
ことを特徴とする付記1又は2記載のコンピュータ・システム。
(Appendix 3)
A second queue for storing the message after the specific processing and the storage time when the message is stored in association with each other;
A second total residence time that is the total number of messages stored in the second queue and a total residence time of messages at the time when the previous message was extracted or stored, and the second total A second status table storing a second calculation time which is a time at which the residence time is calculated;
Further comprising
The calculating means is
After the specific processing is performed on the extracted message, based on the second number, the second total residence time, and the second calculation time stored in the second status table Calculating the total residence time of the messages stored in the second queue, incrementing the second number by 1 in the second status table, and storing the messages stored in the second queue The computer system according to claim 1 or 2, wherein the second total residence time is updated with a total of the residence times, and the second calculation time is updated with the current time.

(付記4)
前記算出手段が、
前記第2のステータステーブルに格納されている前記第2の総滞留時間に、現在時刻と前記第2のステータステーブルに格納されている前記第2の算出時刻との差に前記第2のステータステーブルに格納されている前記第2の件数を乗じた値を加えることにより、前記第2のキューに格納されているメッセージの滞留時間の合計を算出する
ことを特徴とする付記3記載のコンピュータ・システム。
(Appendix 4)
The calculating means is
In the second total residence time stored in the second status table, the difference between the current time and the second calculation time stored in the second status table is the second status table. The computer system according to claim 3, wherein the sum of the residence times of the messages stored in the second queue is calculated by adding a value obtained by multiplying the second number stored in the second queue. .

(付記5)
前記特定の処理を実施する1又は複数の処理部
をさらに有し、
各前記処理部が、
前記算出手段と、
前記第1のキューに格納されているメッセージの滞留時間の合計が第1の閾値以上であり且つ前記第2のキューに格納されているメッセージの滞留時間の合計が第2の閾値未満である場合には前記処理部を新たに起動し、前記第1のキューに格納されているメッセージの滞留時間の合計が前記第1の閾値未満であり且つ前記第2のキューに格納されているメッセージの滞留時間の合計が前記第2の閾値以上である場合には前記処理部の少なくとも1つを停止する調節手段と、
を有する付記3又は4記載のコンピュータ・システム。
(Appendix 5)
And further comprising one or more processing units for performing the specific processing,
Each of the processing units
The calculating means;
When the total residence time of messages stored in the first queue is greater than or equal to a first threshold and the total residence time of messages stored in the second queue is less than a second threshold The processing unit is newly activated, and the total retention time of messages stored in the first queue is less than the first threshold and the retention of messages stored in the second queue Adjusting means for stopping at least one of the processing units when the total time is equal to or greater than the second threshold;
The computer system according to appendix 3 or 4, which has the following.

(付記6)
処理負荷を把握するためのプログラムであって、
メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出された前記メッセージについての格納時刻と、前記第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルに格納されている前記第1の件数、前記第1の総滞留時間及び前記第1の算出時刻とに基づき、前記第1のキューに格納されているメッセージの滞留時間の合計を算出し、前記第1のステータステーブルにおいて、前記第1の件数を1減少させ、前記第1のキューに格納されているメッセージの滞留時間の合計で前記第1の総滞留時間を更新し、前記第1の算出時刻を現在時刻で更新するステップ
をコンピュータに実行させるためのプログラム。
(Appendix 6)
A program for grasping the processing load,
When a message to be subjected to a specific process is extracted from the first queue that stores the message and the storage time at which the message is stored, the storage time for the extracted message, The first total residence time that is the total number of messages stored in the first queue and the total residence time of messages at the time when the previous message was extracted or stored, and the first total residence time Based on the first number, the first total residence time, and the first calculation time stored in the first status table that stores the first calculation time that is the time at which the time is calculated. , The total residence time of the messages stored in the first queue is calculated, and the first number is decreased by 1 in the first status table, and the first A program for updating the first total residence time by the total residence time of the message stored in a queue to execute a step of updating the first calculated time at the current time to the computer.

(付記7)
メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、前記第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルとにアクセス可能なコンピュータにより実行される情報処理方法であって、
前記第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出された前記メッセージについての格納時刻と、前記第1のステータステーブルに格納されている前記第1の件数、前記第1の総滞留時間及び前記第1の算出時刻とに基づき、前記第1のキューに格納されているメッセージの滞留時間の合計を算出し、前記第1のステータステーブルにおいて、前記第1の件数を1減少させ、前記第1のキューに格納されているメッセージの滞留時間の合計で前記第1の総滞留時間を更新し、前記第1の算出時刻を現在時刻で更新するステップ
を含む情報処理方法。
(Appendix 7)
A first queue that stores a message in association with a storage time at which the message is stored, a first number that is the number of messages stored in the first queue, and a previous message are extracted or stored. The first status table that stores the first total residence time that is the sum of the residence times of the messages at the time and the first calculation time that is the time at which the first total residence time is calculated. An information processing method executed by a simple computer,
When a message to be processed is extracted from the first queue, the storage time for the extracted message and the first number stored in the first status table, Based on the first total residence time and the first calculation time, a total residence time of messages stored in the first queue is calculated, and in the first status table, the first Information including a step of reducing the number of cases by 1, updating the first total residence time with the total residence time of messages stored in the first queue, and updating the first calculation time with the current time. Processing method.

1 業務システム
3 受信部
5 送信部
7A,7B,7C キュー
9A,9B,9C 共通ステータステーブル
11A,11B,11C 業務処理プロセス
101A,101B,101C 業務処理部
103A,103B,103C 総滞留時間算出部
105A,105B,105C プロセス数調節処理部
DESCRIPTION OF SYMBOLS 1 Business system 3 Reception part 5 Transmission part 7A, 7B, 7C Queue 9A, 9B, 9C Common status table 11A, 11B, 11C Business processing process 101A, 101B, 101C Business processing part 103A, 103B, 103C Total residence time calculation part 105A , 105B, 105C Process number adjustment processing unit

Claims (7)

メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、
前記第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルと、
前記第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出された前記メッセージについての格納時刻と、前記第1のステータステーブルに格納されている前記第1の件数、前記第1の総滞留時間及び前記第1の算出時刻とに基づき、前記第1のキューに格納されているメッセージの滞留時間の合計を算出し、前記第1のステータステーブルにおいて、前記第1の件数を1減少させ、前記第1のキューに格納されているメッセージの滞留時間の合計で前記第1の総滞留時間を更新し、前記第1の算出時刻を現在時刻で更新する算出手段と、
を有するコンピュータ・システム。
A first queue that stores a message in association with a storage time at which the message is stored;
The first total residence time that is the total number of messages stored in the first queue and the total residence time of messages at the time when the previous message was extracted or stored, and the first total A first status table storing a first calculation time which is a time at which the residence time is calculated;
When a message to be processed is extracted from the first queue, the storage time for the extracted message and the first number stored in the first status table, Based on the first total residence time and the first calculation time, a total residence time of messages stored in the first queue is calculated, and in the first status table, the first Calculating means for reducing the number of cases by 1, updating the first total residence time with the total residence time of messages stored in the first queue, and updating the first calculation time with the current time;
A computer system.
前記算出手段が、
前記第1のステータステーブルに格納されている前記第1の総滞留時間に、現在時刻と前記第1のステータステーブルに格納されている前記第1の算出時刻との差に前記第1のステータステーブルに格納されている前記第1の件数を乗じた値を加え、現在時刻と抽出された前記メッセージについての格納時刻との差を差し引くことにより、前記第1のキューに格納されているメッセージの滞留時間の合計を算出する
ことを特徴とする請求項1記載のコンピュータ・システム。
The calculating means is
In the first total residence time stored in the first status table, the difference between the current time and the first calculation time stored in the first status table is the first status table. The value stored in the first queue is added, and the difference between the current time and the storage time for the extracted message is subtracted to thereby hold the message stored in the first queue. The computer system according to claim 1, wherein a total time is calculated.
前記特定の処理がなされた後のメッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第2のキューと、
前記第2のキューに格納されているメッセージの件数である第2の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第2の総滞留時間と当該第2の総滞留時間が算出された時刻である第2の算出時刻とを格納する第2のステータステーブルと、
をさらに有し、
前記算出手段が、
抽出された前記メッセージに対して前記特定の処理がなされた後に、前記第2のステータステーブルに格納されている前記第2の件数、前記第2の総滞留時間及び前記第2の算出時刻に基づき、前記第2のキューに格納されているメッセージの滞留時間の合計を算出し、前記第2のステータステーブルにおいて、前記第2の件数を1増加させ、前記第2のキューに格納されているメッセージの滞留時間の合計で前記第2の総滞留時間を更新し、前記第2の算出時刻を現在時刻で更新する
ことを特徴とする請求項1又は2記載のコンピュータ・システム。
A second queue for storing the message after the specific processing and the storage time when the message is stored in association with each other;
A second total residence time that is the total number of messages stored in the second queue and a total residence time of messages at the time when the previous message was extracted or stored, and the second total A second status table storing a second calculation time which is a time at which the residence time is calculated;
Further comprising
The calculating means is
After the specific processing is performed on the extracted message, based on the second number, the second total residence time, and the second calculation time stored in the second status table Calculating the total residence time of the messages stored in the second queue, incrementing the second number by 1 in the second status table, and storing the messages stored in the second queue 3. The computer system according to claim 1, wherein the second total residence time is updated with a total of the residence times, and the second calculation time is updated with the current time.
前記算出手段が、
前記第2のステータステーブルに格納されている前記第2の総滞留時間に、現在時刻と前記第2のステータステーブルに格納されている前記第2の算出時刻との差に前記第2のステータステーブルに格納されている前記第2の件数を乗じた値を加えることにより、前記第2のキューに格納されているメッセージの滞留時間の合計を算出する
ことを特徴とする請求項3記載のコンピュータ・システム。
The calculating means is
In the second total residence time stored in the second status table, the difference between the current time and the second calculation time stored in the second status table is the second status table. 4. The computer according to claim 3, wherein the sum of the residence times of the messages stored in the second queue is calculated by adding a value obtained by multiplying the second number stored in the second queue. system.
前記特定の処理を実施する1又は複数の処理部
をさらに有し、
各前記処理部が、
前記算出手段と、
前記第1のキューに格納されているメッセージの滞留時間の合計が第1の閾値以上であり且つ前記第2のキューに格納されているメッセージの滞留時間の合計が第2の閾値未満である場合には前記処理部を新たに起動し、前記第1のキューに格納されているメッセージの滞留時間の合計が前記第1の閾値未満であり且つ前記第2のキューに格納されているメッセージの滞留時間の合計が前記第2の閾値以上である場合には前記処理部の少なくとも1つを停止する調節手段と、
を有する請求項3又は4記載のコンピュータ・システム。
And further comprising one or more processing units for performing the specific processing,
Each of the processing units
The calculating means;
When the total residence time of messages stored in the first queue is greater than or equal to a first threshold and the total residence time of messages stored in the second queue is less than a second threshold The processing unit is newly activated, and the total retention time of messages stored in the first queue is less than the first threshold and the retention of messages stored in the second queue Adjusting means for stopping at least one of the processing units when the total time is equal to or greater than the second threshold;
5. The computer system according to claim 3 or 4, further comprising:
処理負荷を把握するためのプログラムであって、
メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出された前記メッセージについての格納時刻と、前記第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルに格納されている前記第1の件数、前記第1の総滞留時間及び前記第1の算出時刻とに基づき、前記第1のキューに格納されているメッセージの滞留時間の合計を算出し、前記第1のステータステーブルにおいて、前記第1の件数を1減少させ、前記第1のキューに格納されているメッセージの滞留時間の合計で前記第1の総滞留時間を更新し、前記第1の算出時刻を現在時刻で更新するステップ
をコンピュータに実行させるためのプログラム。
A program for grasping the processing load,
When a message to be subjected to a specific process is extracted from the first queue that stores the message and the storage time at which the message is stored, the storage time for the extracted message, The first total residence time that is the total number of messages stored in the first queue and the total residence time of messages at the time when the previous message was extracted or stored, and the first total residence time Based on the first number, the first total residence time, and the first calculation time stored in the first status table that stores the first calculation time that is the time at which the time is calculated. , The total residence time of the messages stored in the first queue is calculated, and the first number is decreased by 1 in the first status table, and the first A program for updating the first total residence time by the total residence time of the message stored in a queue to execute a step of updating the first calculated time at the current time to the computer.
メッセージと当該メッセージが格納された格納時刻とを対応付けて格納する第1のキューと、前記第1のキューに格納されているメッセージの件数である第1の件数と前回メッセージが抽出又は格納された時点におけるメッセージの滞留時間の合計である第1の総滞留時間と当該第1の総滞留時間が算出された時刻である第1の算出時刻とを格納する第1のステータステーブルとにアクセス可能なコンピュータにより実行される情報処理方法であって、
前記第1のキューから特定の処理の対象となるメッセージが抽出された場合には、抽出された前記メッセージについての格納時刻と、前記第1のステータステーブルに格納されている前記第1の件数、前記第1の総滞留時間及び前記第1の算出時刻とに基づき、前記第1のキューに格納されているメッセージの滞留時間の合計を算出し、前記第1のステータステーブルにおいて、前記第1の件数を1減少させ、前記第1のキューに格納されているメッセージの滞留時間の合計で前記第1の総滞留時間を更新し、前記第1の算出時刻を現在時刻で更新するステップ
を含む情報処理方法。
A first queue that stores a message in association with a storage time at which the message is stored, a first number that is the number of messages stored in the first queue, and a previous message are extracted or stored. The first status table that stores the first total residence time that is the sum of the residence times of the messages at the time and the first calculation time that is the time at which the first total residence time is calculated. An information processing method executed by a simple computer,
When a message to be processed is extracted from the first queue, the storage time for the extracted message and the first number stored in the first status table, Based on the first total residence time and the first calculation time, a total residence time of messages stored in the first queue is calculated, and in the first status table, the first Information including a step of reducing the number of cases by 1, updating the first total residence time with the total residence time of messages stored in the first queue, and updating the first calculation time with the current time. Processing method.
JP2009266660A 2009-11-24 2009-11-24 Computer system, information processing method and program Expired - Fee Related JP5482139B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009266660A JP5482139B2 (en) 2009-11-24 2009-11-24 Computer system, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009266660A JP5482139B2 (en) 2009-11-24 2009-11-24 Computer system, information processing method and program

Publications (2)

Publication Number Publication Date
JP2011113139A true JP2011113139A (en) 2011-06-09
JP5482139B2 JP5482139B2 (en) 2014-04-23

Family

ID=44235451

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009266660A Expired - Fee Related JP5482139B2 (en) 2009-11-24 2009-11-24 Computer system, information processing method and program

Country Status (1)

Country Link
JP (1) JP5482139B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013222407A (en) * 2012-04-18 2013-10-28 Bank Of Tokyo-Mitsubishi Ufj Ltd System having flow rate control function

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03118637A (en) * 1989-10-02 1991-05-21 Nec Corp Dynamic job multiplicity control system
JPH08272739A (en) * 1995-03-31 1996-10-18 Hitachi Software Eng Co Ltd Method for improving on-line response

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03118637A (en) * 1989-10-02 1991-05-21 Nec Corp Dynamic job multiplicity control system
JPH08272739A (en) * 1995-03-31 1996-10-18 Hitachi Software Eng Co Ltd Method for improving on-line response

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013222407A (en) * 2012-04-18 2013-10-28 Bank Of Tokyo-Mitsubishi Ufj Ltd System having flow rate control function

Also Published As

Publication number Publication date
JP5482139B2 (en) 2014-04-23

Similar Documents

Publication Publication Date Title
US20080168130A1 (en) Method and system for determining whether to send a synchronous or asynchronous resource request
US20170329655A1 (en) Method and apparatus of unloading out of memory processing flow to user space
EP3575979B1 (en) Query priority and operation-aware communication buffer management
JP2008250370A (en) Information processor and program for information processing
CN111176806A (en) Service processing method, device and computer readable storage medium
CN113656176A (en) Cloud equipment distribution method, device, system, electronic equipment, medium and product
US20070189163A1 (en) Computer system and control, method for the computer system
JP5482139B2 (en) Computer system, information processing method and program
CN114492834A (en) Training method, training device, training equipment, training system and storage medium
JP5509814B2 (en) Job flow management apparatus, management method, and management program
CN110888739B (en) Distributed processing method and device for delayed tasks
WO2012065432A1 (en) Method for implementing timer in multi-core system and multi-core system
CN106293674B (en) Method for automatically increasing and decreasing data consumers and device using method
JP2014191378A (en) Server number adjustment system, method and program
JP2017010358A (en) Control method, control program, and information processing device
JP2012083963A (en) Information processing device, emulation processing program and emulation processing method
JP6354333B2 (en) Information processing apparatus and timer setting method
CN110351223B (en) Timing reminding method, device and computer program medium
CN110825920A (en) Data processing method and device
US10148585B2 (en) Communication control method, information processing apparatus, and storage medium
US20130242994A1 (en) Message relay apparatus and method
JP4089506B2 (en) File sharing system, server and program
JP2008210110A (en) Business system and its execution request management method
JP2006302168A (en) Coprocessor and arithmetic control method therefor
JP7384215B2 (en) Load balancing system, load balancing device, load balancing method, and load balancing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130910

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131107

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140203

R150 Certificate of patent or registration of utility model

Ref document number: 5482139

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees