JP2011095869A - Request information processing method and computer system - Google Patents

Request information processing method and computer system Download PDF

Info

Publication number
JP2011095869A
JP2011095869A JP2009247203A JP2009247203A JP2011095869A JP 2011095869 A JP2011095869 A JP 2011095869A JP 2009247203 A JP2009247203 A JP 2009247203A JP 2009247203 A JP2009247203 A JP 2009247203A JP 2011095869 A JP2011095869 A JP 2011095869A
Authority
JP
Japan
Prior art keywords
request
timeout
time
processing unit
server processing
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.)
Pending
Application number
JP2009247203A
Other languages
Japanese (ja)
Inventor
Takuro Hoshina
卓郎 星名
Daisuke Matsui
大輔 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009247203A priority Critical patent/JP2011095869A/en
Publication of JP2011095869A publication Critical patent/JP2011095869A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve a problem wherein an application server cannot dynamically change a time period before a time-out of request processing, and a temporary load on a server, etc. may wrongly lead to the time-out, while the request processing continues on the application server, and so a response cannot be returned even when the request processing is completed, which results in the useless processing. <P>SOLUTION: An application server processing program 210 notifies a time-out management server processing program 410 of a request processing result received from a client device 40 and stores the request processing result, as statistical information, in a request information table 420. Based on the statistical information, a Web server processing program 610 determines whether to change a time-out value, and dynamically extends the time-out value. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、受け付けたリクエストを処理する計算機の機能を制御する技術に関するものである。   The present invention relates to a technique for controlling the function of a computer that processes an accepted request.

従来、クライアント装置からネットワークを介して接続されたシステムにおいて、サーバ装置上のWebサーバ処理プログラムがアプリケーションサーバ処理プログラムにリクエストを転送した後、所定の時間内に処理が完了しなかった際にタイムアウトとしてエラーをクライアント装置に返却する技術がある。
また、画像読み取りシステム、画像読み取り方法およびドキュメント管理サーバなどにおける格納処理においては、サーバ毎にタイムアウト値を設定することができ、負荷が高いときなど、格納処理に時間がかかっている場合は、正常に格納処理が実施されているかどうかを判断し、正常に動作しているのであれば、処理時間を延長する技術がある。
Conventionally, in a system connected from a client device via a network, a timeout occurs when the processing is not completed within a predetermined time after the Web server processing program on the server device transfers the request to the application server processing program. There is a technique for returning an error to a client device.
Also, in the storage process in the image reading system, the image reading method, and the document management server, a timeout value can be set for each server. If the storage process takes a long time, such as when the load is high, it is normal. There is a technique for determining whether or not the storage process is being performed, and extending the processing time if it is operating normally.

特開2006−166100JP 2006-166100 A

しかしながら従来技術では、タイムアウトの時間は一度設定すると動的に変化させることができないため、高負荷時など、あと少しで処理が終了するはずだったリクエストもエラーとなってしまい、エラーとなったリクエストについても、サーバ装置のアプリケーションサーバ処理プログラムの中では処理が続くため、無駄な処理となってしまっている。   However, in the conventional technology, once the timeout period can be set, it cannot be changed dynamically. Therefore, a request that should have been completed a little later, such as when there is a high load, also results in an error, and the request that resulted in the error Is also a useless process because the process continues in the application server processing program of the server device.

また、このようにタイムアウトになってしまったクライアント装置からは再度同じリクエストを送信することが多く、それらのリクエストもタイムアウトしてしまう。この動作を繰り返してしまうことで、サーバ装置側の負荷がさらに高くなってしまい、当該リクエストがよりタイムアウトが発生しやすくなってしまうだけでなく、サーバ装置の負荷が高くなってしまうことで、今までタイムアウトしなかったリクエストについてもタイムアウトしてしまう可能性が高まり、さらにサーバ装置の負荷を高騰させる因子となってしまう可能性があり、一方で、リクエスト情報処理システムではドキュメント管理サーバにおける格納処理とは異なり、正常に動作しているかを判断することが困難であるため、リクエストの処理が正常に動作しているかを判断して処理時間を延長することはできない。そこで、本発明はタイムアウト技術におけるのこれらの危険性を、タイムアウトとなるまでの時間を動的に変更する事で排除することを目的とする。   Further, the same request is often transmitted again from the client device that has timed out in this way, and those requests also time out. By repeating this operation, the load on the server device side is further increased, and not only is the request more likely to be timed out, but also the load on the server device is increased. Requests that have not timed out until now are likely to be timed out, and may increase the load on the server device. On the other hand, in the request information processing system, However, since it is difficult to determine whether the request is operating normally, the processing time cannot be extended by determining whether the request processing is operating normally. Therefore, an object of the present invention is to eliminate these dangers in the timeout technique by dynamically changing the time until timeout occurs.

また、タイムアウトとなるまでの時間を適切に延長することによって、クライアント装置からの無駄なリトライが少なくなることによって、サーバ装置の負荷が意味もなく高騰してしまうことを防ぐこと目的とする。   It is another object of the present invention to prevent the load on the server device from increasing meaninglessly by reducing unnecessary retries from the client device by appropriately extending the time until timeout.

前記目的を達成するために、本発明では、クライアント装置から受け付けたリクエストをサーバ装置で処理した際に、タイムアウトが発生した場合は、タイムアウトが最終的にリクエストの処理に要した時間とクライアント装置からのリクエストURI(Uniform Resource Identifer)を、タイムアウトが発生しなかった際は、クライアント装置からのリクエストURIをサーバ装置と相互に通信が可能な他のサーバ装置のメモリ上に情報として保持させ、クライアント装置からのリクエストをサーバ装置上のWebサーバ処理プログラムがアプリケーションサーバ処理プログラムに転送する前に、保持させた情報を基にタイムアウトとするまでの時間を変更する。   In order to achieve the above object, in the present invention, when a timeout occurs when a request received from a client device is processed by a server device, the time required for the processing of the request finally from the client device is determined. When a timeout does not occur, a request URI (Uniform Resource Identifier) of the client device is held as information on the memory of another server device capable of mutual communication with the server device, and the client device Before the Web server processing program on the server device transfers the request from the server to the application server processing program, the time until timeout is changed based on the held information.

タイムアウトを動的に変更する事によって、あと少しで処理が終了したというリクエストを救う事が可能である。   By dynamically changing the timeout, it is possible to save the request that the processing has been completed in a short time.

本実施形態におけるサーバ装置が接続されたリクエスト処理システムの構成を示す図である。It is a figure which shows the structure of the request processing system to which the server apparatus in this embodiment was connected. 本実施形態におけるリクエスト処理システムの処理の流れで、タイムアウトが発生しなかった時の処理の流れを示す図である。It is a figure which shows the flow of a process when timeout does not generate | occur | produce in the flow of a process of the request processing system in this embodiment. 本実施形態におけるリクエスト処理システムの処理の流れで、タイムアウトが発生した時の処理の流れを示す図である。It is a figure which shows the flow of a process when timeout occurs in the flow of a process of the request processing system in this embodiment. 本実施形態におけるタイムアウト管理サーバ処理部でのアプリケーションサーバ処理部が処理したリクエストの統計情報の構成を示す図である。It is a figure which shows the structure of the statistical information of the request which the application server process part in the timeout management server process part in this embodiment processed. 本実施形態におけるWebサーバ処理部での動作を定義するファイルの構成を示す図である。It is a figure which shows the structure of the file which defines the operation | movement in the Web server process part in this embodiment. 本実施形態におけるサーバ装置において、Webサーバ処理プログラムの処理の流れを示すフローチャート図である。It is a flowchart figure which shows the flow of a process of a Web server processing program in the server apparatus in this embodiment.

以下、本発明を実施するための形態(以下「実施形態」という)について、図面を参照して説明する。   Hereinafter, modes for carrying out the present invention (hereinafter referred to as “embodiments”) will be described with reference to the drawings.

図1は、本実施形態におけるサーバ装置が接続されたリクエスト処理システムを示す図である。図1に示すように、本実施形態におけるリクエスト処理システム1は、複数のサーバ装置10、サーバ装置20、サーバ装置30を含んで構成される。クライアント装置40とサーバ装置30はネットワーク50を介して相互に通信可能に構成されている。ここではサーバ装置10とサーバ装置30は1台ずつ示されているが、それぞれ複数であってもその数が限定されるものではなく、サーバ装置10とサーバ装置30は1つのサーバ装置に纏めることも可能である。また、クライアント装置40は2台示されているが、複数であれば特にその数が限定されるものではない。   FIG. 1 is a diagram illustrating a request processing system to which a server device according to the present embodiment is connected. As shown in FIG. 1, the request processing system 1 in this embodiment includes a plurality of server devices 10, a server device 20, and a server device 30. The client device 40 and the server device 30 are configured to be able to communicate with each other via the network 50. Here, one server device 10 and one server device 30 are shown, but the number is not limited even if there are a plurality of each, and the server device 10 and the server device 30 should be combined into one server device. Is also possible. Further, although two client devices 40 are shown, the number is not particularly limited as long as there are a plurality of client devices 40.

クライアント装置40は、ネットワーク50を介してサーバ装置30にリクエストを送信する機能を有するとともに、サーバ装置30からそのリクエストに対するレスポンスを受け取る機能を有する。   The client device 40 has a function of transmitting a request to the server device 30 via the network 50 and a function of receiving a response to the request from the server device 30.

サーバ装置10は、CPU(Central Processing Unit)100と、メモリ200とを含んで構成される。記憶部としてのメモリ200は、アプリケーションサーバ処理部210を含んで記憶する機能を有する。処理部としてのCPU100は、メモリ200に記憶されている処理部を構成するプログラムを実行する機能を有する。   The server device 10 includes a CPU (Central Processing Unit) 100 and a memory 200. The memory 200 as a storage unit has a function of storing including the application server processing unit 210. The CPU 100 as a processing unit has a function of executing a program that constitutes the processing unit stored in the memory 200.

サーバ装置20は、CPU300と、メモリ400とを含んで構成される。記憶部としてのメモリ400は、タイムアウト管理サーバ処理部410と、リクエスト情報テーブル420を含んで記憶する機能を有する。処理部としてのCPU300は、メモリ400に記憶されている処理部を構成するプログラムを実行する機能を有する。   The server device 20 includes a CPU 300 and a memory 400. The memory 400 as a storage unit has a function of storing a timeout management server processing unit 410 and a request information table 420. The CPU 300 as a processing unit has a function of executing a program that constitutes the processing unit stored in the memory 400.

サーバ装置30は、CPU500と、メモリ600とを含んで構成される。記憶部としてのメモリ600は、Webサーバ処理部610と、サーバ動作定義ファイル620を含んで記憶する機能を有する。処理部としてのCPU500は、メモリ600に記憶されている処理部を構成するプログラムを実行する機能を有する。   The server device 30 includes a CPU 500 and a memory 600. The memory 600 as a storage unit has a function of storing a Web server processing unit 610 and a server operation definition file 620. The CPU 500 as a processing unit has a function of executing a program constituting the processing unit stored in the memory 600.

アプリケーションサーバ処理部210は、Webサーバ処理部610からリクエストが送信されると、そのリクエストの処理を実行し、Webサーバ処理部610にその実行結果としてレスポンスを返信し、Webサーバ処理部610でタイムアウトが発生していなければタイムアウト管理サーバ処理処理部410にURIを通知し、Webサーバ処理プログラム610でタイムアウトが発生して、接続が切断されていたためにWebサーバ処理部610へレスポンスの返信ができなかった場合は、タイムアウト管理サーバ処理部410にURIとリクエストの処理に要した処理時間を通知するコードが記述されたプログラムである。   When a request is transmitted from the Web server processing unit 610, the application server processing unit 210 executes the processing of the request, returns a response as the execution result to the Web server processing unit 610, and the Web server processing unit 610 times out. If a timeout has not occurred, the URI is notified to the timeout management server processing unit 410, and a timeout has occurred in the Web server processing program 610, and the response is not returned to the Web server processing unit 610 because the connection has been disconnected. In this case, the program describes a code for notifying the timeout management server processing unit 410 of the URI and the processing time required for processing the request.

タイムアウト管理サーバ処理部410は、起動時にWebサーバ処理処理部610から、サーバ動作定義ファイル620に設定されているタイムアウト値を取得し、Webサーバ処理部610がクライアント装置40からのリクエストを受信した際に、リクエスト情報テーブル420からリクエストに関する情報を取得しWebサーバ処理部610に通知するコードと、アプリケーションサーバ処理部210からリクエストに関する情報が通知された際にリクエスト情報テーブル420に格納するコードが記載されたプログラムである。   The timeout management server processing unit 410 acquires a timeout value set in the server operation definition file 620 from the Web server processing processing unit 610 at the time of startup, and when the Web server processing unit 610 receives a request from the client device 40 The code for acquiring information related to the request from the request information table 420 and notifying the web server processing unit 610 and the code stored in the request information table 420 when the information related to the request is notified from the application server processing unit 210 are described. Program.

リクエスト情報テーブル420は統計情報としてURIと総リクエスト数とタイムアウト設定時間超過回数とタイムアウト設定時間平均超過時間を保持する。   The request information table 420 holds, as statistical information, the URI, the total number of requests, the number of times that the timeout setting time is exceeded, and the average timeout setting time.

Webサーバ処理部部610は、クライアント装置40からリクエストが送信された際に、当該リクエストのURIに関する情報をタイムアウト管理サーバ410へ送信し、タイムアウト管理サーバ410から通知された情報を基に当該リクエストにおけるタイムアウトまでの時間を計算し、アプリケーションサーバ処理部210にリクエストを転送した後、計算したタイムアウトまでの時間でアプリケーションサーバ処理部210からの返信を得るまでのタイマ監視処理を実行し、アプリケーションサーバ処理部210からレスポンスが返信された際は、そのレスポンスをクライアント装置40に返信し、アプリケーションサーバ処理部210からレスポンスが返信される前にサーバ動作定義ファイル620に定義されたタイムアウトまでの時間が経過した際は、タイムアウト処理としてアプリケーションサーバ処理部210との接続を切断し、クライアント装置40にはエラーを返信するコードが記載されたプログラムである。   When a request is transmitted from the client device 40, the Web server processing unit 610 transmits information on the URI of the request to the timeout management server 410, and based on the information notified from the timeout management server 410, After calculating the time until timeout and transferring the request to the application server processing unit 210, the timer monitoring process is performed until the reply from the application server processing unit 210 is obtained within the calculated time until timeout, and the application server processing unit When a response is returned from 210, the response is returned to the client device 40, and until the timeout defined in the server operation definition file 620 before the response is returned from the application server processing unit 210. When the time has elapsed, disconnects the connection to the application server processing unit 210 as a time-out processing, a program code for returning the error is described in the client device 40.

サーバ動作定義ファイル620はWebサーバ610の動作を制御するための情報を含み、クライアント装置40から送信されたリクエストをアプリケーションサーバ処理部210に転送し、アプリケーションサーバ処理プログラム210からレスポンスが返ってくるまでの待ち時間(タイムアウトまでの時間)と、総リクエスト数に対してどの程度の超過回数まで許容するかの閾値と、タイムアウトまでの時間を最大でどのくらい延長するかの上限値を定義し、閾値は割合で、延長時間の上限値は秒数で定義する。閾値と延長時間の上限については、全てのリクエストに共通した値となるが、URI毎に値を変えて定義することも可能である。   The server operation definition file 620 includes information for controlling the operation of the Web server 610, transfers the request transmitted from the client device 40 to the application server processing unit 210, and returns a response from the application server processing program 210. Defines the waiting time (time to timeout), the threshold of how many times to exceed the total number of requests, and the upper limit of how long the time to timeout is extended at maximum, the threshold is As a percentage, the upper limit of the extension time is defined in seconds. The threshold and the upper limit of the extension time are values common to all requests, but can be defined by changing the values for each URI.

図2は、本実施形態における通常時におけるリクエスト処理システムの処理の流れで、タイムアウトまでの時間を延長し、その後タイムアウトが発生することなくリクエストの処理が完了した際の処理を示す図である。図2に示すように、ここでは、リクエスト処理システム1が、クライアント40からリクエストを受けた場合を例に挙げて、タイムアウトまでの時間の変更とリクエスト処理について説明する。また、Webサーバ処理部610、タイムアウト管理サーバ処理部410、およびアプリケーションサーバ処理部210はそれぞれ、図1におけるアプリケーションサーバ処理部210、タイムアウト管理サーバ処理部410、およびWebサーバ処理部610がそれぞれCPU100、CPU300およびCPU500より、それぞれ実行されることによって実現されるものである。   FIG. 2 is a diagram showing processing when the request processing is completed without extending the time until timeout in the processing flow of the request processing system at the normal time in the present embodiment. As shown in FIG. 2, here, the case where the request processing system 1 receives a request from the client 40 will be described as an example of the change in time until timeout and the request processing. Further, the web server processing unit 610, timeout management server processing unit 410, and application server processing unit 210 are respectively the application server processing unit 210, timeout management server processing unit 410, and web server processing unit 610 in FIG. It is realized by being executed by the CPU 300 and the CPU 500, respectively.

クライアント40からリクエスト(http://・・・/index.jsp)が送信された場合(ステップS1001)、Webサーバ処理部610はタイムアウト管理サーバ処理部410へリクエストのURIに関する統計情報を要求(ステップS1002)し、タイムアウト管理サーバ処理部410は統計情報を取得して(ステップS1003)Webサーバに通知する(ステップS1004)。その後、Webサーバ処理部610は、当該リクエストにおいてタイムアウトまでの時間を変更するかどうかのタイムアウト延長判定処理を実施(ステップS1005)し、タイムアウトまでの時間を決定してからアプリケーションサーバ処理部210にリクエストを転送(ステップS1006)し、決定したタイムアウトまでの時間でタイマ監視をおこなう。アプリケーションサーバ210はWebサーバ処理部610から転送されたリクエストを処理(ステップS1007)し、処理結果をレスポンスとしてWebサーバ610に返信(ステップS1008)した後、タイムアウト管理サーバ410処理部に対し、当該リクエストのURIを通知し(ステップS1009)、タイムアウト管理サーバ処理部410は、通知された情報を統計情報として格納する(ステップS1010)。Webサーバ730はアプリケーションサーバ710からレスポンスを受信したら(ステップS1008)クライアント40にレスポンスを返し(ステップS1011)、クライアント40はそれを受信する(ステップS1012)。   When a request (http: //...index.jsp) is transmitted from the client 40 (step S1001), the Web server processing unit 610 requests statistical information regarding the URI of the request from the timeout management server processing unit 410 (step S1001). Then, the timeout management server processing unit 410 acquires statistical information (step S1003) and notifies the Web server (step S1004). Thereafter, the Web server processing unit 610 performs timeout extension determination processing for determining whether or not to change the time until timeout in the request (step S1005), determines the time until timeout, and then requests the application server processing unit 210 to make a request. Is transferred (step S1006), and the timer is monitored for the time until the determined timeout. The application server 210 processes the request transferred from the web server processing unit 610 (step S1007), returns the processing result to the web server 610 as a response (step S1008), and then sends the request to the timeout management server 410 processing unit. The timeout management server processing unit 410 stores the notified information as statistical information (step S1010). When the Web server 730 receives a response from the application server 710 (step S1008), it returns a response to the client 40 (step S1011), and the client 40 receives it (step S1012).

図3は、本実施形態におけるリクエスト処理システム1の処理の流れで、タイムアウトまでの時間を延長したが、その後タイムアウトが発生した際の処理を示す図である。図3に示すように、ここでは、リクエスト処理システム1がクライアント装置40からリクエストを受け、処理を実施したが処理に時間を要しタイムアウトが発生してしまった場合を例に挙げて、タイムアウトが発生した際の処理について説明する。また、Webサーバ610、タイムアウト管理サーバ410、およびアプリケーションサーバ処理部210はそれぞれ、図1におけるアプリケーションサーバ処理処理部210、タイムアウト管理サーバ処理部410、およびWebサーバ処理プログラム610がそれぞれCPU100、CPU300およびCPU500によって実行されることによって実現されるものである。   FIG. 3 is a diagram illustrating a process when a time-out occurs after the time until the time-out is extended in the processing flow of the request processing system 1 in the present embodiment. As shown in FIG. 3, here, the request processing system 1 receives a request from the client device 40 and executes the process. However, the process takes time and the timeout occurs. Processing when it occurs will be described. In addition, the Web server 610, the timeout management server 410, and the application server processing unit 210 are respectively the application server processing processing unit 210, the timeout management server processing unit 410, and the Web server processing program 610 in FIG. It is realized by being executed by.

クライアント40からリクエスト(http://・・・/index.jsp)が送信された場合(ステップS2001)、Webサーバ処理部610はタイムアウト管理サーバ処理部410へリクエストのURIに関する統計情報を要求し(ステップS2002)、タイムアウト管理サーバ処理部410は、統計情報を取得して(ステップS2003)、Webサーバに通知する(ステップS2004)。その後、Webサーバ処理部610は、当該リクエストにおいてタイムアウトまでの時間を変更するかどうかの処理を実施し(ステップS2005)、タイムアウトまでの時間を決定してからアプリケーションサーバ処理部210にリクエストを転送し(ステップS2006)、決定したタイムアウトまでの時間でタイマ監視をおこなうが、アプリケーションサーバ処理部210がリクエスト処理を開始(ステップS2007)してからレスポンスが返ってくるまでに決定したタイムアウトまでの時間が経過した場合、Webサーバ処理部610はタイムアウト処理としてアプリケーションサーバ処理部210との接続を切断し(ステップS2008)、クライアント40に対してはエラーを返却(ステップS2009)し、クライアント40はそれを受信する(ステップ2010)。
その後、アプリケーションサーバ処理部210でのリクエスト処理(ステップS2007)が完了した際に、タイムアウト管理サーバ処理部410に対し、当該リクエストに要した処理時間をURIとともに通知し(ステップS2011)、タイムアウト管理サーバ処理部410はアプリケーションサーバ処理部210から受け取った当該リクエストの処理時間とURIをリクエスト情報テーブルに格納する(ステップS2012)。
When a request (http: //.../index.jsp) is transmitted from the client 40 (step S2001), the Web server processing unit 610 requests statistical information regarding the URI of the request from the timeout management server processing unit 410 ( In step S2002), the timeout management server processing unit 410 acquires statistical information (step S2003) and notifies the Web server (step S2004). Thereafter, the Web server processing unit 610 performs processing to determine whether or not to change the time until timeout in the request (step S2005), determines the time until timeout, and transfers the request to the application server processing unit 210. (Step S2006), the timer is monitored for the time until the determined time-out, but the time until the time-out determined until the response is returned after the application server processing unit 210 starts request processing (Step S2007) In such a case, the web server processing unit 610 disconnects the connection with the application server processing unit 210 as a timeout process (step S2008), returns an error to the client 40 (step S2009), and the client 40 To receive (step 2010).
Thereafter, when the request processing in the application server processing unit 210 (step S2007) is completed, the processing time required for the request is notified to the timeout management server processing unit 410 together with the URI (step S2011), and the timeout management server The processing unit 410 stores the processing time and URI of the request received from the application server processing unit 210 in the request information table (step S2012).

図4は、本実施形態におけるリクエスト情報テーブル420のデータ構造の例である。図4に示すように、リクエスト情報テーブル420は、URI801と、タイムアウトが発生した回数である超過回数802と、総リクエスト回数803と、平均超過時間804を含んで構成される。リクエスト情報テーブル420では、アプリケーションサーバ処理部210(図2参照)でのリクエスト処理が完了した後に、処理したリクエストに関する情報を整理して、管理し、ステップ1009によって、登録および情報の更新が行われる。   FIG. 4 shows an example of the data structure of the request information table 420 in this embodiment. As illustrated in FIG. 4, the request information table 420 includes a URI 801, an excess count 802 that is the number of times a timeout has occurred, a total request count 803, and an average excess time 804. In the request information table 420, after the request processing in the application server processing unit 210 (see FIG. 2) is completed, information on the processed requests is organized and managed. In step 1009, registration and information update are performed. .

URI801は、クライアント装置40(図2参照)から送信されたリクエストの識別子を示しており、リクエストの処理が完了した際に、アプリケーションサーバ処理部210(図2参照)から通知され、既にリクエスト情報テーブル420に登録されている場合は当該URIに対応する総リクエスト回数803に1を加算し、リクエスト情報テーブル420に登録されていなければ、総リクエスト数801を1としてリクエスト情報テーブル420に登録する。   The URI 801 indicates the identifier of the request transmitted from the client device 40 (see FIG. 2), and is notified from the application server processing unit 210 (see FIG. 2) when the processing of the request is completed. If registered in 420, 1 is added to the total number of requests 803 corresponding to the URI, and if not registered in the request information table 420, the total number of requests 801 is registered in the request information table 420.

超過回数802は、通知されたURIにおいて設定されたタイムアウト値を超過してタイムアウトとなった回数を示す。
総リクエスト回数803は、通知されたURIに対するリクエストの総回数を示す。
The number of times of excess 802 indicates the number of times that the timeout value set in the notified URI has exceeded and timed out.
The total number of requests 803 indicates the total number of requests for the notified URI.

平均超過時間804は、{(計算時点でリクエスト情報テーブルに登録されている平均超過時間804×計算時点でリクエスト情報テーブルに登録されている総リクエスト回数802+アプリケーションサーバ処理部210から通知されるリクエスト処理時間)÷ 当該リクエストを含めた総リクエスト回数}−{Webサーバ動作定義ファイル620(図1参照)に定義されているタイムアウト設定値}の式で計算され、タイムアウトが発生するごとに上書きされる。   The average excess time 804 is {(average excess time 804 registered in the request information table at the time of calculation × total number of requests 802 registered in the request information table at the time of calculation + request processing notified from the application server processing unit 210 (Time) ÷ total number of requests including the request} − {timeout setting value defined in Web server operation definition file 620 (see FIG. 1)}, and is overwritten each time a timeout occurs.

図5は、本実施形態におけるWebサーバ動作定義ファイル620のデータ構造の例である。図5に示すようにWebサーバ動作定義ファイル620はクライアントから受信したリクエストをアプリケーションサーバ処理部210(図2参照)に転送してからアプリケーションサーバ処理部210(図2参照)からレスポンスを受信するまでのタイムアウト値を定義するタイムアウト値901と、総リクエスト数に対してどの程度の超過回数まで許容するかを設定する閾値902と、タイムアウトまでの時間を変更するときに最大でどのくらい延長するかの上限値を設定するタイムアウト延長上限値903を含んで構成される。Webサーバ動作定義ファイル620のデータは、リクエスト処理システム1の管理者などにより設定される。   FIG. 5 shows an example of the data structure of the Web server operation definition file 620 in this embodiment. As shown in FIG. 5, the Web server action definition file 620 transfers the request received from the client to the application server processing unit 210 (see FIG. 2) until receiving a response from the application server processing unit 210 (see FIG. 2). A timeout value 901 that defines the timeout value of the request, a threshold value 902 that sets how many times the total number of requests is allowed to be exceeded, and an upper limit on how much the maximum time can be extended when changing the timeout period A timeout extension upper limit value 903 for setting a value is included. Data in the Web server operation definition file 620 is set by an administrator of the request processing system 1 or the like.

図6は、本実施形態におけるサーバ装置において、WebサーバにおけるWebサーバ処理処理部610のタイムアウト値延長判定処理(図2のステップ1004)の詳細動作を示すフロー図である。   FIG. 6 is a flowchart showing a detailed operation of the timeout value extension determination process (step 1004 in FIG. 2) of the Web server processing processing unit 610 in the Web server in the server device according to the present embodiment.

Webサーバ処理部730(図2参照)がリクエストを受信した際、リクエストのURIに対応する統計情報をタイムアウト管理サーバ処理部410(図2参照)がリクエスト情報テーブル420から取得し(ステップS101)、超過回数802(図4参照)と総リクエスト回数803(図4参照)を基に、当該URIにおいてどのくらいの割合でタイムアウト設定値を超過しているかを算出し、算出した結果をWebサーバ動作定義ファイル620(図5参照)に設定されている閾値902(図5参照)と比較する(ステップS102)。閾値902を超えていなければ(ステップS102でn%未満)タイムアウト値の変更はしないで、タイムアウト値として、サーバ動作定義ファイル620のタイムアウト値901の設定値を使用し(ステップS106)処理を終了する。一方、算出した結果が閾値902(図5参照)以上であれば(ステップS102でn%以上)、タイムアウト管理サーバ処理部410(図2参照)から取得した平均超過時間804(図4参照)とWebサーバ動作定義ファイル620(図5参照)に設定されている、タイムアウト延長上限値903(図5参照)との比較を実施する(ステップS103)。平均超過時間804(図4参照)がWebサーバ動作定義ファイル620(図5参照)に設定されている、タイムアウト延長上限値903(図5参照)よりも長ければ(ステップS103で上限値より長い)タイムアウト値をタイムアウト延長上限値903(図5参照)分タイムアウト値901(図5参照)を延長し(ステップS104)、タイムアウト延長上限値903(図5参照)よりも短ければ(ステップS103で上限値以下)タイムアウト値を平均超過時間804(図4参照)分タイムアウト値901(図5参照)を延長し(ステップS105)、処理を終了する。   When the Web server processing unit 730 (see FIG. 2) receives the request, the timeout management server processing unit 410 (see FIG. 2) acquires statistical information corresponding to the URI of the request from the request information table 420 (step S101). Based on the excess count 802 (see FIG. 4) and the total request count 803 (see FIG. 4), the rate at which the timeout setting value is exceeded in the URI is calculated, and the calculated result is the Web server operation definition file. It is compared with a threshold value 902 (see FIG. 5) set to 620 (see FIG. 5) (step S102). If the threshold value 902 is not exceeded (less than n% in step S102), the timeout value is not changed, and the set value of the timeout value 901 in the server operation definition file 620 is used as the timeout value (step S106), and the process is terminated. . On the other hand, if the calculated result is equal to or greater than the threshold value 902 (see FIG. 5) (n% or more in step S102), the average excess time 804 (see FIG. 4) acquired from the timeout management server processing unit 410 (see FIG. 2) Comparison with the timeout extension upper limit 903 (see FIG. 5) set in the Web server operation definition file 620 (see FIG. 5) is performed (step S103). If the average excess time 804 (see FIG. 4) is longer than the timeout extension upper limit 903 (see FIG. 5) set in the Web server operation definition file 620 (see FIG. 5) (longer than the upper limit in step S103). The timeout value is extended by the timeout extension upper limit value 903 (see FIG. 5) (step S104), and if the timeout value is shorter than the timeout extension upper limit value 903 (see FIG. 5) (the upper limit value in step S103). Hereinafter, the timeout value is extended by the average excess time 804 (see FIG. 4) and the timeout value 901 (see FIG. 5) is extended (step S105), and the process is terminated.

本実施形態に付随される効果として、タイムアウトになった際は、アプリケーションサーバで引き続き処理されているリクエストに要した時間を統計情報としてリクエストテーブル420に蓄積することで、延長すべき時間の精度を上げていくことが可能である。   As an effect attached to the present embodiment, when a time-out occurs, the time required for a request that is continuously processed by the application server is accumulated in the request table 420 as statistical information, thereby increasing the accuracy of the time to be extended. It is possible to raise it.

また、適切なタイマ監視が可能になることで、無駄なリトライが無くなり、クライアント側だけでなくサーバ側の負担も低減することが可能である。   In addition, since appropriate timer monitoring can be performed, unnecessary retries can be eliminated, and the burden on the server side as well as the client side can be reduced.

以上、本発明の実施形態を説明したが、この実施形態は本発明の説明のための例示にすぎず、本発明の範囲をその実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱することなく、その他の様々な態様でも実施することができる。   As mentioned above, although embodiment of this invention was described, this embodiment is only the illustration for description of this invention, and is not the meaning which limits the scope of the present invention only to that embodiment. The present invention can be implemented in various other modes without departing from the gist thereof.

1 リクエスト処理システム
10 サーバ装置
20 サーバ装置
30 サーバ装置
40 クライアント装置
50 ネットワーク
100 CPU
200 メモリ
210 アプリケーションサーバ処理部
300 CPU
400 メモリ
410 タイムアウト管理サーバ処理部
420 リクエスト情報テーブル
500 CPU
600 メモリ
610 Webサーバ処理処理部
620 サーバ動作定義ファイル
DESCRIPTION OF SYMBOLS 1 Request processing system 10 Server apparatus 20 Server apparatus 30 Server apparatus 40 Client apparatus 50 Network 100 CPU
200 Memory 210 Application server processing unit 300 CPU
400 Memory 410 Timeout management server processing unit 420 Request information table 500 CPU
600 Memory 610 Web server processing unit 620 Server operation definition file

Claims (5)

Webサーバ処理装置と、クライアント装置から受け付けたリクエストを処理し、記憶装置を備えた通信制御装置とを含む計算機システムにおける通信制御方法において、
タイムアウト管理処理部は、前記リクエストの統計情報を記憶装置に格納し、
前記タイムアウト管理サーバ処理部は、前記リクエストを受信した際に、前記タイムアウト管理に前記蓄積されたリクエストの統計情報を読み出し、
前記Webサーバ処理装置は、前記タイムアウト情報の統計情報を基にタイムアウトまでの時間を変更させることを特徴とするリクエスト情報処理方法。
In a communication control method in a computer system including a Web server processing device and a request received from a client device and including a communication control device including a storage device,
The timeout management processing unit stores the statistical information of the request in a storage device,
When the time-out management server processing unit receives the request, it reads out the statistical information of the request accumulated in the time-out management,
The request information processing method, wherein the Web server processing apparatus changes a time until timeout based on statistical information of the timeout information.
前記アプリケーションサーバ処理部は、前記Webサーバ処理装置から転送された前記リクエストを処理し、処理の結果を前記タイムアウト管理サーバに通知することをとした請求項1の記載のリクエスト情報処理方法。 The request information processing method according to claim 1, wherein the application server processing unit processes the request transferred from the Web server processing device, and notifies the timeout management server of a processing result. 前記タイムアウト管理サーバ処理部は、前記Webサーバ処理装置の前記動作定義ファイルにタイムアウトまでの時間を変更させる基準となるタイムアウト超過率閾値を保持するようにしたことを特徴とした請求項1の記載のリクエスト情報処理方法。   The time-out management server processing unit holds a time-out excess rate threshold value as a reference for changing a time-out time in the operation definition file of the Web server processing device. Request information processing method. 前記タイムアウト管理サーバ処理部は、前記Webサーバ処理装置の動作定義ファイルにタイムアウトを延長する上限の時間であるタイムアウト延長上限値を保持するようにしたことを特徴とした請求項1の記載のリクエスト情報処理方法。   2. The request information according to claim 1, wherein the timeout management server processing unit holds a timeout extension upper limit value that is an upper limit time for extending a timeout in the operation definition file of the Web server processing apparatus. Processing method. Webサーバ処理装置と、クライアント装置から受け付けたリクエストを処理し、記憶装置を備えた通信制御装置とを含む計算機システムにおいて、
タイムアウト管理処理部は、前記リクエストの統計情報を記憶装置に格納し、
前記タイムアウト管理サーバ処理部は、前記リクエストを受信した際に、前記タイムアウト管理に前記蓄積されたリクエストの統計情報を読み出し、
前記Webサーバ処理装置は、前記タイムアウト情報の統計情報を基にタイムアウトまでの時間を変更させることを特徴とする計算機システム。
In a computer system including a Web server processing device and a communication control device that processes a request received from a client device and includes a storage device,
The timeout management processing unit stores the statistical information of the request in a storage device,
When the time-out management server processing unit receives the request, it reads out the statistical information of the request accumulated in the time-out management,
The computer system, wherein the Web server processing device changes a time until timeout based on statistical information of the timeout information.
JP2009247203A 2009-10-28 2009-10-28 Request information processing method and computer system Pending JP2011095869A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009247203A JP2011095869A (en) 2009-10-28 2009-10-28 Request information processing method and computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009247203A JP2011095869A (en) 2009-10-28 2009-10-28 Request information processing method and computer system

Publications (1)

Publication Number Publication Date
JP2011095869A true JP2011095869A (en) 2011-05-12

Family

ID=44112725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009247203A Pending JP2011095869A (en) 2009-10-28 2009-10-28 Request information processing method and computer system

Country Status (1)

Country Link
JP (1) JP2011095869A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013003680A (en) * 2011-06-13 2013-01-07 Nippon Telegr & Teleph Corp <Ntt> Service provision method, service provision device and service provision system
US20130086274A1 (en) * 2011-09-30 2013-04-04 Bhavesh Goswami Timing Management for Implementing Smarter Decisions in Time-Constrained Complex Distribution Systems
US10387093B2 (en) 2017-05-19 2019-08-20 Canon Kabushiki Kaisha Image forming apparatus that sets a time-out value based on an executed application, information processing method, storage medium storing program
US10452314B2 (en) 2016-06-29 2019-10-22 Samsung Electronics Co., Ltd. Electronic systems and methods of operating electronic systems
JP2020052621A (en) * 2018-09-26 2020-04-02 日本電気株式会社 Transaction management apparatus, transaction management method, and transaction management program

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013003680A (en) * 2011-06-13 2013-01-07 Nippon Telegr & Teleph Corp <Ntt> Service provision method, service provision device and service provision system
US20130086274A1 (en) * 2011-09-30 2013-04-04 Bhavesh Goswami Timing Management for Implementing Smarter Decisions in Time-Constrained Complex Distribution Systems
US10452314B2 (en) 2016-06-29 2019-10-22 Samsung Electronics Co., Ltd. Electronic systems and methods of operating electronic systems
US10896005B2 (en) 2016-06-29 2021-01-19 Samsung Electronics Co., Ltd. Electronic systems and methods of operating electronic systems
US10387093B2 (en) 2017-05-19 2019-08-20 Canon Kabushiki Kaisha Image forming apparatus that sets a time-out value based on an executed application, information processing method, storage medium storing program
JP2020052621A (en) * 2018-09-26 2020-04-02 日本電気株式会社 Transaction management apparatus, transaction management method, and transaction management program
JP7167596B2 (en) 2018-09-26 2022-11-09 日本電気株式会社 Transaction management device, transaction management method and transaction management program

Similar Documents

Publication Publication Date Title
US9306825B2 (en) Providing a witness service
JP2010204876A (en) Distributed system
JP2011095869A (en) Request information processing method and computer system
US8898312B2 (en) Element terminal and communication system
WO2021057666A1 (en) Transmission control method, network management server, base station and storage medium
CN109428926B (en) Method and device for scheduling task nodes
JP5123961B2 (en) Distributed computing system, distributed computing method, and distributed computing program
EP3158446B1 (en) Acquiring resource lease using multiple lease servers
US8719622B2 (en) Recording and preventing crash in an appliance
CN111064802A (en) Network request processing method and device, electronic equipment and storage medium
JP6630069B2 (en) Information processing method, program, and information processing apparatus
JP2009086741A (en) Distributed processing control method in heterogeneous node existing distributed environment and its system and its program
US11003508B2 (en) Apparatus and methods for load balancing across a network of nodes
KR20210072956A (en) Edge Cloud Computing Offloading Method in the IoT environment
JP6594271B2 (en) Dispersing apparatus and dispersing method
CN115412609A (en) Service processing method, device, server and storage medium
CN111092959B (en) Request processing method, system and related device for servers in cluster
JP2010182017A (en) Distributed computer system, manager succession method and manager succession program
JP2010170168A (en) Flow rate control method and system
US20190068471A1 (en) Dynamic asynchronous communication management
JP6595419B2 (en) API providing apparatus and API request control method
JP2008210110A (en) Business system and its execution request management method
JP6786835B2 (en) Management equipment, servers, thin client systems, management methods and programs
JP6163094B2 (en) Message delivery system, message delivery method, and message delivery program
CN112367388B (en) Method and device for concurrent communication between server and client