JP5567444B2 - Program, application server device control method, application server device - Google Patents
Program, application server device control method, application server device Download PDFInfo
- Publication number
- JP5567444B2 JP5567444B2 JP2010227505A JP2010227505A JP5567444B2 JP 5567444 B2 JP5567444 B2 JP 5567444B2 JP 2010227505 A JP2010227505 A JP 2010227505A JP 2010227505 A JP2010227505 A JP 2010227505A JP 5567444 B2 JP5567444 B2 JP 5567444B2
- Authority
- JP
- Japan
- Prior art keywords
- monitoring
- time
- sql
- query
- issued
- 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
- 238000000034 method Methods 0.000 title claims description 29
- 238000012544 monitoring process Methods 0.000 claims description 273
- 230000004044 response Effects 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000005856 abnormality Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、プログラム、アプリケーションサーバ装置の制御方法、アプリケーションサーバ装置に関する。 The present invention relates to a program, a control method for an application server device, and an application server device.
クライアントがアプリケーションサーバを介してデータベースサーバに問合せ、例えばSQLコマンドを発行した場合において、SQLコマンドが所定の時間内に完了しない場合がある。SQLコマンドが所定の時間内に完了しないと、クライアントにおいてアプリケーションプログラムの実行に障害となる。そこで、アプリケーションサーバは、SQLコマンドが所定の時間内に完了しない場合、クライアントにエラー通知処理を行う等、種々の障害処理を実行する。 When the client makes an inquiry to the database server via the application server, for example, issues an SQL command, the SQL command may not be completed within a predetermined time. If the SQL command is not completed within a predetermined time, the execution of the application program becomes an obstacle in the client. Therefore, when the SQL command is not completed within a predetermined time, the application server performs various failure processes such as performing an error notification process for the client.
例えば、サーバ処理装置において、サービススレッドが、クライアントからのリクエストを受信すると、要求された処理のタイムアウト時間と自分のスレッドIDをタイムアウト表に書込み、リクエストの処理を終了すると、タイムアウト表内のタイムアウト時間及びスレッドIDを消去し、監視スレッドが、定期的にタイムアウト表からタイムアウト時間を読み出して、現在の時刻と比較することにより、設定されたタイムアウト時間までに処理を終了していないサービススレッドを検出し、タイムアウトしたサービススレッドを発見した場合には、該サービススレッドを強制的に終了させて、クライアントにエラーを通知することが提案されている。 For example, in the server processing apparatus, when the service thread receives a request from the client, the timeout time of the requested process and its own thread ID are written in the timeout table, and when the processing of the request ends, the timeout time in the timeout table And the thread ID is deleted, and the monitoring thread periodically reads the timeout time from the timeout table and compares it with the current time to detect the service thread that has not finished processing by the set timeout time. It has been proposed that when a service thread that has timed out is found, the service thread is forcibly terminated to notify the client of an error.
また、商品販売データ処理システムにおいて、定期的にデータベースサーバーに関与して各アプリケーションプロセスが当該データベースサーバーに接続要求した回数を取得可能かつ取得した接続要求回数と設定回数とを比較して取得接続要求回数が設定回数以上になったことを条件にデータベースサーバーに障害が発生する蓋然性が強いと判別可能に形成し、障害が発生する蓋然性が強いと判別された場合にシステムの一部または全部を再起動可能に形成することが提案されている。 In the product sales data processing system, it is possible to acquire the number of times that each application process has requested to connect to the database server periodically, and the acquired connection request number is compared with the set number of connection requests. If the number of times exceeds the set number, the database server is formed so that it is possible to determine that there is a strong probability that a failure will occur in the database server. It has been proposed to make it bootable.
データベースサーバへの問合せ、例えばSQLコマンドが所定の時間内に完了しない場合、アプリケーションサーバは、例えばデータベースサーバに対してSQLコマンドのキャンセルを発行する。SQLコマンドのキャンセルが成功した場合には、SQLコマンドを強制的に終了させることができる。 If an inquiry to the database server, for example, an SQL command is not completed within a predetermined time, the application server issues a cancellation of the SQL command to the database server, for example. If the cancellation of the SQL command is successful, the SQL command can be forcibly terminated.
しかし、アプリケーションサーバにおいて何らかの異常がある場合には、SQLコマンドのキャンセルが失敗する場合がある。SQLコマンドのキャンセルが失敗した場合には、SQLコマンドを強制的に終了させることができず、また、その後に発行されるSQLコマンドが実行されない可能性がある。 However, if there is any abnormality in the application server, the cancellation of the SQL command may fail. When the cancellation of the SQL command fails, the SQL command cannot be forcibly terminated, and the SQL command issued thereafter may not be executed.
本発明は、データベースサーバへの問合せが実行されない場合にデータベースサーバを再起動するアプリケーションサーバのプログラムを提供することを目的とする。 An object of this invention is to provide the program of the application server which restarts a database server when the inquiry to a database server is not performed.
開示されるプログラムは、コンピュータをアプリケーションサーバとして動作させるプログラムである。前記プログラムは、コンピュータに、データベースサーバへの問合せを発行する問合せステップと、問合せステップにおいて発行された問合せをデータベースサーバに対して実行する実行ステップと、問合せステップにおいて発行された問合せを監視対象として、問合せが予め定められた期間に実行ステップにおいて実行されない状態であるタイムアウトを監視し、問合せステップにおいて発行された問合せを監視する時間を定める時間である全体監視時間内に、予め定められた数の問合せがタイムアウトした場合に、データベースサーバを再起動する監視ステップとを実行させる。
The disclosed program is a program that causes a computer to operate as an application server. The program includes a query step for issuing a query to a database server to a computer, an execution step for executing the query issued in the query step for the database server, and a query issued in the query step as monitoring targets. A predetermined number of queries are monitored within the overall monitoring time, which is the time for monitoring the time-out in which the query is not executed in the execution step in a predetermined period and the time for monitoring the query issued in the query step The monitoring step of restarting the database server when the server times out.
開示されるプログラムによれば、アプリケーションサーバ等における何らかの異常に起因して、SQLコマンドのようなデータベースサーバへの問合せが実行されない場合に、データベースサーバを再起動することができる。 According to the disclosed program, the database server can be restarted when an inquiry to the database server such as an SQL command is not executed due to some abnormality in the application server or the like.
図15は、本発明者が検討したSQL監視処理の説明図であり、アプリケーションサーバがSQLコマンドのキャンセルに失敗する場合についての説明図である。 FIG. 15 is an explanatory diagram of the SQL monitoring process examined by the present inventors, and is an explanatory diagram for a case where the application server fails to cancel the SQL command.
アプリケーション処理スレッド201が、監視処理への登録をアプリケーションタイムアウトスレッド203に依頼し(P#101)、その後、SQLコマンドの実行をSQLコマンド実行部204に依頼する(P#102)。SQLコマンド実行部204は、依頼されたSQLコマンドの実行をデータベースサーバ205へ依頼する。
The
この後、アプリケーション処理スレッド202が、SQLコマンドの実行をSQLコマンド実行部204に依頼する(P#102’)。SQLコマンド実行部204は、実行を依頼されたSQLコマンドをデータベースサーバ205に対して実行する。なお、P#102’における依頼に先立って、アプリケーション処理スレッド202は、監視処理への登録をアプリケーションタイムアウトスレッド203に依頼している。
Thereafter, the
この時、SQLコマンドの実行が終了しないので、アプリケーション処理スレッド201は、終了しないSQLコマンドのキャンセルを、アプリケーションタイムアウトスレッド203へ依頼する。これに応じて、アプリケーションタイムアウトスレッド203は、キャンセル処理を実行するサブルーチンであるキャンセル処理実行部を呼び出し、呼び出されたキャンセル処理実行部は、SQLコマンド実行部204に対してSQLコマンドのキャンセルを実行しようとする(P#103)。
At this time, since the execution of the SQL command does not end, the
しかし、SQLコマンド実行部204は、P#102’における依頼に応じて他のアプリケーション処理スレッド202からのSQLコマンドを実行中であるので、P#103におけるSQLコマンドのキャンセルを実行することができない。
However, since the SQL
また、データベースサーバ205が正常でない場合には、SQLコマンド実行部204は、データベースサーバ205へ実行を依頼したSQLコマンドをキャンセルすることができない。
If the
このように、SQLコマンドのキャンセルが失敗した場合には、SQLコマンドを強制的に終了させることができない。また、その後にSQLコマンドを再度実行しようとしても、実行されない可能性がある。従って、SQLコマンドの実行のリトライが無駄になる可能性がある。 Thus, when the cancellation of the SQL command fails, the SQL command cannot be forcibly terminated. Further, if an attempt is made again to execute the SQL command after that, there is a possibility that the SQL command is not executed. Therefore, there is a possibility that the retry of executing the SQL command is wasted.
開示のプログラム、アプリケーションサーバ装置の制御方法、アプリケーションサーバ装置は、データベースサーバへの問合せ、例えばSQLコマンドのタイムアウトを監視し、タイムアウトが予め定められた状態となった場合に、データベースサーバを再起動する。 The disclosed program, the control method of the application server apparatus, and the application server apparatus monitor the inquiry to the database server, for example, the timeout of the SQL command, and restart the database server when the timeout becomes a predetermined state .
図1は、アプリケーションサーバシステムの構成の一例を示す図である。 FIG. 1 is a diagram illustrating an example of a configuration of an application server system.
アプリケーションサーバシステムは、アプリケーションサーバ1と、データベースサーバ2と、予備のデータベースサーバ2’と、複数のクライアント3とを含む。データベースサーバ2はデータベース(DB)21を含み、予備のデータベースサーバ2’は予備のデータベース(DB)21’を含む。予備のデータベース21’は、データベース21と同じデータを格納するデータベースである。アプリケーションサーバ1は、ネットワーク4を介して、データベースサーバ2に接続される。また、アプリケーションサーバ1は、ネットワーク5を介して、複数のクライアント3の各々に接続される。ネットワーク4はネットワーク5と同一であっても良い。また、アプリケーションサーバ1とデータベースサーバ2とが1個のサーバ装置として設けられるようにしても良い。
The application server system includes an
各々のクライアント3、換言すれば、クライアント装置は、データベースサーバ2へ問合せを行うコンピュータである。具体的には、各々のクライアント3は、データベースサーバ2への問合せ要求をアプリケーションサーバ1へ送信する。
Each
アプリケーションサーバ1は、複数のアプリケーション処理部11、実行処理部12、監視処理部13、監視情報格納部14と、監視テーブル格納部15を含む。
The
複数のアプリケーション処理部11は、アプリケーションサーバ1に接続された複数のクライアント3に応じて設けられる。実際には、アプリケーション処理部11は、アプリケーションサーバ1の制御プログラムにより、クライアント3毎に生成されるスレッドである。アプリケーション処理部11は、クライアント3から受信したデータベースサーバ2への種々の要求に応じて、データベースサーバ2への種々の問合せを発行する。例えば、アプリケーション処理部11は、データベースサーバ2へのSQLコマンドを実行処理部12へ発行する。
The plurality of
以下においては、データベースサーバ2への問合せがSQLコマンドである場合について説明する。データベースサーバ2への問合せは、SQLコマンド以外のコマンド等であっても良い。
In the following, a case where the query to the
実行処理部12は、複数のアプリケーション処理部11により発行されたデータベースサーバ2へのSQLコマンドをデータベースサーバ2に対して実行する。実際には、実行処理部12は、ネットワーク4を介して、SQLコマンドをデータベースサーバ2へ送信する。データベースサーバ2は、受信したSQLコマンドを実行して、受信したSQLコマンドに対する応答を実行処理部12に返信する。具体的には、データベースサーバ2は、受信したSQLコマンドに基づいてデータベース21を検索して、検索した結果を受信したSQLコマンドに対する回答として、実行処理部12に送信する。
The
監視処理部13は、複数のアプリケーション処理部11により発行されたSQLコマンドを監視対象とする。監視対象であるSQLコマンドは、監視テーブル格納部15に格納された監視テーブル151に登録されたSQLコマンドである。監視テーブル151については、図2を参照して後述する。
The
監視処理部13は、SQLコマンドのタイムアウトを監視する。実際には、監視処理部13は、アプリケーションサーバ1の制御プログラムにより生成されるスレッドである。SQLコマンドのタイムアウトは、SQLコマンドが予め定められた期間に実行処理部12で実行されない状態である。前記期間は、監視処理部13がSQLコマンドの実行を監視する時間であり、経験的に定めることができ、予め定められる。
The
監視処理部13は、予め定められた数のSQLコマンドがタイムアウトした場合に、データベースサーバ2を再起動する。具体的には、監視処理部13は、再起動コマンドをデータベースサーバ2へ送信する。データベースサーバ2は、受信した再起動コマンドを実行する。これにより、データベースサーバ2の種々の制御プログラムが一旦停止され、データベースサーバ2のOS(オペレーティングシステム)が再起動され、OSの再起動に伴ってデータベースサーバ2の種々の制御プログラムが再起動される。
The
データベースサーバ2の再起動の間、例えば数分の間、クライアント3は、データベースサーバ2へアクセスすることができない。換言すれば、実行処理部12は、SQLコマンドを実行することができない。なお、実際には、再起動されるデータベースサーバ2の予備のデータベースサーバ2’が設けられ、データベースサーバ2の再起動が完了するまでの間、クライアント3から予備のデータベースサーバ2’へのアクセスが可能とされる。予備のデータベース21’はデータベース21と同じ内容を格納するので、クライアント3は、実際には、データベースサーバ2の再起動を意識する必要がない。
During the restart of the
データベースサーバ2は、予め定められた数、換言すれば、再起動に必要な数のSQLコマンドがタイムアウトした場合に、再起動される。再起動に必要な数は、経験的に定めることができ、予め定められる。
The
監視処理部13は、後述するように、監視情報格納部14に、監視処理におけるパラメータとして全体監視時間を備える。監視情報格納部14については、図3を参照して後述する。全体監視時間は、複数のアプリケーション処理部11により発行されたSQLコマンドを監視する時間を定める。監視処理部13は、複数のアプリケーション処理部11のいずれかにより発行されたSQLコマンドが最初にタイムアウトした場合に、全体監視時間のカウントを開始させる。監視処理部13は、全体監視時間内に予め定められた数、換言すれば、再起動に必要な数のSQLコマンドがタイムアウトした場合に、データベースサーバ2を再起動する。
As will be described later, the
「再起動に必要な数」は、例えば、全体監視時間内に発行可能なSQLコマンドの総数とされる。全体監視時間内に発行可能なSQLコマンドの総数は、全体監視時間と下限SQL発行間隔とに基づいて定まる。この場合、全体監視時間内に発行可能なSQLコマンドの全てがタイムアウトした場合に、データベースサーバ2が再起動されることになる。これにより、後述するように、データベースサーバ2の再起動が頻繁に実行されることを防止することができる。
The “number necessary for restart” is, for example, the total number of SQL commands that can be issued within the overall monitoring time. The total number of SQL commands that can be issued within the overall monitoring time is determined based on the overall monitoring time and the lower limit SQL issue interval. In this case, the
「再起動に必要な数」は、全体監視時間内に発行可能なSQLコマンドの総数に限られず、これ以外の数であっても良い。例えば、全体監視時間内に発行可能なSQLコマンドの総数に基づいて算出した数、換言すれば、前記総数に所定の割合を乗じて算出した値を、再起動に必要な数とするようにしても良い。また、全体監視時間内に発行可能なSQLコマンドの総数とは無関係に定めた数を、再起動に必要な数とするようにしても良い。 The “number required for restart” is not limited to the total number of SQL commands that can be issued within the overall monitoring time, but may be other numbers. For example, the number calculated based on the total number of SQL commands that can be issued within the overall monitoring time, in other words, the value calculated by multiplying the total number by a predetermined ratio is set as the number necessary for restarting. Also good. Further, the number determined regardless of the total number of SQL commands that can be issued within the overall monitoring time may be set as the number necessary for restarting.
図2は、監視テーブルの一例を示す図である。 FIG. 2 is a diagram illustrating an example of the monitoring table.
監視テーブル格納部15は監視テーブル151を格納する。監視テーブル151は、基本的には、アプリケーション処理部11からのSQL登録処理の依頼に基づいて、登録を依頼されたSQLコマンドを登録することにより、監視処理部13により作成される。監視テーブル151は、SQLコマンド毎に、スレッドID、DBコマンド、開始時刻、キャンセル時刻を格納する。
The monitoring
SQLコマンドは、「SQL#1」等のコマンドIDにより表される。コマンドIDは、SQLコマンドを一意に特定する識別情報である。スレッドIDは、対応するSQLコマンドを発行したアプリケーション処理部11、換言すれば、アプリケーション処理スレッドを一意に特定する識別情報である。DBコマンドは、対応するSQLコマンドの内容、換言すれば、SELECT文等の記述内容である。SQLコマンド、スレッドID及びDBコマンドは、アプリケーション処理部11からのSQL登録処理の依頼に基づいて、登録を依頼された時点で、監視テーブル151に格納される。
The SQL command is represented by a command ID such as “
開始時刻は、対応するSQLコマンドの実行が開始された時刻であり、実際には、対応するSQLコマンドが監視テーブル151に登録された時刻である。開始時刻は、アプリケーションサーバ1の備えるタイマから取得される。開始時刻は、アプリケーション処理部11からSQLコマンドの登録を依頼された時点で、監視テーブル151に格納される。
The start time is the time when execution of the corresponding SQL command is started, and is actually the time when the corresponding SQL command is registered in the monitoring table 151. The start time is acquired from a timer provided in the
キャンセル時刻は、対応するSQLコマンドの実行がキャンセルされた時刻である。キャンセル時刻は、アプリケーションサーバ1の備えるタイマから取得される。キャンセル時刻は、監視処理部13から実行処理部12へキャンセル処理を依頼し、実行処理部12から前記キャンセル処理の依頼への応答が監視処理部13へ返信された時点で、監視処理部13により監視テーブル151に格納される。
The cancel time is the time when execution of the corresponding SQL command is cancelled. The cancellation time is acquired from a timer provided in the
図3は、監視情報の一例を示す図である。 FIG. 3 is a diagram illustrating an example of monitoring information.
監視情報格納部14は、SQL監視処理における種々のパラメータを格納する。監視情報格納部14は、全体監視時間領域141、監視間隔領域142、下限SQL監視間隔領域143、下限SQL発行件数領域144、下限SQL発行間隔領域145、全体監視開始時刻領域146、SQLタイムアウト件数領域147、前回SQL実行時刻領域148、SQL発行件数領域149を含む。これらの領域141〜149に格納される情報が、SQL監視処理におけるパラメータである。
The monitoring
全体監視時間領域141は全体監視時間を格納する。全体監視時間は、経験的に求めることができ、予め定められる。全体監視時間は、SQLコマンドの監視処理において、複数のアプリケーション処理部11により発行された全てのSQLコマンド、換言すれば、監視テーブル151に登録されたSQLコマンドを監視する時間である。
The overall
監視間隔領域142は監視間隔を格納する。監視間隔は、経験的に求めることができ、予め定められる。監視間隔は、SQLコマンドの監視処理において、監視処理部13がSQLコマンドの監視を実行する間隔である。
The
下限SQL監視間隔領域143は下限SQL監視間隔を格納する。下限SQL監視間隔は、経験的に求めることができ、予め定められる。下限SQL監視間隔は、SQLコマンドの監視処理において、予め定められた数のSQLコマンドがタイムアウトした場合であってもデータベースサーバ2の再起動に寄与しない条件、換言すれば、再起動の例外条件を定める。具体的には、SQLコマンドの監視間隔が下限SQL監視間隔よりも小さい場合には、その時点でタイムアウトしたSQLコマンド又はその時点までにタイムアウトしたSQLコマンドが、データベースサーバ2の再起動に必要な数としてカウントされない。又は、予め定められた数のSQLコマンドがタイムアウトした場合であっても、SQLコマンドの監視間隔が下限SQL監視間隔よりも小さい場合には、データベースサーバ2は再起動されない。
The lower limit SQL monitoring
下限SQL発行件数領域144は下限SQL発行件数を格納する。下限SQL発行件数は、経験的に求めることができ、予め定められる。下限SQL発行件数は、SQLコマンドの監視処理において、再起動の例外条件を定める。具体的には、SQLコマンドの発行件数が下限SQL発行件数よりも小さい場合には、その時点でタイムアウトしたSQLコマンド又はその時点までにタイムアウトしたSQLコマンドが、データベースサーバ2の再起動に必要な数としてカウントされない。又は、予め定められた数のSQLコマンドがタイムアウトした場合であっても、SQLコマンドの発行件数が下限SQL発行件数よりも小さい場合には、データベースサーバ2は再起動されない。
The lower limit SQL
下限SQL発行間隔領域145は下限SQL発行間隔を格納する。下限SQL発行間隔は、経験的に求めることができ、予め定められる。下限SQL発行間隔は、後述するように、再起動可能時刻を算出するために用いられる。
The lower limit SQL
全体監視開始時刻領域146は全体監視開始時刻を格納する。全体監視開始時刻は、SQLコマンドの監視処理において、監視処理部13がSQLコマンドの監視を開始した時刻、換言すれば、複数のアプリケーション処理部11のいずれかにより発行されたSQLコマンドが最初にタイムアウトした時刻である。更に言えば、全体監視開始時刻は、複数のアプリケーション処理部11のいずれかにより発行されたSQLコマンドについて、最初にキャンセル処理を実行するサブルーチンであるキャンセル処理実行部が呼び出された時刻である。全体監視開始時刻は、後述するように、監視テーブル151のキャンセル時刻から取得される。全体監視開始時刻は、監視処理部13がSQLコマンドの監視を開始した時点で、監視処理部13により全体監視開始時刻領域146に格納される。
The overall monitoring
SQLタイムアウト件数領域147はSQLタイムアウト件数を格納する。SQLタイムアウト件数は、SQLコマンドの監視処理において、タイムアウトしたSQLコマンドの件数である。SQLタイムアウト件数は、監視処理部13により、SQLコマンドがタイムアウトする都度にカウントされ、SQLタイムアウト件数領域147に格納される。
The SQL
前回SQL実行時刻領域148は前回SQL実行時刻を格納する。前回SQL実行時刻は、SQLコマンドの監視処理において、前回発行された、換言すれば、最新のSQLコマンドの直前に発行されたSQLコマンドの発行時刻である。前回SQL実行時刻は、監視処理部13が最新のSQLコマンドを監視テーブル151に登録した時点で、監視処理部13により、監視テーブル151において、最新のSQLコマンドの直前に発行されたSQLコマンドの発行時刻を参照して、前回SQL実行時刻領域148に格納される。
The previous SQL
SQL発行件数領域149はSQL発行件数を格納する。SQL発行件数は、SQLコマンドの監視処理において、複数のアプリケーション処理部11から発行されたSQLコマンドの件数である。SQL発行件数は、監視処理部13により、SQLコマンドが発行される都度にカウントされ、SQL発行件数領域149に格納される。
The SQL
図4は、アプリケーションサーバのハードウェア構成の一例を示す図である。 FIG. 4 is a diagram illustrating an example of a hardware configuration of the application server.
CPU101は、ROM103に格納された制御プログラムに従って、アプリケーションサーバ1を制御する。CPU101は、例えば主メモリであるRAM102上のアプリケーション処理プログラム、実行処理プログラム、監視処理プログラムを実行する。これにより、アプリケーション処理部11、実行処理部12、監視処理部13が実現される。アプリケーション処理プログラム、実行処理プログラム、監視処理プログラムは、例えば、CD−ROMやDVD等の記録媒体107に格納され、記録媒体107からハードディスク106に入力され、ハードディスク106からRAM102にロードされる。監視情報格納部14、監視テーブル格納部15は、例えばRAM102に設けられる。
The
入力装置104は、例えばキーボードであり、マウス等を含んでも良い。出力装置105は、例えばディスプレイであり、プリンタ等の出力装置を含んでも良い。CPU101、RAM102、ROM103、入力装置104、出力装置105、及び、ハードディスク106は、バス100を介して、相互に接続される。
The
図5は、アプリケーションサーバにおけるSQL監視処理の説明図である。 FIG. 5 is an explanatory diagram of the SQL monitoring process in the application server.
図5において、アプリケーション処理部11として、複数のアプリケーション処理スレッド31が生成されている。また、監視処理部13として、アプリケーションタイムアウトスレッド131が生成されている。また、実行処理部12をSQLコマンド実行部121と言うこととする。
In FIG. 5, a plurality of
アプリケーション処理スレッド31は、対応するクライアント3からデータベースサーバ2への問合せ要求を受信する。これに応じて、アプリケーション処理スレッド31は、SQL監視処理への登録、換言すれば、監視テーブル151への登録をアプリケーションタイムアウトスレッド131に依頼し(P#1)、その後、SQLコマンドの実行をSQLコマンド実行部121に依頼する(P#2)。SQLコマンド実行部121は、実行を依頼されたSQLコマンドの実行をデータベースサーバ2へ依頼する。
The
この後、アプリケーション処理スレッド32は、対応するクライアント3からデータベースサーバ2への問合せ要求を受信する。これに応じて、アプリケーション処理スレッド32は、SQL監視処理への登録をアプリケーションタイムアウトスレッド131に依頼し(P#1’)、その後、SQLコマンドの実行をSQLコマンド実行部121に依頼する(P#2’)。SQLコマンド実行部121は、実行を依頼されたSQLコマンドをデータベースサーバ2に対して実行する。
Thereafter, the
アプリケーションタイムアウトスレッド131は、アプリケーション処理スレッド31及びアプリケーション処理スレッド32からSQL監視処理への登録を依頼されたSQLコマンドの全体ついての実行を周期的に監視する(P#3)。SQL監視処理への登録を依頼されたSQLコマンドを、監視対象SQLコマンドと言うこととする。監視対象SQLコマンドは、監視テーブル151に登録されたSQLコマンドである。
The
アプリケーションタイムアウトスレッド131は、監視対象SQLコマンドの実行が予め定められた期間内に終了しない場合、換言すれば、監視対象SQLコマンドがタイムアウトした場合、キャンセル処理を実行するサブルーチンであるキャンセル処理実行部を呼び出す(P#4)。呼び出されたキャンセル処理実行部は、SQLコマンド実行部121に対してSQLコマンドのキャンセルを実行する。
When the execution of the monitoring target SQL command does not end within a predetermined period, in other words, when the monitoring target SQL command times out, the
P#4の処理において、アプリケーションタイムアウトスレッド131は、監視テーブル151において、タイムアウトしたSQLコマンドについてキャンセル時刻を格納する。キャンセル時刻は、アプリケーションサーバ1の備えるタイマから取得される。また、アプリケーションタイムアウトスレッド131は、タイムアウトしたSQLコマンドについて監視テーブル151に格納したキャンセル時刻に基づいて、全体監視開始時刻領域146に全体監視開始日時を設定する。
In the process of P # 4, the
例えば、実行処理部12が他のアプリケーション処理スレッド32からのSQLコマンドを実行中でない場合には、SQLコマンド実行部121は、データベースサーバ2へ実行を依頼したSQLコマンドをキャンセルすることができる。また、データベースサーバ2が正常である場合には、実行処理部12は、データベースサーバ2へ実行を依頼したSQLコマンドをキャンセルすることができる。監視処理部13は、複数のアプリケーション処理部11により発行されたSQLコマンドがキャンセルされた場合であっても、キャンセルされたSQLコマンドを監視対象SQLコマンドとする。
For example, when the
一方、実行処理部12が他のアプリケーション処理スレッド32からのSQLコマンドを実行中である場合には、SQLコマンド実行部121は、データベースサーバ2へ実行を依頼したSQLコマンドをキャンセルすることができない。また、データベースサーバ2が正常でない場合には、SQLコマンド実行部121は、データベースサーバ2へ実行を依頼したSQLコマンドをキャンセルすることができない。
On the other hand, when the
以上のように、キャンセルが成功するか失敗するかに拘わりなく、キャンセル処理を実行するキャンセル処理実行部が呼び出されたSQLコマンドが、タイムアウトしたSQLコマンドとしてカウントされる。以上の結果として、データベースサーバ2において、SQLコマンドがタイムアウトする原因が存在する場合、以下の図6に示すように、監視対象SQLが、連続してタイムアウトする。
As described above, regardless of whether the cancellation is successful or unsuccessful, the SQL command for which the cancel processing execution unit that executes the cancel processing is called is counted as a time-out SQL command. As a result of the above, when there is a cause for the SQL command to time out in the
図6は、アプリケーションサーバにおけるSQL監視処理の説明図である。 FIG. 6 is an explanatory diagram of the SQL monitoring process in the application server.
例えば、時刻t11に1番目のSQLコマンドであるSQL#1が発行される。しかし、SQL#1は実行されずに、時刻t12にSQL#1のタイムアウトが発生する。これにより、全体監視時間のカウントがスタートし、全てのSQLが監視対象とされる。このために、監視処理部13は、全体監視時間カウンタを含む。
For example,
この後、時刻t13に2番目のSQLコマンドであるSQL#2が発行される。しかし、SQL#2は実行されずに、時刻t14にSQL#2のタイムアウトが発生する。この後、更に、複数のSQLコマンドが発行される。しかし、発行された全てのSQLコマンドが実行されず、発行された全てのSQLコマンドのタイムアウトが発生する。
Thereafter,
ここで、SQL#1及び#2を含めて、全体で100個のSQLコマンドが発行されたとする。また、100個のSQLの中で、最後に、時刻t15に100番目のSQLコマンドであるSQL#100が発行され、実行されず、時刻t16にSQL#100のタイムアウトが発生するものとする。
Here, it is assumed that 100 SQL commands are issued in total including
例えば、時刻t12からカウントを開始した全体監視時間が、時刻t17に予め定められた時間、例えば600秒に達したとする。従って、全体監視時間が経過した時刻t17までに、発行された全てのSQLコマンドのタイムアウトが発生している。換言すれば、全体監視時間が経過し、かつ、発行された全てのSQLコマンドのタイムアウトが発生している。そこで、時刻t17に、データベースサーバ2が再起動される。これにより、SQLコマンドのリトライが無駄に繰り返されることを回避することができる。
For example, it is assumed that the overall monitoring time when counting is started from time t12 reaches a predetermined time, for example, 600 seconds at time t17. Therefore, the time-out of all issued SQL commands has occurred until time t17 when the overall monitoring time has elapsed. In other words, the entire monitoring time has elapsed, and timeouts of all issued SQL commands have occurred. Therefore, the
この後、時刻t18にSQL#101が発行され、時刻t19に101番目のSQLコマンドであるSQL#101が正常に実行され終了する。更に、時刻t110に102番目のSQLコマンドであるSQL#102が発行され、SQL発行件数がカウントされる。しかし、SQL#102は実行されずに、時刻t111にSQL#102のタイムアウトが発生する。これにより、全体監視時間のカウントがスタートし、全てのSQLが監視対象とされる。
Thereafter,
この後、時刻t112に103番目のSQLコマンドであるSQL#103が発行され、正常に実行され、時刻t113に終了する。これにより、全体監視時間のカウントがストップし、全てのSQLについての監視がストップされる。
Thereafter,
図6に対して、前述したように、データベースサーバ2の再起動の例外が設けられる。監視処理部13は、監視情報格納部14に格納された再起動の例外条件を用いて、タイムアウトしたSQLコマンドをデータベースサーバ2の再起動に必要な数としてカウントしないようにするか、又は、予め定められた数のSQLコマンドがタイムアウトした場合であってもデータベースサーバ2を再起動しないようにする。
As shown in FIG. 6, an exception for restarting the
図7は、アプリケーションサーバにおけるSQL監視処理の説明図である。 FIG. 7 is an explanatory diagram of the SQL monitoring process in the application server.
例えば、監視処理部13は、前述したように、データベースサーバ2を再起動する場合から除外する例外条件として、下限SQL発行件数を備える。下限SQL発行件数は、複数のアプリケーション処理部11により発行されたSQLコマンドの発行件数を定める。
For example, as described above, the
監視処理部13は、図7に示すように、全体監視時間内に予め定められた数のSQLコマンドがタイムアウトした場合において、タイムアウトしたSQLコマンドの件数が下限SQL発行件数より少ない場合には、予め定められた数のSQLコマンドがタイムアウトした場合を、データベースサーバ2を再起動する場合から除外する。
As shown in FIG. 7, when the predetermined number of SQL commands time out within the overall monitoring time, the
図7において、例えば、時刻t21にSQL#1が発行され、SQL発行件数がカウントされる。しかし、SQL#1は実行されずに、時刻t22にSQL#1のタイムアウトが発生する。これにより、全体監視時間のカウントがスタートし、全てのSQLが監視対象とされる。
In FIG. 7, for example,
この後、時刻t23にSQL#2が発行され、SQL発行件数がカウントされる。しかし、SQL#2は実行されずに、時刻t24にSQL#2のタイムアウトが発生する。この後、更に、複数のSQLコマンドが発行され、その都度SQL発行件数がカウントされる。しかし、発行された全てのSQLコマンドが実行されず、発行された全てのSQLコマンドのタイムアウトが発生する。
Thereafter,
ここで、SQL#1及び#2を含めて、全体で50個のSQLコマンドが発行されたとする。また、50個のSQLの中で、最後に、時刻t25に50番目のSQLコマンドであるSQL#50が発行され、実行されず、時刻t26にSQL#50のタイムアウトが発生するものとする。SQL#50のタイムアウトが発生した時点におけるSQL発行件数は「50」である。
Here, it is assumed that 50 SQL commands are issued in total including
例えば、時刻t22からカウントを開始した全体監視時間が、時刻t27に予め定められた時間、例えば600秒に達したとする。従って、全体監視時間が経過した時刻t27までに、発行された全てのSQLコマンドのタイムアウトが発生している。換言すれば、全体監視時間が経過し、かつ、発行された全てのSQLコマンドのタイムアウトが発生している。 For example, it is assumed that the overall monitoring time when counting is started from time t22 reaches a predetermined time, for example, 600 seconds at time t27. Therefore, the time-out of all issued SQL commands has occurred by time t27 when the overall monitoring time has elapsed. In other words, the entire monitoring time has elapsed, and timeouts of all issued SQL commands have occurred.
しかし、この場合、全体監視時間が経過し、かつ、発行された全てのSQLコマンドのタイムアウトが発生しているにも拘らず、データベースサーバ2は再起動されない。これは、全体監視時間が経過した時点におけるSQLの発行件数が、「50」であり、下限SQL発行件数「60」より小さいためである。
However, in this case, the
この結果、全体監視時間が経過した時点におけるSQLの発行件数が少ない場合には、これらのタイムアウトが、データベースサーバ2の再起動の原因とならない。これにより、データベースサーバ2の再起動が頻繁に実行されることを防止することができる。
As a result, when the number of SQL issuances is small when the overall monitoring time has elapsed, these timeouts do not cause the
図8は、アプリケーションサーバにおけるSQL監視処理の説明図である。 FIG. 8 is an explanatory diagram of the SQL monitoring process in the application server.
例えば、監視処理部13は、下限SQL発行間隔を備える。下限SQL発行間隔は、データベースサーバ2を再起動する場合から除外する例外条件として、複数のアプリケーション処理部11により発行されるSQLコマンドの発行の時間間隔を定める。
For example, the
監視処理部13は、図8に示すように、複数のアプリケーション処理部11により発行されたSQLコマンドの発行の時間間隔が下限SQL発行間隔よりも長い場合には、その時点までに発行されたSQLコマンドを監視対象から除外し、その時点における全体監視時間のカウントをリセットしてその時点から再スタートさせる。
As shown in FIG. 8, when the time interval for issuing the SQL commands issued by the plurality of
図8において、例えば、時刻t31にSQL#1が発行され、現在時刻t31を前回SQL実行時刻とする。しかし、SQL#1は実行されずに、時刻t32にSQL#1のタイムアウトが発生する。これにより、全体監視時間のカウントがスタートし、全てのSQLが監視対象とされる。
In FIG. 8, for example,
この後、時刻t33にSQL#2が発行され、現在時刻t33が前回SQL実行時刻とされる。しかし、SQL#2は実行されずに、時刻t34にSQL#2のタイムアウトが発生する。
Thereafter,
この後、前回SQL実行時刻t33から例えば70秒経過した後において、時刻t35にSQL#3が発行される。
Thereafter, after 70 seconds elapse from the previous SQL execution time t33,
この時、SQLの発行の時間間隔に基づいて、時刻t32からスタートした全体監視時間のカウントが中止される。これは、最新のSQL#3の発行時刻t35において、前回SQL実行時刻t33から現在時刻t35までの時間が、「70秒」であり、下限SQL発行間隔「60秒」より大きいためである。なお、全体監視時間のカウントの中止の後、現在時刻t35が新たな前回SQL実行時刻とされる。
At this time, counting of the entire monitoring time started from time t32 is stopped based on the time interval for issuing SQL. This is because the time from the previous SQL execution time t33 to the current time t35 is “70 seconds” at the
この結果、時刻t32におけるSQL#1のタイムアウト及び時刻t34におけるSQL#2のタイムアウトが、データベースサーバ2の再起動の原因とならない。これにより、データベースサーバ2の再起動が頻繁に実行されることを防止することができる。
As a result, the
図9は、アプリケーションサーバにおけるSQL処理フローチャートである。 FIG. 9 is an SQL process flowchart in the application server.
アプリケーション処理部11は、前述したように、監視処理部13にSQLコマンドの監視、換言すれば、監視テーブル151へのSQLコマンドの登録を依頼する。これに応じて、監視処理部13は、SQLコマンドを監視テーブル151に登録するSQL登録処理を実行する(ステップS11)。SQL登録処理については、図10を参照して後述する。
As described above, the
この後、アプリケーション処理部11は、前述したように、実行処理部12にSQLコマンドの実行を依頼する。これに応じて、実行処理部12は、登録されたSQLコマンドを実行する(ステップS12)。
Thereafter, the
この後、監視処理部13は、実行されたSQLコマンドを監視テーブル151から削除するSQL登録解除処理を実行する(ステップS13)。SQL登録解除処理については、図11を参照して後述する。
Thereafter, the
図10は、SQL登録処理フローチャートである。 FIG. 10 is an SQL registration process flowchart.
監視処理部13は、監視テーブル151を排他状態とした上で(ステップS21)、監視テーブル151に、スレッド、DBコマンド、開始時刻を登録する(ステップS22)。監視処理部13は、SQL発行件数領域149に格納されているSQL発行件数を「SQL発行件数+1」とする(ステップS23)。この後、監視処理部13は、監視テーブル151を排他解除状態とする(ステップS24)。
The
図11は、SQL登録解除処理フローチャートである。 FIG. 11 is an SQL registration release processing flowchart.
監視処理部13は、監視テーブル151を排他状態とした上で(ステップS31)、監視テーブル151から、実行されたSQLについての情報であるSQL情報を削除する(ステップS32)。監視処理部13は、SQL発行件数領域149に格納されているSQL発行件数を「SQL発行件数−1」とする(ステップS33)。この後、監視処理部13は、監視テーブル151を排他解除状態とする(ステップS34)。
The
図12は、SQL監視処理フローチャートである。 FIG. 12 is an SQL monitoring process flowchart.
監視処理部13は、監視テーブル151を排他状態とした上で(ステップS41)、データベース監視処理を実行し(ステップS42)、更に、タイムアウト監視処理を実行する(ステップS43)。データベース監視処理については、図13を参照して後述する。タイムアウト監視処理については、図14を参照して後述する。この後、監視処理部13は、監視テーブル151を排他解除状態とした上で(ステップS44)、スリープ状態となり(ステップS45)、監視間隔領域142に格納された監視間隔が経過するのを待って、ステップS41を繰り返す。
The
図13は、データベース監視処理フローチャートである。 FIG. 13 is a flowchart of the database monitoring process.
監視処理部13は、全体監視開始時刻領域146に全体監視開始日時が設定されているか否かを判断する(ステップS51)。全体監視開始日時が設定されていない場合、監視処理部13は、処理を終了する。
The
全体監視開始日時が設定されている場合、監視処理部13は、全体監視開始時刻に全体監視時間を加算することにより監視終了時刻を算出する(ステップS52)。この後、監視処理部13は、算出した監視終了時刻が現在時刻に到達しているか否かを判断する(ステップS53)。現在時刻が監視終了時刻に到達していない場合、監視処理部13は、処理を終了する。
When the overall monitoring start date and time is set, the
現在時刻が監視終了時刻に到達している場合、監視処理部13は、更に、SQL発行件数が下限SQL発行件数領域144に格納された下限SQL発行件数以上であるか否かを判断する(ステップS54)。SQL発行件数が下限SQL発行件数以上でない場合、監視処理部13は、処理を終了する。
If the current time has reached the monitoring end time, the
SQL発行件数が下限SQL発行件数以上である場合、監視処理部13は、前回SQL実行時刻領域148に格納された前回SQL実行時刻に、下限SQL発行間隔領域145に格納された下限SQL発行間隔を加算することにより、再起動可能時刻を算出する(ステップS55)。この後、監視処理部13は、算出した再起動可能時刻が現在時刻に到達しているか否かを判断する(ステップS56)。現在時刻が再起動可能時刻に到達していない場合、監視処理部13は、次のステップS57を実行することなく、処理を終了する。
When the number of SQL issuances is equal to or greater than the lower limit number of SQL issuances, the
現在時刻が再起動可能時刻に到達している場合、監視処理部13は、再起動スクリプトを呼び出し(ステップS57)、処理を終了する。
If the current time has reached the restartable time, the
ステップS54において、SQL発行件数が下限SQL発行件数領域144に格納された下限SQL発行件数より小さい場合、監視処理部13は、全体監視開始時刻領域146の全体監視開始日時を「NULL」に設定して(ステップS58)、処理を終了する。
In step S54, when the number of SQL issuances is smaller than the lower limit number of SQL issuances stored in the lower limit SQL
図14は、タイムアウト監視処理フローチャートである。 FIG. 14 is a flowchart of timeout monitoring processing.
監視処理部13は、監視テーブル151から発行順に1個のSQLコマンドを取り出す(ステップS61)。取り出されたSQLコマンドを「SQLn」と言うこととする。監視処理部13は、SQLn開始時刻に下限SQL時間を加算することにより終了日時を算出する(ステップS62)。この後、監視処理部13は、算出した終了日時がSQLn現在時刻に到達しているか否かを判断する(ステップS63)。終了日時がSQLn現在時刻に到達していない場合、監視処理部13は、後述するステップS611を実行する。
The
終了日時がSQLn現在時刻に到達している場合、監視処理部13は、更に、監視テーブル151に、「SQLn」のキャンセル時刻であるSQLnキャンセル時刻が設定されているか否かを判断する(ステップS64)。SQLnキャンセル時刻が設定されている場合、監視処理部13は、後述するステップS611を実行する。
When the end date / time has reached the current SQLn time, the
SQLnキャンセル時刻が設定されていない場合、監視処理部13は、現在時刻をSQLnキャンセル時刻に設定し(ステップS65)、キャンセル処理実行部を呼び出す(ステップS66)。
When the SQLn cancel time is not set, the
この後、監視処理部13は、全体監視開始時刻領域146に全体監視開始時刻が設定されているか否かを判断する(ステップS67)。全体監視開始時刻が設定されていない場合、監視処理部13は、現在日時を全体監視開始時刻領域146の全体監視開始時刻に設定し(ステップS68)、SQL発行件数領域149のSQL発行件数を「1」とする(ステップS69)。全体監視開始日時が設定されている場合、監視処理部13は、SQL発行件数領域149のSQL発行件数を「SQL発行件数+1」とする(ステップS610)。
Thereafter, the
この後、監視処理部13は、SQLnが最後のSQLであるか否かを判断する(ステップS611)。SQLnが最後のSQLでない場合、監視処理部13は、ステップS61を繰り返す。SQLnが最後のSQLである場合、監視処理部13は、処理を終了する。
Thereafter, the
1 アプリケーションサーバ
2 データベースサーバ
3 クライアント
4、5 ネットワーク
11 アプリケーション処理部
12 実行処理部
13 監視処理部
14 監視情報格納部
15 監視テーブル格納部
DESCRIPTION OF
Claims (8)
前記プログラムは、コンピュータに、
データベースサーバへの問合せを発行する問合せステップと、
前記問合せステップにおいて発行された前記問合せを前記データベースサーバに対して実行する実行ステップと、
前記問合せステップにおいて発行された前記問合せを監視対象として、前記問合せが予め定められた期間に前記実行ステップにおいて実行されない状態であるタイムアウトを監視し、前記問合せステップにおいて発行された前記問合せを監視する時間を定める時間である全体監視時間内に、予め定められた数の前記問合せがタイムアウトした場合に、前記データベースサーバを再起動する監視ステップとを実行させる
ことを特徴とするプログラム。 A program for operating a computer as an application server,
The program is stored in a computer.
A query step for issuing a query to the database server;
An execution step of executing the query issued in the query step with respect to the database server;
Time to monitor the query issued in the query step, monitoring the timeout that is not executed in the execution step in a predetermined period with the query issued in the query step being monitored And a monitoring step of restarting the database server when a predetermined number of inquiries have timed out within an overall monitoring time that is a predetermined time.
ことを特徴とする請求項1に記載のプログラム。 2. The program according to claim 1, wherein in the monitoring step, counting of the total monitoring time is started when the inquiry issued in the inquiry step first times out.
ことを特徴とする請求項2に記載のプログラム。 In the monitoring step, when a time interval of issuing the query issued in the query step is longer than a lower limit query issuing interval that defines a time interval of issuing the query issued in the query step, the time point 3. The program according to claim 2, wherein the query issued until then is excluded from the monitoring target, the count of the total monitoring time at that time is reset, and restarted from that time.
ことを特徴とする請求項1に記載のプログラム。 In the monitoring step, when the predetermined number of the queries timed out within the overall monitoring time, the number of the queries that timed out determines the lower limit query that determines the number of the queries issued in the querying step. The case where the number of issued cases is smaller than a case where the predetermined number of the queries time out within the overall monitoring time is excluded from a case where the database server is restarted. Program.
ことを特徴とする請求項1に記載のプログラム。 The program according to claim 1, wherein, in the monitoring step, even if the inquiry issued in the inquiry step is canceled, the canceled inquiry is the monitoring target.
ことを特徴とする請求項1に記載のプログラム。 In the inquiry step, a thread generated according to each of a plurality of clients connected to the application server issues the inquiry in response to an inquiry request to the database server received from the corresponding client. The program according to claim 1.
発行された前記問合せを前記データベースサーバに対して実行するステップと、
発行された前記問合せを監視対象として、前記問合せが予め定められた期間に実行されない状態であるタイムアウトを監視するステップと、
発行された前記問合せを監視する時間を定める時間である全体監視時間内に、予め定められた数の前記問合せがタイムアウトした場合に、前記データベースサーバを再起動するステップとを含む
ことを特徴とするアプリケーションサーバ装置の制御方法。 Issuing a query to the database server;
Executing the issued query against the database server;
Monitoring the time-out in which the query is not executed in a predetermined period, with the issued query as a monitoring target;
Restarting the database server when a predetermined number of the queries time out within an overall monitoring time, which is a time for determining a time for monitoring the issued queries. Control method of application server device.
前記複数のアプリケーション処理部により発行された前記問合せを前記データベースサーバに対して実行する実行処理部と、
前記複数のアプリケーション処理部により発行された前記問合せを監視対象として、前記問合せが予め定められた期間に前記実行処理部で実行されない状態であるタイムアウトを監視し、発行された前記問合せを監視する時間を定める時間である全体監視時間内に、予め定められた数の前記問合せがタイムアウトした場合に、前記データベースサーバを再起動する監視処理部とを含む
ことを特徴とするアプリケーションサーバ装置。 Multiple application processing units that issue queries to the database server;
An execution processing unit that executes the query issued by the plurality of application processing units to the database server;
As a monitoring target issued the query by the plurality of application processing unit, the query monitors the timeout is a state that is not executed by the execution unit in a predetermined period, monitoring the query is issued An application server device comprising: a monitoring processing unit that restarts the database server when a predetermined number of the queries time out within an overall monitoring time that is a time for determining a time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010227505A JP5567444B2 (en) | 2010-10-07 | 2010-10-07 | Program, application server device control method, application server device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010227505A JP5567444B2 (en) | 2010-10-07 | 2010-10-07 | Program, application server device control method, application server device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012083841A JP2012083841A (en) | 2012-04-26 |
JP5567444B2 true JP5567444B2 (en) | 2014-08-06 |
Family
ID=46242664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010227505A Expired - Fee Related JP5567444B2 (en) | 2010-10-07 | 2010-10-07 | Program, application server device control method, application server device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5567444B2 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0736161B2 (en) * | 1984-01-23 | 1995-04-19 | 日新電機株式会社 | CPU abnormality detection device |
JP2000163655A (en) * | 1998-11-26 | 2000-06-16 | Toshiba Tec Corp | Commodity sales data processing system |
JP2004213122A (en) * | 2002-12-27 | 2004-07-29 | Idemitsu Kosan Co Ltd | Stable operation method of control system by client/server and program therefor |
JP4756001B2 (en) * | 2007-02-16 | 2011-08-24 | 楽天株式会社 | Information providing apparatus, appropriate determination information generation method, and appropriate determination information generation processing program |
JP2009157662A (en) * | 2007-12-26 | 2009-07-16 | Nec Corp | Database management apparatus, database management method, and database management program |
-
2010
- 2010-10-07 JP JP2010227505A patent/JP5567444B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012083841A (en) | 2012-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3008592B1 (en) | Pre-fetching content for service-connected applications | |
CN111767184A (en) | Fault diagnosis method and device, electronic equipment and storage medium | |
US9665391B2 (en) | Automated transaction tuning in application servers | |
US20100131952A1 (en) | Assistance In Performing Action Responsive To Detected Event | |
US20160140164A1 (en) | Complex event processing apparatus and complex event processing method | |
US20110228668A1 (en) | Method and system for automatic failover of distributed query processing using distributed shared memory | |
US11789751B2 (en) | System and method for estimation of time to completion for heterogeneous application upgrades in a customer environment | |
CN111352797B (en) | System and method for monitoring software application processes | |
JP2019502202A (en) | Method and apparatus for upgrading a distributed storage system | |
US20140337303A1 (en) | Bandwidth optimized two-phase commit protocol for distributed transactions | |
US20230185558A1 (en) | System and method for managing a model for solving issues using a set of actions performed on the client environment | |
JPH1063523A (en) | Method and device for controlling activation of server in multithread environment | |
US20160357623A1 (en) | Abnormality detection method and information processing apparatus | |
EP2524302A2 (en) | Persistent application activation and timer notifications | |
CN112508191A (en) | Method and device for training deep learning model, electronic equipment and storage medium | |
CN113238815A (en) | Interface access control method, device, equipment and storage medium | |
JP5567444B2 (en) | Program, application server device control method, application server device | |
CN109446034B (en) | Method and device for reporting crash event, computer equipment and storage medium | |
US11934820B2 (en) | System and method for managing a model for solving issues relating to application upgrades in a customer environment | |
CN111552637A (en) | Database state detection method and device, electronic equipment and storage medium thereof | |
CN114328083B (en) | WDT monitoring method, device and medium | |
JP2020119018A (en) | Information processing system, information processing device and program | |
US20100121827A1 (en) | Cim data quarantine | |
WO2021000656A1 (en) | Control method, apparatus and communication device for deadlock detection, and computer storage medium | |
US10083086B2 (en) | Systems and methods for automatically resuming commissioning of a partition image after a halt in the commissioning process |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130627 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140331 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140527 |
|
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: 20140617 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140619 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5567444 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |