JP4983636B2 - Transaction apparatus, delay fault analysis apparatus, delay fault analysis method and program - Google Patents
Transaction apparatus, delay fault analysis apparatus, delay fault analysis method and program Download PDFInfo
- Publication number
- JP4983636B2 JP4983636B2 JP2008030519A JP2008030519A JP4983636B2 JP 4983636 B2 JP4983636 B2 JP 4983636B2 JP 2008030519 A JP2008030519 A JP 2008030519A JP 2008030519 A JP2008030519 A JP 2008030519A JP 4983636 B2 JP4983636 B2 JP 4983636B2
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- execution
- time
- total
- unit
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、トランザクションの遅延障害の原因を分析するトランザクション装置、遅延障害分析装置、遅延障害分析方法およびプログラムに関する。 The present invention relates to a transaction apparatus, a delay fault analysis apparatus, a delay fault analysis method, and a program for analyzing the cause of a delay fault of a transaction.
互いに不可分な複数の処理から構成されるトランザクションの遅延障害を検出する方法には、以下の検出方法が知られている。なお、遅延障害は、トランザクションが通常に比べて遅延する障害である。 The following detection methods are known as methods for detecting a delay failure in a transaction composed of a plurality of processes inseparable from each other. Note that a delay failure is a failure in which a transaction is delayed as compared with a normal case.
この検出方法では、トランザクションを構成する処理ごとに閾値となる時間が設定され、その閾値を超える処理を検出した場合に、その処理を有するトランザクションに遅延が発生したと判断している。 In this detection method, a threshold time is set for each process constituting a transaction, and when a process exceeding the threshold is detected, it is determined that a delay has occurred in the transaction having the process.
ここで、閾値は、トランザクション装置の管理者にて手動で設定されていた。このため、トランザクション装置は、遅延障害の発生を正確にまたは全く検出することができない場合があった。例えば、閾値が適切な値に設定されていないと、遅延障害の発生を正確に検出できないし、管理者が閾値を設定し忘れると、遅延障害の発生を全く検出できない。 Here, the threshold value is manually set by the administrator of the transaction apparatus. For this reason, the transaction apparatus may not be able to accurately or completely detect the occurrence of a delay fault. For example, if the threshold value is not set to an appropriate value, the occurrence of the delay fault cannot be detected accurately, and if the administrator forgets to set the threshold value, the occurrence of the delay fault cannot be detected at all.
特許文献1には、管理者がトランザクションを構成する処理ごとに閾値を設定しなくても遅延障害の発生を検出することが可能なトランザクション装置が記載されている。
このトランザクション装置は、先ず、トランザクションの実行時間を計測する。続いて、トランザクション装置は、その実行時間に基づいて、直近の単位時間以前に実行されたトランザクションの実行時間の平均値(過去の実行時間の平均値)と、直近の所定時間内に実行されたトランザクションの実行時間の平均値(直近の実行時間の平均値)とを算出する。そして、トランザクション装置は、過去の実行時間の平均値と直近の実行時間の平均値を比較して、直近の実行時間の平均値が過去の実行時間の平均値を超えると、トランザクションに遅延障害が発生したと判断する。 This transaction apparatus first measures the execution time of a transaction. Subsequently, based on the execution time, the transaction device is executed within the last predetermined time and the average value of the execution time of transactions executed before the latest unit time (the average value of the past execution time). The average value of transaction execution times (the average value of the latest execution times) is calculated. Then, the transaction device compares the average value of the past execution time and the average value of the latest execution time, and if the average value of the latest execution time exceeds the average value of the past execution time, the transaction has a delay failure. Judge that it occurred.
このため、特許文献1に記載のトランザクション装置では、管理者がトランザクションを構成する処理ごとに閾値を設定しなくても遅延障害の発生を検出することができる。このため、遅延障害の発生を正確に検出することが可能になる。
トランザクションの遅延障害の検出とは別に、発生したトランザクションの遅延障害の原因を分析する技術が提案または実用化されている。 Apart from detecting a transaction delay failure, a technique for analyzing the cause of the generated transaction delay failure has been proposed or put into practical use.
トランザクションの遅延障害の原因には、トランザクションの実行時間の増加と、トランザクションの実行の滞留とがある。また、トランザクションの実行の滞留は、トランザクションの処理要求がトランザクションを同時に実行できる実行可能数よりも多くなることで生じることもあるし、トランザクション装置に恒久的な障害が発生し、実行中のトランザクションがストールしたことで発生することもある。また、これらの原因が、同時に発生することもある。 Causes of transaction delay failures include an increase in transaction execution time and retention of transaction execution. Transaction stagnation may occur when the number of transaction processing requests exceeds the number of executable transactions that can be executed at the same time, or when a permanent failure occurs in the transaction device, It may occur due to a stall. Moreover, these causes may occur simultaneously.
なお、トランザクション装置は、スレッドやプロセスなどの処理単位ごとにトランザクションを実行することで、複数のトランザクションを同時に実行する。この処理単位の数が、実行可能数となる。ここで、実行中のトランザクションがストールした場合、そのストール状態のトランザクションが処理単位を専有することとなり、トランザクション装置の処理能力が低下する。具体的には、トランザクションを同時に実行できる実質的な数が減少する。このため、処理要求の数が実行可能数よりも少なくても、トランザクションの実行が滞留される。 The transaction apparatus executes a plurality of transactions simultaneously by executing a transaction for each processing unit such as a thread or a process. The number of processing units is the executable number. Here, when a transaction being executed stalls, the transaction in the stalled state occupies a unit of processing, and the processing capability of the transaction apparatus decreases. Specifically, the substantial number of transactions that can be executed simultaneously is reduced. For this reason, even if the number of processing requests is smaller than the executable number, the execution of the transaction is retained.
上述のトランザクションを構成する処理ごとに閾値となる時間を設定する検出方法や、特許文献1に記載の発明では、トランザクションの実行時間の増加により発生した遅延障害を検出することしかできない。このため、遅延障害が発生した場合に、その遅延障害の原因が、トランザクションの実行時間の増加なのか、それとも、トランザクションの実行の滞留なのかを分析することができないという問題がある。
The detection method for setting a threshold time for each process constituting the above-described transaction and the invention described in
本発明の目的は、上記の課題である、トランザクションの遅延障害の原因を分析することはできないという問題を解決する、トランザクション装置、遅延障害分析装置、遅延障害分析方法およびプログラムを提供することである。 An object of the present invention is to provide a transaction apparatus, a delay fault analysis apparatus, a delay fault analysis method, and a program that solve the above-described problem that the cause of a delay fault of a transaction cannot be analyzed. .
本発明によるトランザクション装置は、トランザクションの処理要求を受け付ける受付手段と、前記受付手段が受け付けた処理要求を待ち行列に滞留する滞留手段と、前記トランザクションを新たに実行することが可能になると、前記滞留手段の待ち行列に保持された処理要求に応じたトランザクションを実行する実行手段と、前記実行手段が前記トランザクションの実行を開始した実行開始時刻を計測する実行制御手段と、前記滞留手段の待ち行列に滞留されている処理要求の滞留数を計測するリクエスト管理手段と、実行制御手段が計測した実行開始時刻と、前記リクエスト管理手段が計測した滞留数とを記憶する情報記憶手段と、前記情報記憶手段に記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記実行時間の増加か、それとも、前記トランザクションの実行の滞留かを分析する分析手段と、を含む。 The transaction apparatus according to the present invention includes a receiving unit that receives a transaction processing request, a staying unit that holds a processing request received by the receiving unit in a queue, and the stay when the transaction is newly executed. An execution means for executing a transaction according to a processing request held in the queue of the means, an execution control means for measuring an execution start time when the execution means starts executing the transaction, and a queue for the staying means. A request management means for measuring the number of staying processing requests, an information storage means for storing the execution start time measured by the execution control means, and the staying number measured by the request management means, and the information storage means The cause of the delay failure of the transaction is based on the information stored in the execution time Or increase, or comprises, an analyzing means for analyzing whether retention of the execution of the transaction.
また、本発明による遅延障害分析装置は、トランザクションの処理要求を受け付け、該処理要求を待ち行列に滞留し、前記トランザクションが新たに実行可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行するトランザクション装置において前記トランザクションの遅延障害の原因を分析する遅延障害分析装置であって、前記トランザクション装置が前記トランザクションの実行を開始した実行開始時刻を計測する実行制御手段と、前記トランザクション装置の待ち行列に滞留されている処理要求の滞留数を計測するリクエスト管理手段と、前記実行制御手段が計測した実行開始時刻と、前記リクエスト管理手段が計測した滞留数と、を記憶する情報記憶手段と、前記情報記憶手段に記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記実行時間の増加か、それとも、前記トランザクションの実行の滞留かを分析する分析手段と、を含む。 The delay fault analysis apparatus according to the present invention accepts a transaction processing request, stays in the queue, and responds to the processing request held in the queue when the transaction can be newly executed. A delay fault analysis apparatus that analyzes a cause of a delay fault of a transaction in a transaction apparatus that executes a transaction, the execution control means for measuring an execution start time at which the transaction apparatus starts executing the transaction, and the transaction apparatus Information storage means for storing the request management means for measuring the staying number of processing requests staying in the queue, the execution start time measured by the execution control means, and the staying number measured by the request management means And based on the information stored in the information storage means , The cause of the delay fault of the transaction, or an increase of the execution time, or, including, an analysis unit for analyzing whether retention of the execution of the transaction.
また、本発明による遅延障害分析方法は、トランザクションの処理要求を受け付け、
前記受け付けられた処理要求を待ち行列に滞留し、前記トランザクションを新たに実行することが可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行し、前記トランザクションの実行が開始された実行開始時刻を計測し、前記待ち行列に滞留されている処理要求の滞留数を計測し、前記計測された実行開始時刻および滞留数を記憶し、前記記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記実行時間の増加か、それとも、前記トランザクションの実行の滞留かを分析する。
The delay fault analysis method according to the present invention accepts a transaction processing request,
When the accepted processing request stays in the queue and the transaction can be newly executed, the transaction corresponding to the processing request held in the queue is executed, and the execution of the transaction is started. The execution start time is measured, the number of stays of the processing request staying in the queue is measured, the measured execution start time and the stay number are stored, and the transaction is based on the stored information. It is analyzed whether the cause of the delay failure is the increase in the execution time or the stay of the execution of the transaction.
また、本発明によるプログラムは、トランザクションの遅延障害の分析をコンピュータに実行させるプログラムであって、トランザクションの処理要求を受け付ける手順と、前記受け付けられた処理要求を待ち行列に滞留する手順と、前記トランザクションを新たに実行することが可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行する手順と、前記トランザクションの実行が開始された実行開始時刻を計測する手順と、前記待ち行列に滞留されている処理要求の滞留数を計測する手順と、前記計測された実行開始時刻および滞留数を記憶する手順と、前記記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記実行時間の増加か、それとも、前記トランザクションの実行の滞留かを分析する手順と、を前記コンピュータに実行させる。 Further, a program according to the present invention is a program for causing a computer to analyze a transaction delay fault, a procedure for receiving a transaction processing request, a procedure for retaining the received processing request in a queue, and the transaction Can be newly executed, a procedure for executing a transaction according to a processing request held in the queue, a procedure for measuring an execution start time at which execution of the transaction is started, and the queue Based on the procedure for measuring the number of stays of processing requests staying in the process, the step of storing the measured execution start time and the number of stays, and the stored information, the cause of the delay failure of the transaction is Whether the execution time increases or the execution of the transaction remains A step of, the causes the computer to perform.
本発明によれば、遅延障害の原因を分析することが可能になる。 According to the present invention, it is possible to analyze the cause of a delay fault.
以下、本発明の実施形態について図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明の第一の実施形態のトランザクションシステムを示したブロック図である。図1において、トランザクションシステムは、サーバコンピュータ1(トランザクション装置)と、複数のクライアント端末2と、運用管理端末3とを含む。ここで、サーバコンピュータ1は、クライアント端末2と運用管理端末3のそれぞれに、ネットワークNを介して相互に接続される。
FIG. 1 is a block diagram showing a transaction system according to the first embodiment of the present invention. In FIG. 1, the transaction system includes a server computer 1 (transaction apparatus), a plurality of
サーバコンピュータ1は、クライアント端末2からトランザクションの処理要求を受け付け、その処理要求に応じたトランザクションを実行し、その実行結果を処理要求に応じた応答情報としてクライアント端末2に送信する。また、サーバコンピュータ1は、運用管理端末3と任意の情報を送受信する。
The
なお、トランザクションシステムは、図1で示した形態に限らず、サーバコンピュータ1が処理要求を受け付け、その処理要求に応じたトランザクションを実行するように動作するものであればよい。
The transaction system is not limited to the form shown in FIG. 1, and any transaction system may be used as long as the
クライアント端末2は、トランザクションの処理要求をサーバコンピュータ1に送信し、その処理要求に応じた応答情報をサーバコンピュータ1から受信する。なお、クライアント端末2は、クライアントアプリケーションプログラムをCPUに実行させることで、上記の処理を行っているものとする。
The
運用管理端末3は、サーバコンピュータ1の管理者にて使用され、サーバコンピュータ1の制御および管理を行なう。
The
以下、サーバコンピュータ1について詳細に説明する。
Hereinafter, the
サーバコンピュータ1では、トランザクションを実行するためのサーバアプリケーションプログラム(以下、サーバアプリケーションと略す)に従ってCPUがトランザクションを実行する。サーバアプリケーションは、一つでも複数でもよい。なお、各サーバアプリケーションには、実行可能なトランザクションの種別が定められている。
In the
また、サーバアプリケーションは、一つまたは複数の処理単位を有し、CPUは、その処理単位ごとにトランザクションを独立に実行する。なお、処理単位は、例えば、スレッドまたはプロセスなどである。本実施形態では、サーバアプリケーションは、複数あり、各サーバアプリケーションは、複数の処理単位を有するものとする。また、処理単位は、スレッドであるとする。 The server application has one or a plurality of processing units, and the CPU executes a transaction independently for each processing unit. Note that the processing unit is, for example, a thread or a process. In the present embodiment, there are a plurality of server applications, and each server application has a plurality of processing units. The processing unit is assumed to be a thread.
図2は、サーバコンピュータ1の構成例を示したブロック図である。図2において、サーバコンピュータ1は、記憶装置1Aと、演算装置1Bとを含む。
FIG. 2 is a block diagram illustrating a configuration example of the
記憶装置1Aは、例えば、ハードディスクであり、トランザクションの遅延障害の原因を分析するためデータベースである管理表を記憶する管理表記憶部11を含む。
The
演算装置1Bは、CPUであり、CPUにて読み取り可能な記録媒体からプログラムを読み取り、読み取ったプログラムを実行して、リクエスト受付部12と、キュー制御部13と、サーバアプリケーション部14と、トランザクション制御部15と、情報管理部16と、障害分析部17と、障害対応部18とを実現する。ここで、記録媒体は、記憶装置1Aでもよいし、他のものでもよい。
The arithmetic device 1B is a CPU, reads a program from a recording medium readable by the CPU, executes the read program, a
また、管理表記憶部11、トランザクション制御部15、情報管理部16、障害分析部17および障害対応部18は、トランザクションの遅延障害を分析する遅延障害分析装置を構成する。
The management
なお、演算装置1Bには、トランザクションの遅延障害の原因を分析する機能の他に、一般的なサーバコンピュータが備える機能なども有しているが、それらの機能は本発明と直接関係しないので、その説明は省略する。また、記憶装置1Aには、管理表の他に、演算装置1Bが一般的なサーバコンピュータが備える機能を実現するために必要な情報を記憶しているが、その情報は本発明と直接関係しないので、その情報の説明は省略する。
In addition to the function of analyzing the cause of the transaction delay failure, the arithmetic device 1B also has a function of a general server computer, but these functions are not directly related to the present invention. The description is omitted. In addition to the management table, the
以下、記憶装置1Aおよび演算装置1Bの各部について詳細に説明する。
Hereinafter, each part of the
記憶装置1Aの管理表記憶部11は、情報記憶手段の一例である。管理表記憶部11は、管理表として、トランザクション実行時間管理表と、リクエスト受付情報管理表と、サーバアプリケーション状態管理表とを記憶する。
The management
トランザクション実行時間管理表(以下、実行時間管理表と略す)では、トランザクションが実行された実行回数と、トランザクションの実行時間の合計時間とが、トランザクションの種別を特定するトランザクション識別子ごとに対応付けられている。 In the transaction execution time management table (hereinafter abbreviated as the execution time management table), the number of times a transaction has been executed and the total transaction execution time are associated with each transaction identifier that identifies the transaction type. Yes.
トランザクションの実行回数としては、直近の単位時間内にトランザクションが実行された回数である直近実行回数と、直近の単位時間以前にトランザクションが実行された回数である全実行回数とがある。 As the number of executions of a transaction, there are a most recent execution number that is the number of times a transaction has been executed within the latest unit time, and a total execution number that is the number of times that a transaction has been executed before the most recent unit time.
また、トランザクションの実行時間の合計時間としては、トランザクションの実行時間の直近の単位時間内の合計である直近合計時間と、トランザクションの実行時間の直近の単位時間以前の合計である全合計時間とがある。なお、単位時間は、固定でもよいし、可変でもよい。 The total transaction execution time includes the latest total time within the unit time immediately preceding the transaction execution time and the total total time before the unit time immediately before the transaction execution time. is there. The unit time may be fixed or variable.
図3は、実行時間管理表の一例を示した説明図である。図3において、実行時間管理表100は、トランザクション識別子101と、トランザクション実行回数(全体)102と、トランザクション実行時間合計(全体)103と、トランザクション実行回数(直近)104と、トランザクション実行時間合計(直近)105とを含む。
FIG. 3 is an explanatory diagram showing an example of the execution time management table. In FIG. 3, the execution time management table 100 includes a
トランザクション識別子101は、トランザクションの種別を特定するための情報である。トランザクション実行回数(全体)102は、全実行回数の一例である。トランザクション実行時間合計(全体)103は、全合計時間の一例である。トランザクション実行回数(直近)104は、直近実行回数の一例である。トランザクション実行時間合計(直近)105は、直近合計時間の一例である。
The
図2に戻る。リクエスト受付情報管理表(以下、受付情報管理表と略す)では、処理要求が受け付けられた受付回数と、トランザクションの滞留数とが、処理要求に応じたトランザクションを実行可能なサーバアプリケーションを特定するサーバアプリケーション識別子ごとに対応付けられている。 Returning to FIG. In the request reception information management table (hereinafter abbreviated as reception information management table), the number of receptions of processing requests and the number of staying transactions specify a server application that can execute a transaction according to the processing request. Corresponds to each application identifier.
受付回数には、サーバコンピュータ1が直近の所定時間内に処理要求を受け付けた回数である直近受付回数と、サーバコンピュータ1が直近の所定時間以前に処理要求を受け付けた回数の単位時間当たりの平均値である平均受付回数とがある。また、滞留数は、後述するキュー制御部13の待ち行列に滞留されている処理要求の数である。
The number of times of reception is the average number of times the
なお、所定時間は、単位時間と同じでもよいし異なっていてもよいが、本実施形態では、所定時間は、単位時間と同じであるとし、所定時間を単位時間と称する
図4は、受付情報管理表の一例を示した説明図である。図4において、受付情報管理表200は、サーバアプリケーション識別子201と、単位時間当たりのリクエスト受付回数平均(全体)202と、リクエスト受付回数(直近)203と、キュー滞留リクエスト数204とを含む。
Although the predetermined time may be the same as or different from the unit time, in the present embodiment, the predetermined time is assumed to be the same as the unit time, and the predetermined time is referred to as a unit time. It is explanatory drawing which showed an example of the management table. In FIG. 4, the reception information management table 200 includes a server application identifier 201, a request reception average (total) 202 per unit time, a request reception frequency (most recent) 203, and a queue
単位時間当たりのリクエスト受付回数平均(全体)202は、平均受付回数の一例である。リクエスト受付回数(直近)203は、直近受付回数の一例である。キュー滞留リクエスト数204は、滞留数の一例である。
The average number of received requests per unit time (overall) 202 is an example of the average number of received requests. The request reception count (nearest) 203 is an example of the latest reception count. The queue
図2に戻る。サーバアプリケーション状態管理表(以下、状態管理表と略す)では、トランザクション識別子と、サーバコンピュータ1がトランザクションの実行を開始した実行開始時刻とが、トランザクションを実行可能な処理単位を特定する処理識別子ごとに対応付けられている。なお、実行が終了したトランザクションの実行開始時刻は、クリアされている。
Returning to FIG. In the server application state management table (hereinafter abbreviated as a state management table), a transaction identifier and an execution start time when the
処理識別子は、トランザクションを実行可能なサーバアプリケーション識別子と、サーバアプリケーションの処理単位を特定する処理単位識別子とからなる。ここで、処理単位識別子は、サーバアプリケーションごとに一意に定められていればよい。 The processing identifier includes a server application identifier that can execute a transaction and a processing unit identifier that identifies a processing unit of the server application. Here, the processing unit identifier only needs to be uniquely determined for each server application.
図5は、状態管理表の一例を示した説明図である。図5において、状態管理表300は、サーバアプリケーション識別子301と、処理単位識別子302と、トランザクション識別子303と、トランザクション開始時間304とを含む。
FIG. 5 is an explanatory diagram showing an example of the state management table. 5, the state management table 300 includes a
サーバアプリケーション識別子301は、サーバアプリケーションを特定する。処理単位識別子は、サーバアプリケーション識別子301の処理単位を特定する。トランザクション識別子303は、トランザクションの種別を特定する。トランザクション開始時間304は、トランザクションの実行開始時刻の一例である。
The
次に、演算装置1Bの各部について詳細に説明する。 Next, each part of the arithmetic unit 1B will be described in detail.
リクエスト受付部12は、受付手段の一例である。リクエスト受付部12は、クライアント端末2からトランザクションの処理要求を受け付ける。トランザクションの処理要求は、実行を要求するトランザクションの種別を特定するトランザクション識別子を含む。
The
キュー制御部13は、滞留手段の一例である。キュー制御部13は、リクエスト受付部12が受け付けた処理要求を、キュー制御部13自身が保持している待ち行列に滞留する。このとき、キュー制御部13は、トランザクションの種別ごとに待ち行列を保持し、処理要求を、その処理要求に応じたトランザクションの種別の待ち行列に滞留する。
The
サーバアプリケーション部14は、実行手段の一例であり、サーバアプリケーションにて実現される。
The
サーバアプリケーション部14は、トランザクションを実行し、その実行結果に応じた応答情報をクライアント端末2に送信する。ここで、サーバアプリケーション部14は、トランザクションの種別ごとに、その種別のトランザクションを実行可能なサーバアプリケーションが有する処理単位の数だけ、トランザクションを同時に実行することが可能である。
The
トランザクション制御部15は、実行制御手段の一例である。トランザクション制御部15は、サーバアプリケーション部14によるトランザクションの実行を制御する。
The
具体的には、トランザクション制御部15は、サーバアプリケーション部14でトランザクションを実行中でない処理単位があるか否かを判断する。以下、トランザクションを実行中でない処理単位を、空きスレッドと称する。
Specifically, the
トランザクション制御部15は、空きスレッドがあると、サーバアプリケーション部14にてトランザクションが新たに実行可能であると判断する。そして、トランザクション制御部15は、空きスレッドで実行可能なトランザクションの種別の待ち行列から処理要求を取得し、その取得した処理要求をサーバアプリケーション部14に渡す。サーバアプリケーション部14は、処理要求を受け付けると、その処理要求に応じたトランザクションを実行する。
When there is an empty thread, the
これにより、サーバアプリケーション部14は、トランザクションを新たに実行することが可能になると、キュー制御部13の待ち行列に保持された処理要求に応じたトランザクションを実行することになる。
Thus, when the
また、トランザクション制御部15は、サーバアプリケーション部14がトランザクションの実行を開始した時刻を実行開始時刻として計測する。
Further, the
情報管理部16は、管理表記憶部11内の情報を管理する。
The
図6は、情報管理部16の構成例を示したブロック図である。図6において、情報管理部16は、リクエスト管理部161と、実行時間管理部162と、状態管理部163とを含む。
FIG. 6 is a block diagram illustrating a configuration example of the
リクエスト管理部161は、管理表記憶部11内の受付情報管理表を管理する。具体的には、リクエスト管理部161は、以下の処理を行う。
The
リクエスト管理部161は、サーバアプリケーションを特定するサーバアプリケーション識別子と、そのサーバアプリケーションが実行可能なトランザクションの種別を特定するトランザクション識別子との対応関係を示した対応情報を保持する。
The
リクエスト管理部161は、その対応情報から、リクエスト受付部12が受け付けた処理要求内のトランザクション識別子に対応するサーバアプリケーション識別子を割り出す。そして、リクエスト管理部161は、リクエスト受付部12が処理要求を受け付けた受付回数と、キュー制御部13の待ち行列が保持している処理要求の滞留数とを、その割り出したサーバアプリケーション識別子ごとに計測する。ここで、リクエスト管理部161は、受付回数として、直近受付回数および平均受付回数を計測する。
The
リクエスト管理部161は、計測した受付回数および滞留数をそのアプリケーション識別子と対応付けて管理表記憶部11内の受付情報管理表に記憶する。
The
実行時間管理部162は、管理表記憶部11内の実行時間管理表を管理する。具体的には、実行時間管理部162は、以下の処理を行う。
The execution
実行時間管理部162は、サーバアプリケーション部14によるトランザクションの実行時間の合計時間と、そのトランザクションの実行回数とを、トランザクション識別子ごとに計測する。ここで、実行時間管理部162は、実行時間の合計時間として、全合計時間および直近合計時間を計測し、実行回数として、全実行回数および直近実行回数を計測する。
The execution
実行時間管理部162は、計測した実行時間の合計時間および実行回数を、そのトランザクション識別子と対応付けて管理表記憶部11内の実行時間管理表に記憶する。
The execution
状態管理部163は、管理表記憶部11内の実行時間管理表を管理する。具体的には、状態管理部163は、以下の処理を行う。
The
状態管理部163は、サーバアプリケーション部14がトランザクションの実行を開始すると、トランザクション制御部15が計測した実行開始時刻と、そのトランザクションの種別を特定するトランザクション識別子とを、そのトランザクションを実行した処理単位を特定する処理識別子に対応付けて、管理表記憶部11内の状態管理表に記憶する。
When the
また、状態管理部163は、サーバアプリケーション部14がトランザクションの実行を終了すると、管理表記憶部11に記憶された状態管理表から、トランザクションの実行を終了した処理単位を特定する処理識別子に対応するトランザクション識別子および実行開始時刻をクリアする。
In addition, when the
また、情報管理部16は、運用管理者から管理表記憶部11に記憶された各管理表をリセットする旨のリセット要求を受け付けると、管理表記憶部11内の管理表をリセット(削除)する。ここで、情報管理部16において、リクエスト管理部161が受付情報管理表をリセットし、実行時間管理部162が実行時間管理表をリセットし、状態管理部163が状態管理表をリセットする。なお、実行時間管理部162は、実行時間管理表の全体をリセットしてもよいし、運用管理者にて指定されたトランザクション識別子の行のみをリセットしてもよい。
In addition, upon receiving a reset request for resetting each management table stored in the management
また、管理者は、運用管理端末3を用いて情報管理部16にリセット要求を入力してもよいし、サーバコンピュータ1に直接接続されたキーボードなどの入力装置(図示せず)を用いて情報管理部16にリセット要求を入力してもよい。なお、運用管理者は、例えば、サーバコンピュータ1の稼動環境に変化があった場合に、リセット要求を入力する。これにより、新しい環境に即した遅延障害の原因の分析を行うことが可能になる。
In addition, the administrator may input a reset request to the
障害分析部17は、分析手段の一例である。障害分析部17は、管理表記憶部11に記憶された各管理表に基づいて、トランザクションの遅延障害の原因を分析する。具体的には、障害分析部17は、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加か、処理要求の増加によって生じたトランザクションの実行の滞留か、それとも、トランザクションのストールによって生じたトランザクションの実行の滞留かを分析する。
The
ここで、障害分析部17は、運用管理者からトランザクションの遅延障害の原因を分析する旨の分析要求を受け付けたときや、サーバコンピュータ1などに備わったトランザクションの遅延障害を検出する検出部(図示せず)にて遅延障害が検出され、その検出部から分析要求を受け付けたときなど、任意のタイミングで遅延障害を分析する。
Here, the
なお、分析要求は、遅延障害の分析対象となるサーバアプリケーションを特定するサーバアプリケーション識別子を含む。以下、遅延障害の分析対象となるサーバアプリケーションを対象サーバアプリケーションと称し、対象サーバアプリケーションを特定するサーバアプリケーション識別子を対象サーバアプリケーション識別子と称することもある。また、対象サーバアプリケーションにて実行可能なトランザクションの種別を特定するトランザクション識別子を対象トランザクション識別子と称することもある。 Note that the analysis request includes a server application identifier that identifies a server application to be analyzed for a delay fault. Hereinafter, a server application to be analyzed for a delay fault may be referred to as a target server application, and a server application identifier that identifies the target server application may be referred to as a target server application identifier. In addition, a transaction identifier that specifies the type of transaction that can be executed by the target server application may be referred to as a target transaction identifier.
また、障害分析部17は、対応情報を保持し、その対応情報から、分析要求内の対象サーバアプリケーションに対応する対象トランザクション識別子を割り出すことができる。
Further, the
障害分析部17は、具体的には、以下のように遅延障害の原因を分析する。
Specifically, the
先ず、障害分析部17は、管理表記憶部11内のリクエスト管理表において、分析要求内の対象サーバアプリケーション識別子に対応する滞留数が0以下か否かを確認する。
First, the
障害分析部17は、滞留数が0以下の場合、対象サーバアプリケーション識別子にて特定されるアプリケーションに空きスレッドがあるか否かを確認する。
When the staying number is 0 or less, the
障害分析部17は、空きスレッドがあると、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加であると判断する。なお、障害分析部17は、空きスレッドの確認を行わず、滞留数が0以下であると、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加であると判断してもよい。
If there is an empty thread, the
このとき、情報管理部16が、例えば、トランザクションの開始時および終了時に、管理表記憶部11内の実行時間管理表にCPU使用時間などの追加情報が付加するなどしておき、障害分析部17が、トランザクションの実行時間の増加が、CPU使用時間の増加によって生じたものか、それとも、処理待ち時間の増加によって生じたものなのかなど、遅延障害の原因を絞り込んでもよい。
At this time, the
一方、障害分析部17は、滞留数が1以上の場合、または、滞留数が0以下であり、かつ、空きスレッドがない場合、以下の処理を行う。
On the other hand, when the staying number is 1 or more, or when the staying number is 0 or less and there is no empty thread, the
具体的には、障害分析部17は、管理表記憶部11内の状態管理表において、対象サーバアプリケーション識別子に対応する実行開始時刻の中で、現在時刻までの時間が基準時間以上である実行開始時刻があるか否かを判断する。障害分析部17は、現在時刻までの時間が基準時間以上である実行開始時刻があると、トランザクションの遅延障害の原因が、その実行開始時刻に対応する処理識別子にて特定される処理単位におけるトランザクションのストールによって生じた、トランザクションの実行の滞留であると判断する。
Specifically, the
ここで、基準時間は、運用管理者にて設定されてもよいし、障害分析部17が実行時間管理表に基づいて算出してもよい。例えば、障害分析部17は、全合計時間を全実行回数で除算して実行時間の平均値を算出し、その平均値を基準時間として算出する。
Here, the reference time may be set by the operation manager, or may be calculated by the
情報管理部16が、例えば、トランザクションの開始時および終了時に、状態管理表および実行時間管理表にCPU使用時間などの追加情報などを付加するなどしておき、障害分析部17が、トランザクションがストール状態である原因が、CPUループによって生じたものか、それとも、それ以外のバックエンドの処理待ち等によるものなのかなど、遅延障害の原因を絞り込んでもよい。
The
また、障害分析部17は、管理表記憶部11内の実行時間管理表において、対象トランザクション識別子に対応する直近合計時間を直近実行回数で除算して、サーバアプリケーション部14が直近の単位時間内に実行したトランザクションの実行時間の平均値である直近平均実行時間を算出する。また、障害分析部17は、対象トランザクション識別子に対応する全合計時間を全実行回数で除算して、サーバアプリケーション部14が直近の単位時間以前に実行したトランザクションの実行時間の平均値である全平均実行時間を算出する。
Further, the
障害分析部17は、直近平均実行時間の全平均実行時間に対する増加度合を求め、その増加度合が設定値以上か否かを判断する。ここで、増加度合は、直近平均実行時間および全平均実行時間の差分または比率である。
The
障害分析部17は、その増加度合が設定値以上であると、トランザクション装置の遅延障害の原因が、トランザクションの実行時間の増加であると判断する。また、障害分析部17は、その結果、トランザクションの実行の滞留も発生していると判断する。
The
情報管理部16が、例えば、トランザクションの開始時および終了時に、実行時間管理表にCPU使用時間などの追加情報などを付加するなどしておき、障害分析部17が、トランザクションがストール状態である原因が、CPUループによって生じたものか、それとも、処理待ち時間の増加なのかなど、遅延障害の原因を絞り込んでもよい。
The
また、障害分析部17は、管理表記憶部11内の実行時間管理表において、対象トランザクション識別子に対応する直近受付回数の、対象トランザクション識別子に対応する平均受付回数に対する増加度合を算出する。ここで、増加度合は、直近受付回数および平均受付回数の差分または比率である。
Also, the
障害分析部17は、その増加度合が基準値以上か否かを判断する。なお、基準値は、運用管理者にて設定されてもよいし、障害分析部17は、直近受付回数および全受付回数から求めてもよい。
The
障害分析部17は、その増加度合が基準値以上であると、トランザクションの遅延障害の原因が、処理要求の増加によって生じたトランザクションの実行の滞留であると判断する。
If the increase degree is equal to or greater than the reference value, the
障害対応部18は、障害分析部17の分析結果に応じた、トランザクションの遅延障害に対する対処を行う。
The
例えば、障害対応部18は、障害分析部17にてトランザクションの遅延障害の原因がトランザクションの実行時間の増加であると判断されると、運用管理者への通知や、サーバアプリケーションの処理能力増強、追加の情報採取などを行う。
For example, if the
また、障害対応部18は、障害分析部17にてトランザクションの遅延障害の原因がトランザクションのストールによって生じたトランザクションの実行の滞留であると判断されると、サーバアプリケーションの同時処理可能数の追加、追加の情報採取およびストール状態のトランザクションの強制終了などを行なう。
Further, when the
また、障害対応部18は、障害分析部17にてトランザクションの遅延障害の原因が処理要求の増加によって生じたトランザクションの実行の滞留であると判断すると、サーバアプリケーションの同時処理可能数の追加、追加の情報採取を行う。また、障害対応部18は、待ち行列理論を利用して、最適なサーバアプリケーションの多重度(処理単位の数の上限および下限)を設定するなどしてもよい。
If the
次に動作を説明する。 Next, the operation will be described.
先ず、トランザクションの処理要求を受け付けた際のサーバコンピュータ1の動作を説明する。図7は、この動作を説明するためのシーケンス図である。
First, the operation of the
リクエスト受付部12は、クライアント端末2からトランザクションの処理要求を受け付けると、ステップS1を実行する。
When receiving a transaction processing request from the
ステップS1では、リクエスト受付部12は、処理要求内のトランザクション識別子と、処理要求を受け付けた旨の受付情報とを情報管理部16のリクエスト管理部161に出力する。
In step S <b> 1, the
リクエスト管理部161は、トランザクション識別子および受付情報を受け付けると、保持している対応情報から、そのトランザクション識別子に対応するサーバアプリケーション識別子を割り出し、そのサーバアプリケーション識別子を管理表記憶部11内の受付情報管理表から検索する。
When the
リクエスト管理部161は、そのサーバアプリケーション識別子を見つけると、そのサーバアプリケーション識別子に対応する直近受付回数をインクリメントする。また、リクエスト管理部161は、そのサーバアプリケーション識別子が見つからないと、そのサーバアプリケーションを有する受付情報管理表の行を生成する。このとき、リクエスト管理部161は、その行内の平均受付回数を0とし、直近受付回数を1とし、滞留数を0とする。
When the
また、リクエスト管理部161は、単位時間ごとに、受付情報管理表の平均受付回数を更新する。例えば、リクエスト管理部161は、直近受付回数を平均受付回数に加算し、その加算結果を2で除算する。リクエスト管理部161は、その除算結果を新しい平均受付回数として計測し、受付情報管理表の平均受付回数を、その新しい平均受付回数に更新する。なお、リクエスト管理部161は、この処理をサーバアプリケーション識別子ごとに行う。
In addition, the
また、リクエスト受付部12は、トランザクション識別子および受付情報を出力すると、ステップS2を実行する。
Further, when the
ステップS2では、リクエスト受付部12は、処理要求をキュー制御部13に出力する。
In step S <b> 2, the
キュー制御部13は、処理要求を受け付けると、その処理要求を、処理要求内のトランザクション識別子にて特定されるトランザクションの種別の待ち行列に滞留する。キュー制御部13は、処理要求を滞留すると、ステップS3を実行する。
When receiving the processing request, the
ステップS3では、キュー制御部13は、処理要求内のトランザクション識別子と、処理要求を滞留した旨の滞留情報とを情報管理部16のリクエスト管理部161に出力する。
In step S <b> 3, the
リクエスト管理部161は、トランザクション識別子および滞留情報を受け付けると、保持している対応情報から、そのトランザクション識別子に対応するサーバアプリケーション識別子を割り出し、そのサーバアプリケーション識別子を管理表記憶部11内の受付情報管理表から検索する。リクエスト管理部161は、その検索されたサーバアプリケーション識別子に対応する滞留数をインクリメントして、ステップS3を終了する。
When the
また、トランザクション制御部15は、定期的にステップS4を実行する。
Moreover, the
ステップS4では、トランザクション制御部15は、アプリケーション識別子ごとに、空きスレッドを確認する旨の確認要求を情報管理部16内の状態管理部163に出力する。確認要求は、そのアプリケーション識別子を含む。
In step S4, the
状態管理部163は、確認要求を受け付けると、その確認要求内のアプリケーション識別子を管理表記憶部11内の状態管理表から全て検索する。状態管理部163は、その検索されたアプリケーション識別子に対応付けられた実行開始時刻の中で、クリアされた実行開始時刻があるか否かを確認する。状態管理部163は、クリアされた実行開始時刻があると、空きスレッドがあることを示す確認結果を生成し、クリアされた実行開始時刻がないと、空きスレッドがないことを示す確認結果を生成する。確認結果は、確認要求内のサーバアプリケーションを含む。
When receiving the confirmation request, the
状態管理部163は、その確認結果をトランザクション制御部15に出力する。
The
トランザクション制御部15は、確認結果を受け付けると、その確認結果を確認する。トランザクション制御部15は、その確認結果が空きスレッドがあることを示すと、サーバアプリケーション部14にてトランザクションが新たに実行可能であると判断し、ステップS5を実行する。一方、トランザクション制御部15は、その確認結果が空きスレッドがないことを示すと、サーバアプリケーション部14にてトランザクションが新たに実行可能ではないと判断し、処理を終了する。
When the
ステップS5では、トランザクション制御部15は、確認結果内のサーバアプリケーション識別子にて特定されるサーバプリケーションが実行可能な種別のトランザクションに応じた処理要求を、キュー制御部13の待ち行列から取得する。
In step S <b> 5, the
例えば、トランザクション制御部15は、対応情報を保持し、対応情報から、確認結果内のサーバアプリケーション識別子に対応するトランザクション識別子を割り出す。そして、トランザクション制御部15は、そのトランザクション識別子にて特定されるトランザクションの種別の待ち行列から、その待ち行列内の処理要求を一つ取得する。
For example, the
トランザクション制御部15は、処理要求を取得すると、ステップS6を実行する。
When acquiring the processing request, the
ステップS6では、トランザクション制御部15は、その処理要求内のトランザクション識別子と、滞留数が減少した旨の減少情報とを情報管理部16のリクエスト管理部161に出力する。
In step S6, the
リクエスト管理部161は、トラザクション識別子および減少情報を受け付けると、保持している対応情報から、そのトランザクション識別子に対応するサーバアプリケーション識別子を割り出し、そのサーバアプリケーション識別子を管理表記憶部11内の受付情報管理表から検索する。リクエスト管理部161は、その検索されたサーバアプリケーション識別子に対応する滞留数をディクリメントする。
When the
また、トランザクション制御部15は、トランザクション識別子および減少情報を出力すると、ステップS7を実行する。
Further, when the
ステップS7では、トランザクション制御部15は、処理要求をサーバアプリケーション部14に出力する。
In step S <b> 7, the
サーバアプリケーション部14は、処理要求を受け付けると、その処理要求内のトランザクション識別子にて特定されるトランザクションを、そのトランザクションに対応するサーバアプリケーションの空きスレッドで実行する。
When the
そして、サーバアプリケーション部14は、トランザクションの実行を開始した旨の開始情報をトランザクション制御部15に出力する。なお、開始情報は、実行を開始したトランザクションの種別を特定するトランザクション識別子と、そのトランザクションを実行したスレッドを特定する処理識別子(サーバアプリケーション識別子および処理単位識別子)とを含む。
Then, the
トランザクション制御部15は、開始情報を受け付けると、ステップS8を実行する。
When the
ステップS8では、トランザクション制御部15は、現在の時刻を実行開始時刻として計測し、その実行開始時刻と、開始情報内のトランザクション識別子および処理識別子を情報管理部16内の状態管理部163に出力する。
In step S8, the
状態管理部163は、実行開始時刻、トランザクション識別子および処理識別子を受け付けると、その処理識別子を管理表記憶部11内の状態管理表から検索する。状態管理部163は、その処理識別子を見つけると、その処理識別子に、その実行開始時刻およびトランザクション識別子を対応付けて、管理表記憶部11に記憶して、ステップS8を終了する。
When the
また、サーバアプリケーション部14は、ステップS7で実行を開始したトランザクションが終了すると、ステップS9を実行する。
Moreover, the
ステップS9では、サーバアプリケーション部14は、トランザクションの実行を終了した旨の終了情報と、そのトランザクションに応じた応答情報をトランザクション制御部15に出力する。なお、終了情報は、トランザクションを実行していた処理単位を特定する処理識別子を含む。トランザクション制御部15は、終了情報および応答情報を受け付けると、ステップS10を実行する。
In step S <b> 9, the
ステップS10では、トランザクション制御部15は、現在の時刻を実行終了時刻として計測し、その実行終了時刻と、終了情報内の処理識別子を情報管理部16内の実行時間管理部162に出力する。
In step S <b> 10, the
実行時間管理部162は、実行終了時刻および処理識別子を受け付けると、実行開始時刻を取得する旨の取得要求を状態管理部163に出力する。なお、取得要求は、その処理識別子を含む。
When the execution
状態管理部163は、取得要求を受け付けると、その取得要求内の処理識別子に対応するトランザクション識別子および実行開始時刻を、管理表記憶部11内の状態管理表から取得する。状態管理部163は、その取得したトランザクション識別子および実行開始時刻を実行時間管理部162に出力する。状態管理部163は、トランザクション識別子および実行開始時刻を出力すると、管理表記憶部11内の状態管理表から、その取得要求内の処理識別子に対応するトランザクション識別子および実行開始時刻をクリアする。
When receiving the acquisition request, the
実行時間管理部162は、トランザクション識別子および実行開始時刻を受け付けると、その実行開始時刻から実行終了時刻までの時間を実行時間として計測する。
When receiving the transaction identifier and the execution start time, the execution
実行時間管理部162は、そのトランザクション識別子を管理表記憶部11内の実行時間管理表から検索する。
The execution
実行時間管理部162は、そのトランザクション識別子が見つかると、そのトランザクション識別子に対応する直近合計時間にその計測した実行時間を加算し、かつ、そのトランザクション識別子に対応する直近実行回数をインクリメントする。また、実行時間管理部162は、そのトランザクション識別子が見つからないと、そのトランザクション識別子を有する実行時間管理表の行を生成する。このとき、実行時間管理部162は、その行内の、全実行回数を0とし、全合計時間を0とし、直近実行回数を1とし、直近合計時間を、計測した実行時間とする。
When the transaction identifier is found, the execution
また、実行時間管理部162は、単位時間ごとに、実行時間管理表の全合計時間および全実行回数を更新する。例えば、実行時間管理部162は、直近合計時間を全合計時間に加算し、直近実行回数を全実行回数に加算する。なお、実行時間管理部162は、この処理をトランザクション識別子ごとに行う。
In addition, the execution
また、トランザクション制御部15は、実行終了時刻および処理識別子を情報管理部16内の実行時間管理部162に出力すると、ステップS11を実行する。
When the
ステップS11では、トランザクション制御部15は、ステップS9で受け付けた応答情報を、キュー制御部13を介してリクエスト受付部12に出力する。リクエスト受付部12は、応答情報を受け付けると、ステップS12を実行する。
In step S11, the
ステップS12では、リクエスト受付部12は、応答情報をクライアント端末2に送信して、処理を終了する。
In step S <b> 12, the
次に、トランザクションの遅延障害の原因を分析する際のサーバコンピュータ1の動作について説明する。図8は、この動作を説明するためのシーケンス図である。
Next, the operation of the
ステップS101では、障害分析部17は、運用管理者などから分析要求を受け付ける。その後、ステップS102が実行される。
In step S101, the
ステップS102では、障害分析部17は、管理表記憶部11内のリクエスト管理表から、分析要求内のサーバアプリケーション識別子を検索する。障害分析部17は、その検索されたサーバアプリケーション識別子に対応する滞留数が0以下か否かを確認する。障害分析は、その滞留数が0以下であると、ステップS103を実行し、その滞留数が1以上であると、ステップS105を実行する。
In step S <b> 102, the
ステップS103では、障害分析部17は、管理表記憶部11内の状態管理表から、対象サーバアプリケーション識別子を全て検索し、その検索された対象サーバアプリケーション識別子に対応する実行開始時刻の中で、クリアされた実行開始時刻があるか否かを確認する。障害分析部17は、クリアされている実行開始時刻があると、空きスレッドがあると判断し、クリアされている実行開始時刻がないと、空きスレッドがないと判断する。
In step S103, the
障害分析部17は、空きスレッドがあると、ステップS104を実行し、空きスレッドがないと、ステップS105を実行する。なお、ステップS103は、スキップされてもよい。
The
ステップS104では、障害分析部17は、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加であると判断し、その判断結果を遅延障害の原因の分析結果として障害対応部18に出力する。障害対応部18は、分析結果を受け付けると、ステップS111を実行する。なお、分析結果は、対象サーバアプリケーション識別子を含む。
In step S104, the
また、ステップS105では、障害分析部17は、管理表記憶部11内の状態管理表から、対象サーバアプリケーション識別子に対応する実行開始時刻を全て取得する。障害分析部17は、実行開始時刻ごとに、現在時刻から実行開始時刻を減算して実行中時間を算出する。障害分析部17は、その実行中時間の中で、基準時間以上の実行中時間があるか否かを判断する。障害分析部17は、基準時間以上の実行中時間があると、ステップS106を実行し、基準時間以上の実行中時間がないと、ステップS107を実行する。
In step S105, the
ステップS106では、障害分析部17は、トランザクションの遅延障害の原因が、トランザクションのストールによって生じたトランザクションの実行の滞留であると判断し、その判断結果を遅延障害の原因の分析結果として障害対応部18に出力する。障害対応部18は、分析結果を受け付けると、ステップS111を実行する。
In step S106, the
また、ステップS107では、障害分析部17は、保持している対応情報から、対象アプリケーション識別子に対応する対象トランザクション識別子を割り出し、その対象トランザクション識別子に対応する、全合計時間、全実行回数、直近合計時間および直近実行回数を管理表記憶部11内の実行時間管理表から取得する。
In step S107, the
障害分析部17は、全合計時間を全実行回数で除算して全平均実行時間を算出し、また、直近合計時間を直近実行回数で除算して直近平均実行時間を算出する。障害分析部17は、直近平均実行時間の全平均実行時間に対する増加度合を算出する。例えば、障害分析部17は、直近平均実行時間および全平均実行時間の比率または差分を増加度合として算出する。
The
そして、障害分析部17は、増加度合が設定値以上か否かを判断する。障害分析部17は、増加度合が設定値以上であると、ステップS108を実行し、増加度合が設定値未満であると、ステップS109を実行する。
Then, the
ステップS108では、障害分析部17は、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加であり、その結果、トランザクションの実行の滞留も発生していると判断する。障害分析部17は、その判断結果を遅延障害の原因の分析結果として障害対応部18に出力する。障害対応部18は、分析結果を受け付けると、ステップS111を実行する。
In step S108, the
ステップS109では、障害分析部17は、管理表記憶部11から対象サーバアプリケーション識別子に対応する直近受付回数および平均受付回数を取得し、その直近受付回数の平均受付回数に対する増加度合を算出する。例えば、障害分析部17は、直近受付回数および平均受付回数の比率または差分を増加度合として算出する。
In step S109, the
障害分析部17は、その増加度合が基準値以上か否かを判断する。障害分析部17は、その増加度合が基準値以上であると、ステップS110を実行し、その増加度合が基準値未満であると、処理を終了する。
The
ステップS111では、障害分析部17は、トランザクションの遅延障害の原因が、処理要求の増加によって生じたトランザクションの実行の滞留であると判断し、その判断結果を遅延障害の原因の分析結果として障害対応部18に出力する。障害分析結果を受け付けると、ステップS111を実行する。
In step S111, the
ステップS111では、障害対応部18は、障害分析部17の分析結果に応じた、トランザクションの遅延障害に対する対処を行う。
In step S <b> 111, the
例えば、障害対応部18は、分析結果がトランザクションの実行時間の増加を示すと、運用管理者への通知や、サーバアプリケーションの処理能力増強、追加の情報採取などを行う。
For example, when the analysis result indicates an increase in the execution time of the transaction, the
また、障害対応部18は、分析結果がトランザクションのストールによって生じたトランザクションの実行の滞留を示すと、サーバアプリケーションの同時処理可能数の追加、追加の情報採取およびストール状態のトランザクションの強制終了などを行なう。
Further, when the analysis result indicates that the execution of the transaction caused by the transaction stalling, the
また、障害対応部18は、分析結果が処理要求の増加によって生じたトランザクションの実行の滞留を示すと、サーバアプリケーションの同時処理可能数の追加、追加の情報採取を行う。また、障害対応部18は、待ち行列理論を利用して、最適なサーバアプリケーションの多重度(処理単位の数の上限および下限)を設定するなどしてもよい。
Further, the
なお、本実施形態において、サーバコンピュータ1は、複数のコンピュータにて構成されていてもよい。例えば、障害分析部17がサーバコンピュータ1に接続された他のコンピュータにて構成され、障害分析装置として動作し、遅延障害の分析結果をサーバコンピュータ1の障害対応部18に通知してもよい。同様に、他の各部(障害対応部18など)も他のコンピュータにて構成されていてもよい。
In the present embodiment, the
次に効果を説明する。 Next, the effect will be described.
本実施形態によれば、トランザクション制御部15は、サーバアプリケーション部14がトランザクションの実行を開始した実行開始時刻を計測する。リクエスト管理部161は、キュー制御部13の待ち行列に滞留されている処理要求の滞留数を計測する。管理表記憶部11は、実行開始時刻および滞留数を記憶する。障害分析部17は、管理表記憶部11に記憶された情報に基づいて、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加か、それとも、トランザクションの実行の滞留かを分析する。
According to the present embodiment, the
この場合、トランザクションの遅延障害の原因が、実行開始時刻および滞留数に基づいて、トランザクションの実行時間の増加か、それとも、トランザクションの実行の滞留かが分析される。 In this case, it is analyzed whether the cause of the transaction delay failure is an increase in the execution time of the transaction or a retention of the execution of the transaction based on the execution start time and the number of stays.
このため、遅延障害の原因を分析することが可能になる。 For this reason, it becomes possible to analyze the cause of the delay failure.
また、本実施形態では、状態管理部163は、サーバアプリケーション部14がトランザクションの実行を終了すると、管理表記憶部11に記憶された実行開始時刻をクリアする。障害分析部17は、滞留数が1以上であり、かつ、管理表記憶部11の中に現在時刻までの時間が基準時間以上となる実行開始時刻があると、トランザクションの遅延障害の原因が、トランザクションのストールによって生じたトランザクションの実行の滞留であると判断する。
In this embodiment, the
この場合、トランザクションの実行の滞留の原因を分析することが可能になり、より詳細な遅延障害の分析が可能になる。 In this case, it becomes possible to analyze the cause of the stay of the execution of the transaction, and it becomes possible to analyze the delay failure in more detail.
また、本実施形態では、滞留数が1以上であり、かつ、管理表記憶部11の中に現在時刻までの時間が基準時間以上となる実行開始時刻があると、トランザクションの遅延障害の原因が、その実行開始時刻に対応する処理識別子にて特定される処理単位におけるトランザクションのストールによって生じた、トランザクションの実行の滞留であると判断する。
In the present embodiment, if the number of stays is 1 or more and there is an execution start time in the management
この場合、トランザクションのストールが発生した処理単位まで、トランザクションの遅延障害の原因を分析することが可能になり、より詳細な遅延障害の分析が可能になる。 In this case, it is possible to analyze the cause of the delay failure of the transaction up to the processing unit in which the transaction stall occurs, and it becomes possible to analyze the delay failure in more detail.
また、本実施形態では、リクエスト管理部161は、直近受付回数と平均受付回数とを計測する。障害分析部17は、滞留数が1以上であり、かつ、直近受付回数の平均値受付回数に対する増加度合が基準値以上であると、トランザクション装置の遅延障害の原因が、処理要求の増加によって生じたトランザクションの実行の滞留であると判断する。
In the present embodiment, the
この場合、トランザクションの実行の滞留の原因を分析することが可能になり、より詳細な遅延障害の分析が可能になる。 In this case, it becomes possible to analyze the cause of the stay of the execution of the transaction, and it becomes possible to analyze the delay failure in more detail.
実行時間管理部162は、直近合計時間、全合計時間、直近実行回数および全実行回数を計測する。障害分析部17は、直近合計時間を直近実行回数で除算して、直近平均実行時間を算出する。また、障害分析部17は、全合計時間を全実行回数で除算して全平均実行時間を算出する。障害分析部17は、滞留数が1以上であり、直近平均実行時間の全平均実行時間に対する増加度合が設定値以上であると、トランザクションの遅延障害の原因が、実行時間の増加であり、その結果、トランザクションの実行の滞留も発生していると判断する。
The execution
この場合、トランザクションの実行時間の増加と、その結果発生するトランザクションの実行の滞留も分析することが可能になり、より詳細な遅延障害の分析が可能になる。 In this case, it is possible to analyze the increase in the execution time of the transaction and the retention of the execution of the resulting transaction, and it becomes possible to analyze the delay failure in more detail.
また、本実施形態では、障害分析部17は、その滞留数が0であると、トランザクションの原因が実行時間の増加であると判断する。
In this embodiment, the
この場合、トランザクションを構成する処理ごとに閾値を設けなくても、トランザクションの原因が実行時間の増加であることを分析することが可能になる。 In this case, it is possible to analyze that the cause of the transaction is an increase in execution time without providing a threshold for each process constituting the transaction.
また、本実施形態では、障害分析部17は、リセット要求を受け付けると、管理表記憶部11に記憶された情報をリセットする。
In the present embodiment, when the
この場合、例えば、運用管理者がサーバコンピュータ1の稼動環境に変化があった場合にリセット要求を入力すれば、新しい環境に即した遅延障害の原因の分析を行うことが可能になる。
In this case, for example, if the operation manager inputs a reset request when there is a change in the operating environment of the
また、本実施形態では、障害分析手段は、分析要求を受け付けると、トランザクションの遅延障害の原因を分析する。 In this embodiment, the failure analysis means analyzes the cause of the transaction delay failure when receiving the analysis request.
この場合、任意のタイミングでトランザクションの遅延障害の原因を分析することが可能になる。 In this case, it is possible to analyze the cause of the transaction delay failure at an arbitrary timing.
また、本実施形態では、障害対応部18は、障害分析部17の分析結果に応じて、遅延障害に対する対処を行う。
In the present embodiment, the
この場合、遅延障害の運用管理者への通知や、遅延障害の復旧などを行うことが可能になる。 In this case, it becomes possible to notify the operation manager of the delay fault or to recover from the delay fault.
次に第二の実施形態について説明する。本実施形態では、本発明によるサーバコンピュータ1(トランザクション装置)の最も簡単な構成例について説明する。なお、サーバコンピュータは、サーバアプリケーションを一つだけ有し、トランザクションの種別も一つであるとする。また、サーバコンピュータ1は、サーバアプリケーションを一つだけ有するものとする。
Next, a second embodiment will be described. In the present embodiment, the simplest configuration example of the server computer 1 (transaction apparatus) according to the present invention will be described. It is assumed that the server computer has only one server application and has only one transaction type. The
図9は、本実施形態のサーバコンピュータ1の構成を示したブロック図である。なお、図9において、図2と同じ機能を有する構成には、同じ符号が付してある。
FIG. 9 is a block diagram showing the configuration of the
図9において、サーバコンピュータ1は、管理表記憶部11と、リクエスト受付部12と、キュー制御部13と、サーバアプリケーション部14と、トランザクション制御部15と、リクエスト管理部161と、障害分析部17とを含む。
In FIG. 9, the
リクエスト受付部12は、トランザクションの処理要求を受け付ける。
The
キュー制御部13は、リクエスト受付部12が受け付けた処理要求を待ち行列に保持する。
The
サーバアプリケーション部14は、トランザクションを新たに実行することが可能になると、キュー制御部13の待ち行列に保持された処理要求に応じたトランザクションを実行する。
When the
トランザクション制御部15は、サーバアプリケーション部14がトランザクションの実行を開始した時刻を実行開始時刻として計測し、その実行開始時刻を管理表記憶部11に記憶する。
The
リクエスト管理部161は、キュー制御部13の待ち行列が保持している処理要求の滞留数を計測し、その滞留数を管理表記憶部11に記憶する。
The
障害分析部17は、管理表記憶部11に記憶された実行開始時刻および滞留数に基づいて、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加か、トランザクションの実行の滞留か、それとも、トランザクションの実行の滞留かを分析する。
Based on the execution start time and the number of stays stored in the management
例えば、障害分析部17は、滞留数が0未満であると、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加と判断する。また、障害分析部17は、滞留数が1以上であり、かつ、管理表記憶部11の中に現在時刻までの時間が基準時間以上となる実行開始時刻が記憶されていると、トランザクションの遅延障害の原因が、トランザクションの実行の滞留と判断する。
For example, if the staying number is less than 0, the
次に効果を説明する。 Next, the effect will be described.
本実施形態でも、トランザクション制御部15は、サーバアプリケーション部14がトランザクションの実行を開始した実行開始時刻を計測する。リクエスト管理部161は、キュー制御部13の待ち行列に滞留されている処理要求の滞留数を計測する。管理表記憶部11は、実行開始時刻および滞留数を記憶する。障害分析部17は、管理表記憶部11に記憶された情報に基づいて、トランザクションの遅延障害の原因が、トランザクションの実行時間の増加か、それとも、トランザクションの実行の滞留かを分析する。
Also in this embodiment, the
したがって、本実施形態でも、遅延障害の原因を分析することが可能になる。 Therefore, also in this embodiment, it becomes possible to analyze the cause of the delay failure.
以上説明した各実施形態において、図示した構成は単なる一例であって、本発明はその構成に限定されるものではない。 In each embodiment described above, the illustrated configuration is merely an example, and the present invention is not limited to the configuration.
1 サーバコンピュータ(トランザクション装置)
2 クライアント端末
3 運用管理端末
11 管理表記憶部
12 リクエスト受付部
13 キュー制御部
14 サーバアプリケーション部
15 トランザクション制御部
16 情報管理部
17 障害分析部
18 障害対応部
1 Server computer (transaction device)
DESCRIPTION OF
Claims (17)
前記受付手段が受け付けた処理要求を待ち行列に滞留する滞留手段と、
前記トランザクションを新たに実行することが可能になると、前記滞留手段の待ち行列に保持された処理要求に応じたトランザクションを実行する実行手段と、
前記実行手段が前記トランザクションの実行を開始した実行開始時刻を計測する実行制御手段と、
前記滞留手段の待ち行列に滞留されている処理要求の滞留数と、前記受付手段が直近の所定時間内に前記処理要求を受け付けた直近受付回数と、前記受付手段が前記直近の所定時間以前に前記処理要求を受け付けた全受付回数の前記所定時間当たりの平均値と、を計測するリクエスト管理手段と、
前記実行制御手段が計測した実行開始時刻と、前記リクエスト管理手段が計測した滞留数、直近受付回数および平均値とを記憶する情報記憶手段と、
前記情報記憶手段に記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析する分析手段と、を含み、
前記分析手段は、前記滞留数が1以上であり、かつ、前記直近受付回数の前記平均値に対する増加度合が基準値以上であると、前記トランザクションの遅延障害の原因が、前記処理要求の増加であると判断する、トランザクション装置。 A receiving means for receiving a transaction processing request;
A staying means for staying in a queue with a processing request received by the receiving means;
When it becomes possible to newly execute the transaction, execution means for executing a transaction according to the processing request held in the queue of the staying means,
Execution control means for measuring an execution start time at which the execution means starts executing the transaction;
The number of stays of processing requests that are staying in the queue of the staying means, the latest number of times that the accepting means has accepted the process requests within the most recent predetermined time, and the accepting means before the most recent predetermined time A request management means for measuring an average value per predetermined time of the total number of times of accepting the processing request ;
And information storing means for storing the execution start time of the execution control means is measured, the number of retention of the request management unit is measured, and the most recent reception times and the average value,
Based on the information stored in the information storage means, an analysis means for analyzing whether the cause of the transaction delay failure is an increase in the execution time of the transaction, an increase in the processing request, or a stall in the transaction and, only including,
When the staying number is 1 or more and the degree of increase in the number of latest receptions with respect to the average value is a reference value or more, the cause of the delay failure of the transaction is an increase in the processing request. Transaction device that determines that it exists .
前記受付手段が受け付けた処理要求を待ち行列に滞留する滞留手段と、
前記トランザクションを新たに実行することが可能になると、前記滞留手段の待ち行列に保持された処理要求に応じたトランザクションを実行する実行手段と、
前記実行手段が前記トランザクションの実行を開始した実行開始時刻を計測する実行制御手段と、
前記滞留手段の待ち行列に滞留されている処理要求の滞留数を計測するリクエスト管理手段と、
前記実行手段によるトランザクションの実行時間の直近の単位時間内の直近合計時間と、前記実行手段によるトランザクションの実行時間の前記直近の単位時間以前の全合計時間とを計測し、また、前記実行手段が前記直近の単位時間内に前記トランザクションを実行した直近実行回数と、前記実行手段が前記直近の単位時間以前に前記トランザクションを実行した全実行回数とを計測する実行管理手段と、
前記実行制御手段が計測した実行開始時刻と、前記リクエスト管理手段が計測した滞留数と、前記実行管理手段が計測した直近合計時間、全合計時間、直近実行回数および全実行回数と、を記憶する情報記憶手段と、
前記情報記憶手段に記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析する分析手段と、を含み、
前記分析手段は、前記直近合計時間を前記直近実行回数で除算して、直近平均実行時間を算出し、また、前記全合計時間を前記全実行回数で除算して、全平均実行時間を算出し、前記滞留数が1以上であり、かつ、前記直近平均実行時間の前記全平均実行時間に対する増加度合が設定値以上であると、前記トランザクションの遅延障害の原因が、前記実行時間の増加であると判断する、トランザクション装置。 A receiving means for receiving a transaction processing request;
A staying means for staying in a queue with a processing request received by the receiving means;
When it becomes possible to newly execute the transaction, execution means for executing a transaction according to the processing request held in the queue of the staying means,
Execution control means for measuring an execution start time at which the execution means starts executing the transaction;
Request management means for measuring the number of stays of processing requests that are staying in the queue of the stay means;
Measuring the latest total time within the latest unit time of the transaction execution time by the execution means and the total total time before the latest unit time of the transaction execution time by the execution means; and the execution means Execution management means for measuring the most recent execution count for executing the transaction within the latest unit time and the total execution count for executing the transaction before the latest unit time by the execution means;
The execution start time measured by the execution control unit, the staying number measured by the request management unit, and the latest total time, total total time, latest execution count, and total execution count measured by the execution management unit are stored. Information storage means;
Based on the information stored in the information storage means, an analysis means for analyzing whether the cause of the transaction delay failure is an increase in the execution time of the transaction, an increase in the processing request, or a stall in the transaction and, only including,
The analyzing means divides the most recent total time by the most recent execution count to calculate the latest average execution time, and also divides the total total time by the total execution count to calculate the total average execution time. When the staying number is 1 or more and the degree of increase in the latest average execution time with respect to the total average execution time is a set value or more, the cause of the transaction delay failure is the increase in the execution time. Transaction device that determines that
前記実行手段が前記トランザクションの実行を終了すると、前記情報記憶手段に記憶された実行開始時刻をクリアする状態管理手段を含み、
前記分析手段は、前記滞留数が1以上であり、かつ、前記情報記憶手段の中に現在時刻までの時間が基準時間以上となる実行開始時刻が記憶されていると、前記トランザクションの遅延障害の原因が、前記トランザクションのストールであると判断する、トランザクション装置。 The transaction apparatus according to claim 1 or 2 ,
When the execution means finishes executing the transaction, the execution means includes state management means for clearing the execution start time stored in the information storage means,
The analysis means has a delay failure of the transaction when the staying number is 1 or more and the execution start time at which the time until the current time is a reference time or more is stored in the information storage means. cause, it is determined that the stall of the transaction, the transaction device.
前記実行手段は、複数の処理単位を有し、前記複数の処理単位のそれぞれが前記トランザクションを実行し、
前記状態管理手段は、前記実行制御手段が計測したトランザクションの実行開始時刻を、該トランザクションの実行を開始した処理単位を特定する処理識別子と対応付けて前記情報記憶手段に記憶し、
前記分析手段は、前記現在時刻までの時間が前記基準時間以上である実行開始時刻があると、前記トランザクションの遅延障害の原因が、該実行開始時刻に対応する処理識別子にて特定される処理単位における前記トランザクションのストールであると判断する、トランザクション装置。 The transaction device according to claim 3 , wherein
The execution means has a plurality of processing units, and each of the plurality of processing units executes the transaction,
The state management means stores the execution start time of the transaction measured by the execution control means in the information storage means in association with a process identifier that identifies a processing unit that has started execution of the transaction,
When the analysis means has an execution start time in which the time until the current time is equal to or greater than the reference time, the cause of the delay failure of the transaction is a processing unit identified by a process identifier corresponding to the execution start time it is determined that the stall of the transaction in the transaction device.
前記分析手段は、前記滞留数が0であると、前記トランザクションの遅延障害の原因が、前記実行時間の増加であると判断する、トランザクション装置。 The transaction apparatus according to any one of claims 1 to 4 ,
When the staying number is 0, the analysis unit determines that the cause of the delay failure of the transaction is an increase in the execution time.
前記分析手段は、前記情報記憶手段に対するリセット要求を受け付けると、前記情報記憶手段に記憶された情報をリセットする、トランザクション装置。 The transaction apparatus according to any one of claims 1 to 5 ,
When the analysis unit receives a reset request to the information storage unit, the analysis unit resets the information stored in the information storage unit.
前記分析手段は、前記遅延障害の原因を分析する旨の分析要求を受け付けると、前記トランザクションの遅延障害の原因を分析する、トランザクション装置。 The transaction apparatus according to any one of claims 1 to 6 ,
When the analysis unit receives an analysis request for analyzing the cause of the delay failure, the analysis unit analyzes the cause of the delay failure of the transaction.
前記分析手段の分析結果に応じて、前記遅延障害に対する対処を行なう障害対応手段を含む、トランザクション装置。 The transaction apparatus according to any one of claims 1 to 7 ,
A transaction apparatus comprising failure handling means for coping with the delay fault according to an analysis result of the analysis means.
前記トランザクション装置が前記トランザクションの実行を開始した実行開始時刻を計測する実行制御手段と、
前記トランザクション装置の待ち行列に滞留されている処理要求の滞留数と、前記トランザクション装置が直近の所定時間内に前記処理要求を受け付けた直近受付回数と、前記トランザクション装置が前記直近の所定時間以前に前記処理要求を受け付けた全受付回数の前記所定時間当たりの平均値と、を計測するリクエスト管理手段と、
前記実行制御手段が計測した実行開始時刻と、前記リクエスト管理手段が計測した滞留数、直近受付回数および平均値と、を記憶する情報記憶手段と、
前記情報記憶手段に記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析する分析手段と、を含み、
前記分析手段は、前記滞留数が1以上であり、かつ、前記直近受付回数の前記平均値に対する増加度合が基準値以上であると、前記トランザクションの遅延障害の原因が、前記処理要求の増加であると判断する、遅延障害分析装置。 When a transaction processing request is received, the processing request stays in the queue, and the transaction is newly executable, the transaction delay is performed in the transaction device that executes the transaction according to the processing request held in the queue. A delay failure analyzer for analyzing the cause of a failure,
Execution control means for measuring an execution start time at which the transaction apparatus starts executing the transaction;
The number of processing requests that are retained in the queue of the transaction device, the number of times the transaction device has received the processing request within the most recent predetermined time, and the transaction device before the most recent predetermined time. A request management means for measuring an average value per predetermined time of the total number of times of accepting the processing request ;
Information storage means for storing the execution start time measured by the execution control means, the staying number measured by the request management means , the latest reception count, and the average value ;
Based on the information stored in the information storage means, an analysis means for analyzing whether the cause of the transaction delay failure is an increase in the execution time of the transaction, an increase in the processing request, or a stall in the transaction and, only including,
When the staying number is 1 or more and the degree of increase in the number of latest receptions with respect to the average value is a reference value or more, the cause of the delay failure of the transaction is an increase in the processing request. Delay failure analysis device that judges that there is .
前記トランザクション装置が前記トランザクションの実行を開始した実行開始時刻を計測する実行制御手段と、
前記トランザクション装置の待ち行列に滞留されている処理要求の滞留数を計測するリクエスト管理手段と、
前記トランザクション装置によるトランザクションの実行時間の直近の単位時間内の直近合計時間と、前記トランザクション装置によるトランザクションの実行時間の前記直近の単位時間以前の全合計時間とを計測し、また、前記実行手段が前記直近の単位時間内に前記トランザクションを実行した直近実行回数と、前記トランザクション装置が前記直近の単位時間以前に前記トランザクションを実行した全実行回数とを計測する実行管理手段と、
前記実行制御手段が計測した実行開始時刻と、前記リクエスト管理手段が計測した滞留数と、前記実行管理手段が計測した直近合計時間、全合計時間、直近実行回数および全実行回数とを記憶する情報記憶手段と、
前記情報記憶手段に記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析する分析手段と、を含み、
前記分析手段は、前記直近合計時間を前記直近実行回数で除算して、直近平均実行時間を算出し、また、前記全合計時間を前記全実行回数で除算して、全平均実行時間を算出し、前記滞留数が1以上であり、かつ、前記直近平均実行時間の前記全平均実行時間に対する増加度合が設定値以上であると、前記トランザクションの遅延障害の原因が、前記実行時間の増加であると判断する、遅延障害分析装置。 When a transaction processing request is received, the processing request stays in the queue, and the transaction is newly executable, the transaction delay is performed in the transaction device that executes the transaction according to the processing request held in the queue. A delay failure analyzer for analyzing the cause of a failure,
Execution control means for measuring an execution start time at which the transaction apparatus starts executing the transaction;
Request management means for measuring the staying number of processing requests staying in the queue of the transaction device;
The latest total time within the latest unit time of the transaction execution time by the transaction device and the total total time before the latest unit time of the transaction execution time by the transaction device are measured, and the execution means An execution management means for measuring the most recent execution count for executing the transaction within the most recent unit time and the total execution count for executing the transaction before the most recent unit time by the transaction device;
Information for storing the execution start time measured by the execution control unit, the staying number measured by the request management unit, and the latest total time, total total time, latest execution count, and total execution count measured by the execution management unit Storage means;
Based on the information stored in the information storage means, an analysis means for analyzing whether the cause of the transaction delay failure is an increase in the execution time of the transaction , an increase in the processing request, or a stall in the transaction and, only including,
The analyzing means divides the most recent total time by the most recent execution count to calculate the latest average execution time, and also divides the total total time by the total execution count to calculate the total average execution time. When the staying number is 1 or more and the degree of increase in the latest average execution time with respect to the total average execution time is a set value or more, the cause of the transaction delay failure is the increase in the execution time. Delay failure analysis device that judges that .
前記トランザクション装置が前記トランザクションの実行を終了すると、前記情報記憶手段に記憶された実行開始時刻をクリアする状態管理手段を含み、
前記分析手段は、前記滞留数が1以上であり、かつ、前記情報記憶手段の中に現在時刻までの時間が基準時間以上となる実行開始時刻が記憶されていると、前記トランザクションの遅延障害の原因が、前記トランザクションのストールであると判断する、遅延障害分析装置。 The delay fault analyzer according to claim 10,
When the transaction device finishes executing the transaction, it includes a state management unit that clears the execution start time stored in the information storage unit,
The analysis means has a delay failure of the transaction when the staying number is 1 or more and the execution start time at which the time until the current time is a reference time or more is stored in the information storage means. cause, it is determined that the stall of the transaction, a delay fault analysis device.
前記受け付けられた処理要求を待ち行列に滞留し、
前記トランザクションを新たに実行することが可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行し、
前記トランザクションの実行が開始された実行開始時刻を計測し、
前記待ち行列に滞留されている処理要求の滞留数を計測し、
直近の所定時間内に前記処理要求を受け付けた直近受付回数を計測し、
前記直近の所定時間以前に前記処理要求を受け付けた全受付回数の前記所定時間当たりの平均値を計測し、
前記計測された実行開始時刻、滞留数、直近受付回数および平均値を記憶し、
前記記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析し、
前記分析では、前記滞留数が1以上であり、かつ、前記直近受付回数の前記平均値に対する増加度合が基準値以上であると、前記トランザクションの遅延障害の原因が、前記処理要求の増加であると判断する、遅延障害分析方法。 Accept transaction processing requests,
Staying in the queue with the accepted processing request;
When it becomes possible to newly execute the transaction, the transaction according to the processing request held in the queue is executed,
Measure the execution start time when execution of the transaction was started,
Measure the number of stays of processing requests staying in the queue,
Measure the latest number of times the processing request has been received within the most recent predetermined time,
Measure the average value per predetermined time of the total number of receptions that received the processing request before the most recent predetermined time,
Store the measured execution start time , number of stays, number of latest receptions and average value ,
Based on the stored information, analyze whether the cause of the delay failure of the transaction is an increase in the execution time of the transaction, an increase in the processing request, or a stall of the transaction ,
In the analysis, if the number of stays is 1 or more and the degree of increase in the number of latest receptions with respect to the average value is greater than or equal to a reference value, the cause of the transaction delay failure is an increase in the processing request. This is a method for analyzing delay failures.
前記受け付けられた処理要求を待ち行列に滞留し、
前記トランザクションを新たに実行することが可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行し、
前記トランザクションの実行が開始された実行開始時刻を計測し、
前記待ち行列に滞留されている処理要求の滞留数を計測し、
前記トランザクションの実行時間の直近の単位時間内の直近合計時間を計測し、
前記トランザクションの実行時間の前記直近の単位時間以前の全合計時間を計測し、
前記直近の単位時間内に前記トランザクションを実行した直近実行回数を計測し、
前記直近の単位時間以前に前記トランザクションを実行した全実行回数を計測し、
前記計測された実行開始時刻、滞留数、近合計時間、全合計時間、直近実行回数および全実行回数を記憶し、
前記記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析し、
前記分析は、前記直近合計時間を前記直近実行回数で除算して、直近平均実行時間を算出し、また、前記全合計時間を前記全実行回数で除算して、全平均実行時間を算出し、前記滞留数が1以上であり、かつ、前記直近平均実行時間の前記全平均実行時間に対する増加度合が設定値以上であると、前記トランザクションの遅延障害の原因が、前記実行時間の増加であると判断する、遅延障害分析方法。 Accept transaction processing requests,
Staying in the queue with the accepted processing request;
When it becomes possible to newly execute the transaction, the transaction according to the processing request held in the queue is executed,
Measure the execution start time when execution of the transaction was started,
Measure the number of stays of processing requests staying in the queue,
Measure the latest total time within the latest unit time of the execution time of the transaction,
Measure the total total time before the most recent unit time of the execution time of the transaction,
Measure the number of the most recent executions that executed the transaction within the most recent unit time,
Measure the total number of executions of the transaction before the most recent unit time,
Store the measured execution start time , number of stays , near total time, total total time, latest execution count and total execution count ,
Based on the stored information, analyze whether the cause of the delay failure of the transaction is an increase in the execution time of the transaction, an increase in the processing request, or a stall of the transaction ,
The analysis divides the most recent total time by the most recent execution count to calculate the latest average execution time, and also divides the total total time by the total execution count to calculate the total average execution time, When the staying number is 1 or more and the degree of increase in the latest average execution time with respect to the total average execution time is a set value or more, the cause of the delay failure of the transaction is an increase in the execution time Judgment method for delay failure analysis.
前記トランザクションの実行が終了されると、前記記憶された前記実行開始時刻をクリアし、
前記滞留数が1以上であり、かつ、現在時刻までの時間が基準時間以上となる実行開始時刻が記憶されていると、前記トランザクションの遅延障害の原因が、前記トランザクションのストールであると判断する、遅延障害分析方法。 In the delay fault analysis method according to claim 1 3,
When the execution of the transaction is finished, the stored execution start time is cleared,
The staying number is 1 or more, and, when the execution start time is the time until the current time becomes the reference time or more is stored, causing a delay fault of the transaction, a stall of the transaction determined A delay failure analysis method.
トランザクションの処理要求を受け付ける手順と、
前記受け付けられた処理要求を待ち行列に滞留する手順と、
前記トランザクションを新たに実行することが可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行する手順と、
前記トランザクションの実行が開始された実行開始時刻を計測する手順と、
前記待ち行列に滞留されている処理要求の滞留数を計測する手順と、
直近の所定時間内に前記処理要求を受け付けた直近受付回数を計測する手順と、
前記直近の所定時間以前に前記処理要求を受け付けた全受付回数の前記所定時間当たりの平均値を計測する手順と、
前記計測された実行開始時刻、滞留数、近合計時間、全合計時間、直近実行回数および全実行回数を記憶する手順と、
前記記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析する手順と、を前記コンピュータに実行させ、
前記分析する手順では、前記滞留数が1以上であり、かつ、前記直近受付回数の前記平均値に対する増加度合が基準値以上であると、前記トランザクションの遅延障害の原因が、前記処理要求の増加であると判断する、プログラム。 A program that causes a computer to analyze transaction delay failures,
A procedure for accepting transaction processing requests;
A procedure for retaining the accepted processing request in a queue;
A procedure for executing a transaction according to a processing request held in the queue when the transaction can be newly executed;
Measuring the execution start time at which the execution of the transaction was started;
A procedure for measuring the staying number of processing requests staying in the queue;
A procedure for measuring the latest number of times of accepting the processing request within the latest predetermined time; and
A procedure for measuring an average value per predetermined time of the total number of times of accepting the processing request before the most recent predetermined time;
Storing the measured execution start time , number of stays , near total time, total total time, latest execution count, and total execution count ;
Analyzing, based on the stored information, whether the cause of the delay failure of the transaction is an increase in execution time of the transaction, an increase in the processing request, or a stall of the transaction; to run in,
In the analyzing procedure, when the number of stays is 1 or more and the degree of increase in the number of latest receptions with respect to the average value is a reference value or more, the cause of the delay failure of the transaction is an increase in the processing request. A program that determines that
トランザクションの処理要求を受け付ける手順と、
前記受け付けられた処理要求を待ち行列に滞留する手順と、
前記トランザクションを新たに実行することが可能になると、前記待ち行列に保持された処理要求に応じたトランザクションを実行する手順と、
前記トランザクションの実行が開始された実行開始時刻を計測する手順と、
前記待ち行列に滞留されている処理要求の滞留数を計測する手順と、
前記トランザクションの実行時間の直近の単位時間内の直近合計時間を計測する手順と、
前記トランザクションの実行時間の前記直近の単位時間以前の全合計時間を計測する手順と、
前記直近の単位時間内に前記トランザクションを実行した直近実行回数を計測する手順と、
前記直近の単位時間以前に前記トランザクションを実行した全実行回数を計測する手順と、
前記計測された実行開始時刻、滞留数、近合計時間、全合計時間、直近実行回数および全実行回数を記憶する手順と、
前記記憶された情報に基づいて、前記トランザクションの遅延障害の原因が、前記トランザクションの実行時間の増加か、前記処理要求の増加か、それとも、前記トランザクションのストールかを分析する手順と、を前記コンピュータに実行させ、
前記分析する手順では、前記直近合計時間を前記直近実行回数で除算して、直近平均実行時間を算出し、また、前記全合計時間を前記全実行回数で除算して、全平均実行時間を算出し、前記滞留数が1以上であり、かつ、前記直近平均実行時間の前記全平均実行時間に対する増加度合が設定値以上であると、前記トランザクションの遅延障害の原因が、前記実行時間の増加であると判断する、プログラム。 A program that causes a computer to analyze transaction delay failures,
A procedure for accepting transaction processing requests;
A procedure for retaining the accepted processing request in a queue;
A procedure for executing a transaction according to a processing request held in the queue when the transaction can be newly executed;
Measuring the execution start time at which the execution of the transaction was started;
A procedure for measuring the staying number of processing requests staying in the queue;
A step of measuring the latest total time within the latest unit time of the execution time of the transaction;
Measuring the total total time of the transaction execution time before the most recent unit time;
A procedure for measuring the most recent execution number of times the transaction was executed within the most recent unit time;
Measuring the total number of executions of the transaction before the most recent unit time; and
Storing the measured execution start time , number of stays , near total time, total total time, latest execution count, and total execution count ;
Analyzing, based on the stored information, whether the cause of the delay failure of the transaction is an increase in execution time of the transaction, an increase in the processing request, or a stall of the transaction; to run in,
In the analyzing step, the latest total execution time is divided by the most recent execution count to calculate the latest average execution time, and the total total time is divided by the total execution count to calculate the total average execution time. When the retention number is 1 or more and the degree of increase in the latest average execution time with respect to the total average execution time is equal to or greater than a set value, the cause of the delay failure of the transaction is the increase in the execution time. A program that determines that there is .
前記コンピュータに、前記トランザクションの実行が終了されると、前記記憶された実行開始時刻をクリアする手順をさらに実行させ、
前記分析する手順では、前記滞留数が1以上であり、かつ、現在時刻までの時間が基準時間以上となる実行開始時刻が記憶されていると、前記トランザクションの遅延障害の原因が、前記トランザクションのストールであると判断する、プログラム。 The program according to claim 16, wherein
When the execution of the transaction is terminated , the computer further executes a procedure for clearing the stored execution start time ,
In the analyzing procedure, if the execution start time at which the number of stays is 1 or more and the time until the current time is equal to or more than a reference time is stored, the cause of the delay failure of the transaction is that of the transaction. it determined to be a stall, program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008030519A JP4983636B2 (en) | 2008-02-12 | 2008-02-12 | Transaction apparatus, delay fault analysis apparatus, delay fault analysis method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008030519A JP4983636B2 (en) | 2008-02-12 | 2008-02-12 | Transaction apparatus, delay fault analysis apparatus, delay fault analysis method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009193128A JP2009193128A (en) | 2009-08-27 |
JP4983636B2 true JP4983636B2 (en) | 2012-07-25 |
Family
ID=41075110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008030519A Expired - Fee Related JP4983636B2 (en) | 2008-02-12 | 2008-02-12 | Transaction apparatus, delay fault analysis apparatus, delay fault analysis method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4983636B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6243761A (en) * | 1985-08-21 | 1987-02-25 | Nec Corp | Working state monitor system for on-line message processing system |
JPS649544A (en) * | 1987-07-02 | 1989-01-12 | Fujitsu Ltd | Enq resource monitoring system |
JPH01191950A (en) * | 1988-01-28 | 1989-08-02 | Nec Corp | Detecting system for overflow of transaction processing capacity |
JPH01258046A (en) * | 1988-04-06 | 1989-10-16 | Fujitsu Ltd | Processing delay detecting system based upon detection table |
JP2882859B2 (en) * | 1990-07-13 | 1999-04-12 | 日本電信電話株式会社 | Online event processing time analysis method |
JP3537356B2 (en) * | 1998-12-09 | 2004-06-14 | 株式会社日立製作所 | Delay factor analysis method in job system |
-
2008
- 2008-02-12 JP JP2008030519A patent/JP4983636B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009193128A (en) | 2009-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7568028B2 (en) | Bottleneck detection system, measurement object server, bottleneck detection method and program | |
CN101510167B (en) | A kind of method of plug-in component operation, Apparatus and system | |
JP4466615B2 (en) | Operation management system, monitoring device, monitored device, operation management method and program | |
US10924538B2 (en) | Systems and methods of monitoring software application processes | |
US10481952B2 (en) | Non-transitory computer-readable medium, system, and information processing method | |
US9331912B2 (en) | Violation sign condition setting supporting system, violation sign condition setting supporting method, and violation sign condition setting supporting program | |
JP4449929B2 (en) | Transaction apparatus, delay fault detection apparatus and method, and program | |
CN110825593B (en) | Method, device and equipment for detecting abnormal state of process and storage medium | |
JP4983636B2 (en) | Transaction apparatus, delay fault analysis apparatus, delay fault analysis method and program | |
US9678849B2 (en) | Processing method, processing apparatus, and recording medium to determine operational state of processing element | |
CN108920264B (en) | Command timeout processing method and system | |
JP6269199B2 (en) | Management server, failure recovery method, and computer program | |
JP2001331348A (en) | System for detecting increase tendency in process memory consumption | |
JP4978504B2 (en) | Information processing apparatus, communication information collecting method, and program | |
JP5821471B2 (en) | Information processing apparatus, process monitoring method, process monitoring program, and recording medium | |
CN113094243B (en) | Node performance detection method and device | |
JP4453823B2 (en) | Performance bottleneck analysis system and performance bottleneck analysis method | |
US11271839B2 (en) | Dynamic asynchronous communication management | |
JP4909830B2 (en) | Server application monitoring system and monitoring method | |
JP2010244180A (en) | System, method and program for managing inter-process communication | |
JP5743334B2 (en) | Congestion control device | |
JP4968092B2 (en) | Stall detection device, stall detection method, and stall detection program | |
JP6706589B2 (en) | Monitoring device, monitoring method, and program | |
JP2011107862A (en) | System, device, method, and program for evaluating maximum throughput | |
JP2009110195A (en) | Information processing apparatus and system, information processing taking-over control method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110831 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111024 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111115 |
|
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: 20120327 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120409 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4983636 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150511 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |