JP4646649B2 - COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD - Google Patents

COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD Download PDF

Info

Publication number
JP4646649B2
JP4646649B2 JP2005035949A JP2005035949A JP4646649B2 JP 4646649 B2 JP4646649 B2 JP 4646649B2 JP 2005035949 A JP2005035949 A JP 2005035949A JP 2005035949 A JP2005035949 A JP 2005035949A JP 4646649 B2 JP4646649 B2 JP 4646649B2
Authority
JP
Japan
Prior art keywords
processing
maximum
server device
response
parallel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005035949A
Other languages
Japanese (ja)
Other versions
JP2006221516A (en
Inventor
高司 福島
博司 楢崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kobe Steel Ltd
Original Assignee
Kobe Steel 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 Kobe Steel Ltd filed Critical Kobe Steel Ltd
Priority to JP2005035949A priority Critical patent/JP4646649B2/en
Publication of JP2006221516A publication Critical patent/JP2006221516A/en
Application granted granted Critical
Publication of JP4646649B2 publication Critical patent/JP4646649B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は,インターネット等の通信回線を介して複数の端末装置から受信される処理要求に応じて処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求の最大並列処理数の設定値と最大待ち行列数の設定値とを決定する通信サーバ設定値決定装置及びその方法並びにその処理を前記サーバ装置と通信可能なコンピュータに実行させるための通信サーバ設定値決定プログラムに関するものである。   The present invention relates to a server device that performs processing in response to processing requests received from a plurality of terminal devices via a communication line such as the Internet, and the processing in the server device when a plurality of the processing requests are received. Communication server setting value determining apparatus and method for determining a setting value for the maximum parallel processing number of requests and a setting value for the maximum number of queues, and a communication server setting for causing a computer communicable with the server apparatus to execute the processing It relates to a value determination program.

インターネット等の通信回線を介して複数の端末装置から受信される処理要求(コンテンツの送信要求等)に応じて処理を実行するサーバ装置(通信サーバ装置)では,ほぼ同時に複数の処理要求(同時アクセス)があった場合に,その処理要求に応じた処理を,いわゆるマルチタスク処理やスレッド処理によって最大いくつまで並行処理を行うか(以下,その数を最大並列処理数という)の設定値や,その最大並列処理数の設定値を超える数の前記処理要求が重複して(ほぼ同時に)受信された場合に,その処理要求をいくつまで待ち行列に加えるか(以下,その数を最大待ち行列数という)の設定値により,端末装置への応答時間が大きく変わる。
例えば,前記最大並列処理数の設定値がサーバ装置の処理能力に対して小さ過ぎると,サーバ装置の能力を十分引き出せない結果,処理要求の待ち行列数が多くなり,応答時間が長くなる。また,そのような場合に,許容される最大応答時間(許容応答時間)を満たすために前記最大待ち行列数を小さくすると,許容応答時間を満たすことができる反面,受け付けが拒否される処理要求(インターネット等で,「サーバが混雑しています」等の応答が端末装置に応答される状態)が増える。
一方,前記最大並列処理数の設定値がサーバ装置の処理能力に対して多き過ぎると,サーバ装置の処理効率が著しく低下し,一部の処理要求を待ち行列に加えて後から処理するよりも返って応答時間が長くなる。
従って,サーバ装置における最大並列処理数や最大待ち行列数の設定値を適切(最適)に決定することは,サーバ装置の処理能力を最大限引き出して応答時間を最小化する上で,非常に重要な設計項目である。
従来,このようなサーバ装置における最大並列処理数や最大待ち行列数の設定値は,経験的或いは試行錯誤的に設計者の判断によって決定されていた。
また,比較的大規模なサーバシステムでは,複数のサーバ装置と端末装置からの処理要求を受け付けて複数のサーバ装置へその処理を振り分けるロードバランサとを備えた負荷分散システムが採用されることが多い。
また,例えば,特許文献1には,サーバの処理能力を表すパラメータとして,ファイルサイズに依存する処理容量と,オーバヘッド処理時間と,複数端末からの同時アクセス時の性能劣化度とを用いて,サーバで所定サイズのファイルを送信するのに要する処理時間を推定する方法の一例が示されている。
特開2004−005135号公報
In a server device (communication server device) that executes processing in response to processing requests (content transmission requests, etc.) received from multiple terminal devices via a communication line such as the Internet, multiple processing requests (simultaneous access) ), The setting value for the maximum number of parallel processes (hereinafter referred to as the maximum number of parallel processes) by the so-called multitask processing or thread processing, When the number of processing requests exceeding the set value for the maximum number of parallel processes is received in duplicate (almost simultaneously), how many of the processing requests are added to the queue (hereinafter referred to as the maximum number of queues) The response time to the terminal device varies greatly depending on the setting value.
For example, if the setting value of the maximum parallel processing number is too small with respect to the processing capacity of the server device, the server device capacity cannot be sufficiently extracted, resulting in an increase in the number of processing request queues and a longer response time. In such a case, if the maximum number of queues is reduced in order to satisfy the maximum allowable response time (allowable response time), the allowable response time can be satisfied, but the processing request that is rejected ( In the Internet and the like, a response such as “the server is busy” is returned to the terminal device).
On the other hand, if the setting value of the maximum number of parallel processes is too large for the processing capacity of the server device, the processing efficiency of the server device is significantly reduced, rather than adding some processing requests to the queue and processing them later. The response time is increased.
Therefore, it is very important to appropriately determine the setting values for the maximum number of parallel processes and the maximum number of queues in the server device in order to maximize the processing capability of the server device and minimize the response time. Design item.
Conventionally, the set values of the maximum number of parallel processes and the maximum number of queues in such a server apparatus are determined empirically or by trial and error based on the judgment of the designer.
Moreover, in a relatively large-scale server system, a load distribution system including a load balancer that receives processing requests from a plurality of server devices and terminal devices and distributes the processing to the plurality of server devices is often employed. .
Further, for example, in Patent Document 1, a server capacity is calculated using a processing capacity depending on a file size, an overhead processing time, and a degree of performance degradation at the time of simultaneous access from a plurality of terminals. Shows an example of a method for estimating the processing time required to transmit a file of a predetermined size.
JP 2004-005135 A

しかしながら,サーバ装置における最大並列処理数や最大待ち行列数の設定値を,設計者により経験的或いは試行錯誤的に決定すると,それらが適切(最適)に決定されず,サーバ装置の処理能力を十分に引き出すことができない,或いは設計条件として要求される応答時間を満足できないという結果になりやすいという問題点があった。
また,ロードバランサを設けて負荷分散を行うサーバシステムは,比較的小規模なサーバ装置に適用することはシステムが複雑化,高コスト化して現実的でないという問題点があった。
また,特許文献1に示される技術は,端末からの同時アクセス数は考慮されているが,前記最大待ち行列数が考慮されておらず,設計条件として要求される許容応答時間を保証できないという問題点があった。
従って,本発明は上記事情に鑑みてなされたものであり,その目的とするところは,シンプルなシステム構成によってサーバ装置の処理能力を最大限引き出し,応答時間の短縮と許容応答時間の確保とが可能なようにサーバ装置の最大並列処理数の設定値と最大待ち行列数の設定値を決定できる通信サーバ設定値決定装置及びその方法並びにその処理を前記サーバ装置と通信可能なコンピュータに実行させるための通信サーバ設定値決定プログラムを提供することにある。
However, if the designer determines the setting values for the maximum number of parallel processes and the maximum number of queues empirically or by trial and error, they cannot be determined appropriately (optimally), and the processing capacity of the server apparatus is sufficient. However, there is a problem that the result cannot easily satisfy the response time required as a design condition.
In addition, a server system that provides a load balancer and distributes load has a problem that it is not practical to apply to a relatively small server device because the system becomes complicated and expensive.
The technique disclosed in Patent Document 1 considers the number of simultaneous accesses from a terminal, but does not consider the maximum number of queues and cannot guarantee the allowable response time required as a design condition. There was a point.
Accordingly, the present invention has been made in view of the above circumstances, and the object of the present invention is to maximize the processing capacity of the server device with a simple system configuration, to shorten the response time and to secure the allowable response time. Communication server setting value determining apparatus and method capable of determining the setting value of the maximum parallel processing number and the maximum number of queues of the server apparatus as possible, and a method for causing a computer communicable with the server apparatus to execute the process Is to provide a communication server set value determination program.

上記目的を達成するために本発明は,インターネット等の通信回線を介して複数の端末装置から受信される処理要求に応じて処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求の最大並列処理数の設定値と,複数の並列処理に対して備えられた1つの待ち行列に加える処理要求の数の最大値を示す最大待ち行列数の設定値とを決定する通信サーバ設定値決定装置及びその方法並びにその処理を前記サーバ装置と通信可能なコンピュータに実行させるための通信サーバ設定値決定プログラムとして構成されるものであり,以下のような処理を実行するものである。
即ち,まず,前記最大並列処理数の設定値が設定されていない状態,或いは前記サーバ装置の処理能力として並列処理可能な数以上の範囲で設定された状態で,前記サーバ装置に対し,前記通信回線を介して前記サーバ装置の処理能力として並列処理可能な数(例えば,OS等の制約上の最大数)の1又は複数の前記処理要求を同時に(ほぼ同時を含む)送信してその応答を受信する処理を,その同時に送信する前記処理要求の数を変えて複数回実行し,そのときの前記処理要求の送信及びその応答の受信ごとに,前記処理要求を略同時に送信した後からそれらの応答の受信完了までの時間を表す応答時間を測定し,その測定結果に基づいて前記サーバ装置における並列処理数ごとの処理効率を推定する。
ここで,送信した前記処理要求に対する全ての応答の完了後に次の前記処理要求を送信するようにすれば,同時送信する前記処理要求の数は,前記サーバ装置側における前記処理要求に応じた処理の並列処理数を表す。従って,同時送信する前記処理要求の数を変えた各条件下で,その条件(並列処理数)ごとの応答時間を測定することにより,前記サーバ装置における並列処理数ごとの処理効率を推定することが可能である。
推定する前記処理効率としては,例えば,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値を求める(推定する)ことが考えられる。
ここで,前記サーバ装置により前記最大並列処理数決定手段により決定された前記最大並列処理数の設定値の下で,該設定値に対応する前記処理効率推定手段の推定結果である前記処理効率で処理がなされたとしたときに,最大の応答待ち時間が前記応答許容時間と略等しくなるように,前記応答許容時間と,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値のうち最小である最小単位応答時間との差を,当該最小単位応答時間で割り,さらに,前記最大並列処理数の設定値を掛けた値を,前記最大待ち行列数の設定値として決定する。もちろん,所定の余裕率を考慮して,前記最大の応答待ち時間が前記応答許容時間よりも小さくなるように前記最大待ち行列数の設定値を決定することも考えられる。
次に,前記処理効率の推定結果に基づいて前記サーバ装置における前記最大並列処理数の設定値を決定する。例えば,前記処理効率が最も高くなる前記サーバ装置における並列処理数(即ち,同時送信した前記処理要求の数)を前記最大並列処理数の設定値に決定する。
これにより,前記サーバ装置の能力を最大限に引き出せる前記最大並列処理数を設定できる。
これにより,サーバ装置の処理能力を最大限に引き出せるような前記最大並列処理数の設定値が設定された状態で,要求される前記応答許容時間を保証できるように前記最大待ち行列数の設定値を決定できる。
In order to achieve the above object, the present invention provides a case where a plurality of processing requests are received for a server device that executes processing in response to processing requests received from a plurality of terminal devices via a communication line such as the Internet. The setting value of the maximum number of parallel processing of the processing requests in the server device and the setting value of the maximum number of queues indicating the maximum number of processing requests to be added to one queue provided for a plurality of parallel processing Communication server set value determining apparatus and method thereof, and a communication server set value determining program for causing a computer communicable with the server apparatus to execute the process. It is something to execute.
That is, first, in a state where the set value of the maximum parallel processing number is not set, or in a state where the processing capacity of the server device is set in a range more than the number that can be processed in parallel , the communication with the server device is performed. As a processing capability of the server device via the line, one or a plurality of the processing requests that can be processed in parallel (for example, the maximum number on the limitation of the OS or the like) are simultaneously transmitted (including almost simultaneously), and the response is transmitted. The processing to be received is executed a plurality of times while changing the number of the processing requests to be transmitted at the same time , and at each transmission of the processing request and reception of the response, the processing requests are transmitted at substantially the same time. A response time representing a time until the reception of the response is completed is measured, and a processing efficiency for each parallel processing number in the server device is estimated based on the measurement result.
Here, if the next processing request is transmitted after completion of all responses to the transmitted processing request, the number of processing requests transmitted at the same time is the number of processing requests corresponding to the processing request on the server device side. Represents the number of parallel processes. Therefore, under each condition where the number of processing requests to be transmitted simultaneously is changed, the processing efficiency for each parallel processing number in the server apparatus is estimated by measuring the response time for each condition (number of parallel processing). Is possible.
As the processing efficiency to be estimated, for example, it is conceivable to obtain (estimate) a value obtained by dividing the response time measured for each parallel processing number by the number of processing requests transmitted substantially simultaneously, or a value obtained by normalizing it .
Here, under the set value of the maximum parallel processing number determined by the maximum parallel processing number determining unit by the server device, the processing efficiency which is an estimation result of the processing efficiency estimating unit corresponding to the set value When processing is performed, the response allowable time and the response time measured for each number of parallel processes are approximately the same as the number of processing requests transmitted at the same time so that the maximum response waiting time is approximately equal to the response allowable time. The difference between the divided unit value or the normalized minimum unit response time among the normalized values is divided by the minimum unit response time, and the value obtained by multiplying the set value of the maximum parallel processing number is the maximum value. It is determined as the set value for the number of queues. Of course, it is also possible to determine the set value of the maximum number of queues so that the maximum response waiting time is smaller than the allowable response time in consideration of a predetermined margin rate.
Next, a set value of the maximum number of parallel processes in the server device is determined based on the estimation result of the processing efficiency. For example, the number of parallel processes (that is, the number of processing requests transmitted simultaneously) in the server device with the highest processing efficiency is determined as the set value of the maximum number of parallel processes.
As a result, the maximum number of parallel processes that can maximize the capacity of the server device can be set.
As a result, the setting value of the maximum number of queues is set so that the required allowable response time can be guaranteed in a state where the setting value of the maximum number of parallel processings that can maximize the processing capacity of the server device is set. Can be determined.

本発明によれば,前記サーバ装置に対して同時送信する前記処理要求の数(即ち,前記サーバ装置における並列処理数)を変えた各条件下で,その条件(並列処理数)ごとの応答時間を測定して前記サーバ装置の処理効率を推定し,その推定結果に基づいて前記サーバ装置における前記最大並列処理数の設定値を決定するので,前記サーバ装置の能力を最大限に引き出して応答時間を最大限に短縮できる前記最大並列処理数を設定できる。
さらに,前記サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間と,前述の処理により決定された前記最大並列処理数の設定値と,その設定値に対応する前述の推定の結果である前記処理効率とに基づいて,前記サーバ装置における前記処理要求の最大待ち行列数の設定値を決定するので,要求される前記応答許容時間を保証(確保)できるように前記最大待ち行列数の設定値を決定できる。
以上より,負荷分散システムのような複雑なシステム構成を要しないシンプルな構成により,前記サーバ装置の能力範囲内で,応答時間を短縮して許容応答時間を保証しつつ前記処理要求の受け付が拒否される頻度が極力少なくなるような前記最大並列処理数と前記最大待ち行列数の各設定値を決定できる。
According to the present invention, the response time for each condition (number of parallel processes) under each condition in which the number of processing requests simultaneously transmitted to the server apparatus (that is, the number of parallel processes in the server apparatus) is changed. Is measured to estimate the processing efficiency of the server device, and the setting value of the maximum parallel processing number in the server device is determined based on the estimation result. The maximum number of parallel processes that can be shortened to the maximum can be set.
Further, the allowable response time for the processing request given as a design condition of the server device, the set value of the maximum number of parallel processes determined by the above processing, and the result of the above estimation corresponding to the set value. Since the setting value of the maximum number of queues of the processing request in the server device is determined based on the processing efficiency, the maximum number of queues is set so that the required response allowable time can be guaranteed (secured). The value can be determined.
As described above, the processing request can be accepted while ensuring the allowable response time by shortening the response time within the capability range of the server device by a simple configuration that does not require a complicated system configuration such as a load distribution system. Each set value of the maximum number of parallel processes and the maximum number of queues can be determined so that the frequency of rejection is minimized.

以下添付図面を参照しながら,本発明の実施の形態について説明し,本発明の理解に供する。尚,以下の実施の形態は,本発明を具体化した一例であって,本発明の技術的範囲を限定する性格のものではない。
ここに,図1は本発明の実施形態に係る通信サーバ設定値決定装置Xの主要部の概略構成を表すブロック図,図2は通信サーバ設定値決定装置Xにおけるサーバ装置Yの最大並列処理数及び最大待ち行列数の各設定値を決定する処理の手順を表すフローチャート,図3はサーバ装置Yにおける並列処理数と通信サーバ設定値決定装置Xにより推定された処理効率との関係を表すグラフ,図4は通信サーバ設定値決定装置Xにより決定された最大並列処理数及び最大待ち行列数の設定値が設定されたサーバ装置Yの負荷試験により得られた応答時間の測定結果を表すグラフである。
Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings so that the present invention can be understood. The following embodiment is an example embodying the present invention, and does not limit the technical scope of the present invention.
FIG. 1 is a block diagram showing a schematic configuration of a main part of the communication server set value determining device X according to the embodiment of the present invention, and FIG. 2 is a maximum parallel processing number of the server device Y in the communication server set value determining device X. FIG. 3 is a flowchart showing the procedure of determining each set value of the maximum queue number, FIG. 3 is a graph showing the relationship between the number of parallel processes in the server device Y and the processing efficiency estimated by the communication server set value determining device X, FIG. 4 is a graph showing the response time measurement result obtained by the load test of the server device Y in which the setting values of the maximum parallel processing number and the maximum queue number determined by the communication server setting value determining device X are set. .

まず,図1に示すブロック図を用いて,本発明の実施形態に係る通信サーバ設定値決定装置X(以下,単に決定装置Xという)の概略構成について説明する。
前記決定装置Xは,一般的なパーソナルコンピュータ等の計算機であり,インターネット等のネットワーク9(所定の通信回線の一例)を介して複数の端末装置(不図示)から受信される処理要求(例えば,所望のコンテンツの送信要求等)に応じて処理を実行するサーバ装置Yについて,複数の前記処理要求が受信された場合の前記サーバ装置Yにおける前記処理要求の最大並列処理数の設定値と,最大待ち行列数の設定値とを決定するための装置である。従って,前記端末装置とネットワーク接続されて実際のシステム運用がなされる前に,前記サーバ装置Yとネットワーク接続されて所定のテスト通信を行うものであり,前記最大並列処理数と前記最大待ち行列数の各設定値が決定され,その設定値が前記サーバ装置Yに設定された後のシステム運用段階では,前記決定装置Xと前記サーバ装置Yとの間で通信は行われない。
First, a schematic configuration of a communication server set value determination device X (hereinafter simply referred to as a determination device X) according to an embodiment of the present invention will be described using the block diagram shown in FIG.
The determination device X is a computer such as a general personal computer, and processing requests (for example, received from a plurality of terminal devices (not shown) via a network 9 (an example of a predetermined communication line) such as the Internet. For a server device Y that executes processing according to a desired content transmission request or the like, a setting value of the maximum number of parallel processing of the processing request in the server device Y when a plurality of the processing requests are received, and a maximum This is a device for determining the set value of the number of queues. Therefore, before the actual system operation is performed with the terminal device connected to the network, the server device Y is connected to the network to perform a predetermined test communication. The maximum parallel processing number and the maximum queue number In the system operation stage after the set values are determined and set in the server device Y, no communication is performed between the determined device X and the server device Y.

図1に示すように,前記決定装置Xは,CPU及びRAMやROM等のその周辺装置からなる演算部1と,ハードディスク等の読み書き自在の不揮発性記憶手段である記憶部2と,前記ネットワーク9を介した通信制御を行う通信制御部3と,液晶ディスプレイやCRTディスプレイ等の表示手段である表示部4と,キーボードやマウス等の情報入力手段である操作部5等を具備している。
前記通信制御部3は,前記ネットワーク9を介して,前記最大並列処理数と前記最大待ち行列数の各設定値の決定対象となる前記サーバ装置Yと通信可能に接続されており,これにより,前記決定装置Xは,前記サーバ装置Yとの間で,システムの実運用段階でそのサーバ装置Yと接続される前記端末装置と同等の条件で通信可能である。
前記記憶部2には,前記演算部1によって実行される所定のサーバ設定値決定プログラムがインストールされており,前記演算部1が前記サーバ設定値決定プログラムを実行することにより,当該決定装置Xは,前記サーバ装置Yにおける前記最大並列処理数及び前記最大待ち行列数の各設定値を決定する装置として機能する。
ここで,前記サーバ設定値決定プログラムは,要求通信処理部11,応答時間測定処理部12,処理効率推定処理部13,最大並列処理数決定部14及び最大待ち行列数決定部15等のプログラムモジュールから構成されている。それらの処理については後述する。
また,前記サーバ装置Yは,インターネットサーバやイントラネットサーバ等として機能する一般的ないわゆるサーバ計算機であり,ハードウェア構成は,前記決定装置Xと同様である。また,前記サーバ装置Yには,前記ネットワーク9を介して前記端末装置から前記処理要求を受け付けるとともに,それに対応する処理の結果を前記端末装置に応答(返信)するWebサーバプログラムや,前記処理要求に応じて要求される処理,例えば,予め記憶部に記憶されたコンテンツデータベースを検索して要求されるコンテンツを抽出する処理や,指定されたキーワードに対応する接続先URL(リンク先)をリスト化したHTMLデータを自動生成する処理等を行うアプリケーションプログラム(CGIプログラム等)等がインストールされており,それらプログラムの実行により,前記端末装置からの処理要求に対応する処理を実行し応答を返す。
As shown in FIG. 1, the determination device X includes a CPU 1 and a peripheral unit such as a RAM and a ROM, a storage unit 2 which is a readable / writable nonvolatile storage unit such as a hard disk, and the network 9. A communication control unit 3 that performs communication control via the computer, a display unit 4 that is a display unit such as a liquid crystal display or a CRT display, and an operation unit 5 that is an information input unit such as a keyboard and a mouse.
The communication control unit 3 is communicably connected to the server device Y, which is a target for determining each setting value of the maximum parallel processing number and the maximum queue number, via the network 9, thereby The determination device X can communicate with the server device Y under the same conditions as the terminal device connected to the server device Y in the actual operation stage of the system.
A predetermined server set value determination program executed by the calculation unit 1 is installed in the storage unit 2, and when the calculation unit 1 executes the server set value determination program, the determination device X , Function as a device for determining each set value of the maximum number of parallel processes and the maximum number of queues in the server device Y.
Here, the server set value determination program is a program module such as the request communication processing unit 11, the response time measurement processing unit 12, the processing efficiency estimation processing unit 13, the maximum parallel processing number determination unit 14, and the maximum queue number determination unit 15. It is composed of These processes will be described later.
The server device Y is a general so-called server computer that functions as an Internet server, an intranet server, or the like, and has a hardware configuration similar to that of the determination device X. The server device Y accepts the processing request from the terminal device via the network 9 and responds (replies) to the terminal device with a processing result corresponding to the processing request. Required processing, for example, a search of a content database stored in the storage unit in advance to extract requested content, and a list of connection destination URLs (link destinations) corresponding to specified keywords An application program (CGI program or the like) that performs processing for automatically generating the HTML data is installed, and the execution of these programs executes processing corresponding to the processing request from the terminal device and returns a response.

次に,図2に示すフローチャートを用いて,前記決定装置Xが実行する前記サーバ装置Yにおける前記最大並列処理数及び前記最大待ち行列数の各設定値を決定する処理の手順について説明する。本処理は,前述したように,前記演算部1が前記サーバ設定値決定プログラムを実行することにより具現される。
まず,前記決定装置Xは,所定の変数iを初期化(1を代入)した上で(S1),その変数iの値を順次インクリメントしながら(S4)その値が予め定められた設定値Nmaxを超えるまで以下に示すステップS2及びS3の処理を繰り返し(即ち,Nmax回)実行する。
まず,ステップS2では,前記決定装置Xは,前記ネットワーク9を介して前記サーバ装置Yに対し,前記通信制御部3を通じてi個の前記処理要求をスレッド処理やマルチタスク処理等により同時に送信するとともに,その応答を前記サーバ装置Yから受信する(S2)。本処理は,前記要求通信処理部11により具現される。
ここで,前記設定値Nmaxは,前記サーバ装置Yが並列処理可能な数(例えば,前記サーバ装置YにおけるOS等の制約上の最大数,或いは経験上現実的と考えられる最大の並列処理数)に設定されている。従って,このステップS2では,前記サーバ装置Yが並列処理可能な数(i≦Nmaxであるので)の1又は複数の前記処理要求が同時に送信される。これにより,前記サーバ装置Yでは,ステップS2において同時送信された前記処理要求各々に応じた処理が並列処理されることになる。なお,前記サーバ装置Yは,その並行処理数が特に制限されていない状態,或いは前記設定値Nmax以上の範囲で制限されている状態であることはいうまでもない。
また,前記処理要求の同時送信とは,実質的な同時送信をいうものであり,スレッド処理におけるジョブスケジューリングや前記ネットワーク9におけるトークン衝突の制約等により送信タイミングが多少ずれることも同時送信に含まれる概念である。
Next, a procedure of processing for determining each set value of the maximum parallel processing number and the maximum queue number in the server device Y executed by the determination device X will be described using the flowchart shown in FIG. As described above, this process is implemented when the calculation unit 1 executes the server setting value determination program.
First, the determining device X initializes a predetermined variable i (substitutes 1) (S1), and sequentially increments the value of the variable i (S4), and the value is set to a predetermined set value N. Steps S2 and S3 shown below are repeated (ie, N max times) until max is exceeded.
First, in step S2, the determination device X simultaneously transmits i processing requests to the server device Y via the network 9 through the communication control unit 3 by thread processing, multitask processing, or the like. The response is received from the server device Y (S2). This process is implemented by the request communication processing unit 11.
Here, the set value N max is the number that can be processed in parallel by the server device Y (for example, the maximum number of constraints in the server device Y, such as the OS, or the maximum number of parallel processing considered to be realistic from experience) ) Is set. Therefore, in this step S2, one or a plurality of the processing requests of the number that can be processed in parallel by the server device Y (since i ≦ N max ) are transmitted simultaneously. As a result, in the server device Y, processing corresponding to each of the processing requests simultaneously transmitted in step S2 is processed in parallel. It goes without saying that the server device Y is in a state where the number of parallel processes is not particularly limited, or in a state where it is limited within the range of the set value N max or more.
Further, the simultaneous transmission of the processing request means a substantial simultaneous transmission, and includes that the transmission timing is slightly deviated due to job scheduling in thread processing, restriction of token collision in the network 9, and the like. It is a concept.

また,ステップS2において前記サーバ装置Yに送信する前記処理要求は,例えば,前記サーバ装置Yの記憶部に予め記憶されたコンテンツデータベースを検索し,所定のコンテンツを抽出して返信する処理の要求や,前記サーバ装置Yの記憶部に予め記憶されたURLデータベースを検索し,所定のキーワードに関連する接続先URL(リンク先)をリスト化したHTMLデータを自動生成して返信する処理の要求等が考えられる。
ここで,同時送信される複数の前記処理要求は,全て同じ内容の処理要求とすること,及び異なる内容の処理要求とすることが考えられる。但し,異なる内容の処理要求を同時送信する場合,前記処理要求1つ当たりの前記サーバ装置Yにおける演算負荷が同等となるようにすることが望ましい。
また,ステップS2において前記サーバ装置Yに送信する前記処理要求は,例えば,実際のシステム運用段階で想定される平均的な演算負荷に相当するものとすることや,或いは実際のシステム運用段階で想定される最大の演算負荷に相当するものとすること等が考えられる。ステップS2において用いる前記処理要求は,前記サーバ装置Yの実運用段階で要求される仕様に応じて適切なものを選定する。例えば,平均的な応答時間が所定の許容応答時間内に収まることが求められる場合には,平均的な演算負荷相当の前記処理要求を選定し,最大の応答待ち時間が所定の許容応答時間内に収まることが求められる場合には,最大の演算負荷相当の前記処理要求を選定する等である。
Further, the processing request transmitted to the server device Y in step S2 is, for example, a processing request for searching a content database stored in advance in the storage unit of the server device Y, extracting a predetermined content, and returning it. A request for a process of searching a URL database stored in advance in the storage unit of the server device Y, automatically generating and returning HTML data that lists connection destination URLs (link destinations) related to a predetermined keyword, etc. Conceivable.
Here, it is conceivable that the plurality of processing requests transmitted at the same time are all processing requests having the same contents and processing requests having different contents. However, when processing requests having different contents are transmitted at the same time, it is desirable that the processing loads on the server device Y per processing request are equal.
In addition, the processing request transmitted to the server device Y in step S2 is assumed to correspond to, for example, an average calculation load assumed in the actual system operation stage, or assumed in the actual system operation stage. It is conceivable to correspond to the maximum calculation load to be performed. The processing request used in step S2 is selected according to the specifications required in the actual operation stage of the server device Y. For example, the average when the response time is required to fall within a predetermined allowable response time, average calculation load the processing request selected in equivalent, the maximum response waiting time predetermined allowable response time If it is required to fall within the range, the processing request corresponding to the maximum calculation load is selected.

次に,ステップS3では,前記決定装置Xは,ステップS2における全ての前記処理要求の送信からそれらの応答の受信完了までの時間である応答時間を測定し,その測定結果を前記処理要求の同時送信数に対応させて前記記憶部2に記憶させる(S3)。本処理は,前記応答時間測定処理部12により具現される。
そして,前記決定装置Xは,前記変数iをインクリメントしながら(S4),即ち,同時送信する前記処理要求の数を変えながら,前記変数iがNmax以下であると判別(S5)されている間,1又は複数の前記処理要求の同時送信及びその応答の受信を行う処理(S2)と,その処理ごとに前記応答時間を測定する処理(S3,応答時間測定処理の一例)とを複数回(Nmax回)実行する(S2,S4,S5が要求通信処理の一例)。
なお,図2に示すフローチャートでは,同時送信する前記処理要求の個数ごとに1回ずつステップS2及びS3の処理を行う例を示しているが,これに限るものでなく,S1〜S5の処理を同一条件下で,或いは異なる条件下(例えば,前記処理要求の内容が異なる条件下)で複数回繰り返すことも考えられる。この場合,以降の処理で用いる前記応答時間として,前記処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いればよい。
Next, in step S3, the determination device X measures a response time which is a time from transmission of all the processing requests in step S2 until reception of those responses is completed, and the measurement result is simultaneously measured with the processing requests. The data is stored in the storage unit 2 in correspondence with the number of transmissions (S3). This process is implemented by the response time measurement processing unit 12.
Then, the determination device X determines that the variable i is N max or less (S5) while incrementing the variable i (S4), that is, changing the number of processing requests transmitted simultaneously. A process of simultaneously transmitting one or a plurality of the processing requests and receiving a response thereof (S2), and a process of measuring the response time for each process (S3, an example of a response time measurement process) a plurality of times Execute (N max times) (S2, S4, and S5 are examples of request communication processing).
The flowchart shown in FIG. 2 shows an example in which the processes of steps S2 and S3 are performed once for each number of processing requests to be transmitted simultaneously, but the present invention is not limited to this, and the processes of S1 to S5 are performed. It is also conceivable to repeat a plurality of times under the same conditions or under different conditions (for example, under conditions where the contents of the processing request are different). In this case, an average response time, a maximum response time, or the like for each number of simultaneous transmissions of the processing request may be used as the response time used in subsequent processing.

次に,前記決定装置Xは,ステップS3(応答時間測定処理)の測定結果に基づいて,前記サーバ装置Yにおける並列処理数ごとの処理効率を推定する(処理効率推定処理)。本処理は,前記処理効率推定処理部13により具現される。
ここでは,推定する前記処理効率として,例えば,前記サーバ装置Yにおける前記処理要求に応じた処理の並列処理数ごと(即ち,前記処理要求の同時送信数iごと)に,1つの前記処理要求当たりの応答時間(即ち,ステップS3で得られた前記応答時間を,同時送信した前記処理要求の数iで割った値,以下,単位応答時間TPという)を求める。もちろん,その時間を正規化する等により前記単位応答時間TPを表す指標を求めるようにしてもよい。
Next, the determination device X estimates the processing efficiency for each number of parallel processes in the server device Y based on the measurement result in step S3 (response time measurement processing) (processing efficiency estimation processing). This processing is implemented by the processing efficiency estimation processing unit 13.
Here, as the processing efficiency to be estimated, for example, per one processing request for each parallel processing number of processes corresponding to the processing request in the server device Y (that is, for each simultaneous transmission number i of the processing requests). Response time (that is, the value obtained by dividing the response time obtained in step S3 by the number i of the simultaneously transmitted processing requests, hereinafter referred to as unit response time T P ). Of course, an index representing the unit response time T P may be obtained by normalizing the time.

次に,前記決定装置Xは,ステップS6で推定された前記処理効率に基づいて,前記サーバ装置Yにおける前記最大並列処理数の設定値を決定する(S7,最大並列処理数決定処理)。本処理は,前記最大並列処理数決定部14により具現される。
図3は,前記サーバ装置Yにおける並列処理数(即ち,前記処理要求の同時送信数:横軸)とステップS6の処理により推定された前記サーバ装置Yの処理効率の一例である前記単位応答時間TP(1要求当たり応答時間:縦軸)との関係を表すグラフである。なお,横軸は対数軸である。
図3に示すように,前記並列処理数が少なすぎる(例えば1)状態では,処理のオーバーヘッド等の影響により,前記単位応答時間TPが長くなる(即ち,処理効率が悪い)。そして,前記並列処理数が増えるにつれて,徐々に処理効率が向上する(前記単位応答時間TPが短くなる)が,前記並列処理数が多すぎると,前記サーバ装置Yの処理効率が再び低下する(前記単位応答時間TPが長くなる)。
従って,前記決定装置Xは,ステップS7の処理において,前記処理効率が最も高くなるときの前記サーバ装置Yにおける並列処理数(即ち,前記処理要求の同時送信数)を,前記サーバ装置Yにおける前記最大並列処理数の設定値NSに決定する。図3に示す例では,前記最大並列処理数の設定値NSは「5」となる。
もちろん,前記サーバ装置Yにおける他の処理用に余裕を持たせる等のために,前記処理効率が最も高くなるときの並列処理数よりもあえて若干少ない数を前記最大並列処理数の設定値NSとすることも考えられる。
Next, the determination device X determines the set value of the maximum parallel processing number in the server device Y based on the processing efficiency estimated in step S6 (S7, maximum parallel processing number determination processing). This processing is implemented by the maximum parallel processing number determination unit 14.
FIG. 3 shows the unit response time as an example of the number of parallel processes in the server apparatus Y (that is, the number of simultaneous transmissions of the process requests: the horizontal axis) and the processing efficiency of the server apparatus Y estimated by the process of step S6. It is a graph showing the relationship with T P (response time per request: vertical axis). The horizontal axis is the logarithmic axis.
As shown in FIG. 3, in the parallel processing number is too small (e.g., 1) state, due to the influence of overhead such as processing, the unit response time T P is increased (i.e., poor processing efficiency). Then, as the number of parallel processing increases gradually processing efficiency can be improved (the unit response time T P becomes shorter) is, when the number of parallel processes is too large, the processing efficiency of the server device Y is lowered again (the unit response time T P is longer).
Therefore, the determination device X determines the number of parallel processes (that is, the number of simultaneous transmissions of the processing requests) in the server device Y when the processing efficiency is highest in the process of step S7. determining the set value N S of the maximum number of parallel processes. In the example shown in FIG. 3, a set value N S of the maximum number of parallel processes is "5".
Of course, for such allow room for other processing in the server apparatus Y, set the number dare slightly less than the number of parallel processing when the processing efficiency becomes highest in the maximum number of parallel processes values N S It can also be considered.

次に,前記決定装置Xは,前記サーバ装置Yの設計条件として与えられる前記処理要求に対する応答許容時間Tspecと,ステップS7の処理(最大並列処理数決定処理)により決定された前記最大並列処理数の設定値NSと,ステップS7での推定結果である前記単位応答時間TP(処理効率の一例)のうち前記最大並列処理数の設定値NSに対応するものである最小単位応答時間TPN(図3参照)とに基づいて,前記サーバ装置Yにおける前記処理要求の最大待ち行列数の設定値qSを決定し(S8,最大待ち行列数決定処理),その後処理を終了させる。本処理は,前記最大待ち行列数決定部15により具現される。
本処理で決定された前記最大並列処理数の設定値NS及び前記最大待ち行列数の設定値qSは,前記記憶部2への記憶や前記表示部4への表示がなされ,別途,その設定値が前記サーバ装置Yに設定される。或いは,当該決定装置Xから前記サーバ装置Yに前記ネットワーク9を通じて送信し,これに応じて前記サーバ装置Yにおいて自動設定されるよう構成してもよい。
ここで,前記サーバ装置YにおいてNS個の前記処理要求に応じた処理(以下,1個の前記処理要求に対応する処理をジョブという)をスレッド処理やマルチタスク処理等により並列処理した場合,同一のジョブ(ステップS2で送信した前記処理要求に対応するジョブ或いはこれと同等の演算負荷のジョブ)が一様に進行していると仮定すると,ある時点でのNS個のスレッド或いはタスク各々における前記ジョブの残処理時間は,残処理時間の少ないものから順に(TPN/NS,2TPN/NS,3TPN/NS,…,TPN)であるといえる。その結果,前記サーバ装置Yは,時間(TPN/NS)の経過ごとに1つの前記ジョブを処理することになる。これは,前記サーバ装置Yにおける待ち行列内にある前記処理要求のジョブは,時間(TPN/NS)の経過ごとに1つのジョブが処理されていくことを表す。従って,前記サーバ装置Yにおける最大待ち行列数をqとすると,その待ち行列の最後尾に加えられた前記処理要求のジョブがその待ち行列内に滞在する時間である最大滞在時間TWMAXは,次の(1)式で表される。
WMAX = q・TPN/NS …(1)
従って,前記端末装置が前記サーバ装置Yに対して前記処理要求を送信したときの最大の応答待ち時間は,1つのジョブの処理に要する時間TPNに前記最大滞在時間TWMAXを加えた時間となるので,次の(2)式を満足する最大待ち行列数qを前記最大待ち行列数の設定値qSとして設定すれば,前記応答許容時間Tspecを保証できる。
spec ≧ TPN+q・TPN/NS …(2)
この(2)式を変形すると,次の(3)式になる。
q ≦ NS(Tspec−TPN)/TPN …(3)
Next, the determination device X includes the allowable response time T spec for the processing request given as a design condition of the server device Y and the maximum parallel processing determined by the processing of step S7 (maximum parallel processing number determination processing). the number of set values N S, the minimum unit response time corresponds to the set value N S of the maximum parallelism number of estimation results in the unit response time is T P (an example of the processing efficiency) at step S7 Based on T PN (see FIG. 3), a setting value q S of the maximum queue number of the processing request in the server device Y is determined (S8, maximum queue number determination process), and then the process is terminated. This process is implemented by the maximum queue number determination unit 15.
Set value N S and the set value q S of the maximum queue number of the maximum number of parallel processes which are determined in this process, the display of the memory and the display unit 4 of the the storage unit 2 is made separately, the A set value is set in the server device Y. Alternatively, the determination apparatus X may be configured to transmit to the server apparatus Y through the network 9 and be automatically set in the server apparatus Y in response thereto.
Here, the processing corresponding to the N S of the processing request in the server device Y when processed in parallel by a (hereinafter, referred to as one said processing job processing corresponding to the request) threading or multi-tasking or the like, assuming the same job (job or this and job equivalent calculation load corresponding to the processing request transmitted in step S2) is proceeding uniformly, N S number of threads or tasks each at a point in time remaining processing time of the job in the said from those few remaining processing time order (T PN / N S, 2T PN / N S, 3T PN / N S, ..., T PN) to be. As a result, the server apparatus Y processes one job every time (T PN / N S ). This means that one job of the processing request in the queue in the server device Y is processed every time (T PN / N S ). Therefore, if the maximum number of queues in the server device Y is q, the maximum stay time T WMAX , which is the time that the job of the processing request added to the tail of the queue stays in the queue, is (1).
T WMAX = q · T PN / N S (1)
Therefore, the maximum response waiting time when the terminal device transmits the processing request to the server device Y is the time obtained by adding the maximum stay time T WMAX to the time T PN required for processing one job. Therefore, if the maximum queue number q satisfying the following equation (2) is set as the set value q S of the maximum queue number, the allowable response time T spec can be guaranteed.
T spec ≧ T PN + q · T PN / N S (2)
When this equation (2) is modified, the following equation (3) is obtained.
q ≦ N S (T spec −T PN ) / T PN (3)

ここで,(3)式(或いは(2)式)を満たすq(整数)の最小値,即ち,左辺と右辺とが等しくなるようなq(qが小数となるときは,小数点第1位以下を切り捨てた整数)を前記最大待ち行列数の設定値qSとして設定すれば,前記応答許容時間Tspecを保証で
きる。即ち,次の(4)式を満たすqSを前記最大待ち行列数の設定値とする。
S ≒ NS(Tspec−TPN)/TPN …(4)
この(4)式を満たすqSを前記最大待ち行列数の設定値とするということは,即ち,前記サーバ装置YによりステップS7(最大並列処理数決定処理)で決定された前記最大並列処理数の設定値NSの下で,その設定値NSに対応する前記最小単位応答時間TPN(1つの前記処理要求当たりの応答時間)で処理がなされたとしたときに,最大の応答待ち時間が前記応答許容時間Tspecと等しく(或いはほぼ等しく)なるように前記最大待ち行列数の設定値qSを決定するということである。
例えば,前述のステップS6で得られた前記最小単位応答時間TPNが2.25sec,ステップS7で得られた前記最大並列処理数の設定値NSが5であり,前記応答許容時間Tspecが7secである場合,(4)式に従えば前記最大待ち行列数の設定値qSは10となる。
これにより,前記応答許容時間Tspecを満たす範囲で,最大の前記最大待ち行列数の設定値qSが決定され,前記処理要求の受け付が拒否される頻度が極力少なくなるような決定がなされる。
Here, the minimum value of q (integer) satisfying equation (3) (or equation (2)), that is, q such that the left side and the right side are equal (when q is a decimal, the first decimal place by setting the integer) the truncated as the set value q S of the maximum queue number, it can guarantee the response time allowed T spec. That is, q S satisfying the following expression (4) is set as the set value of the maximum number of queues.
q S ≈N S (T spec −T PN ) / T PN (4)
Setting q S satisfying this equation (4) as the set value of the maximum number of queues means that the maximum number of parallel processes determined by the server device Y in step S7 (maximum parallel processing number determination process). under the setting value N S, when the processing has been performed the minimum unit response time T PN corresponding to the set value N S (response time per one of the processing requests), the maximum response waiting time That is, the set value q S of the maximum number of queues is determined so as to be equal to (or substantially equal to) the allowable response time T spec .
For example, the minimum unit response time T PN obtained in step S6 the aforementioned 2.25Sec, is said maximum number of parallel processes setting N S 5 obtained in step S7, the response allowable time T spec is In the case of 7 sec, the set value q S of the maximum queue number is 10 according to the equation (4).
As a result, the maximum set value q S of the maximum number of queues is determined within a range satisfying the response allowable time T spec, and a determination is made so that the frequency of rejecting the processing request is minimized. The

図4は,前記決定装置Xにより決定された前記最大待ち行列数の設定値qSが10であるときに,決定された各設定値NS,qSを設定した前記サーバ装置Yに複数の前記端末装置から前記処理要求を繰り返し送信する負荷試験により得られた前記サーバ装置Yの応答時間の測定結果を表すグラフ(横軸は経過時間)である。
ここで,図4に示す例は,前述のステップS6で得られた前記最小単位応答時間TPNが2.25sec,ステップS7で決定された前記最大並列処理数の設定値NSが5であり,前記応答許容時間Tspecが7secであるのに対してステップS8で決定された前記最大待ち行列数の設定値qSが10である場合の例である。
図4からわかるように,ほぼ設計通りの7sec以内に前記端末装置が応答を得ていることがわかる。
FIG. 4 shows that when the setting value q S of the maximum number of queues determined by the determination device X is 10, a plurality of values are assigned to the server device Y in which the determined setting values N S and q S are set. It is a graph showing the measurement result of the response time of the said server apparatus Y obtained by the load test which repeatedly transmits the said process request from the said terminal device (a horizontal axis is elapsed time).
Here, the example shown in FIG. 4, the minimum unit response time T PN obtained in step S6 the aforementioned 2.25Sec, be the maximum number of parallel processes setting N S 5 determined in step S7 In this example, the allowable response time T spec is 7 sec, and the set value q S of the maximum number of queues determined in step S8 is 10.
As can be seen from FIG. 4, it can be seen that the terminal device obtains a response within approximately 7 seconds as designed.

本発明は,通信回線を介して複数の端末装置から受信される処理要求に応じて処理を実行するサーバ装置に設定するパラメータの決定に利用可能である。   The present invention can be used for determining parameters to be set in a server device that executes processing in response to processing requests received from a plurality of terminal devices via a communication line.

本発明の実施形態に係る通信サーバ設定値決定装置Xの主要部の概略構成を表すブロック図。The block diagram showing the schematic structure of the principal part of the communication server setting value determination apparatus X which concerns on embodiment of this invention. 通信サーバ設定値決定装置Xにおけるサーバ装置Yの最大並列処理数及び最大待ち行列数の各設定値を決定する処理の手順を表すフローチャート。The flowchart showing the procedure of the process which determines each setting value of the maximum parallel processing number of the server apparatus Y in the communication server setting value determination apparatus X, and the maximum queue number. サーバ装置Yにおける並列処理数と通信サーバ設定値決定装置Xにより推定された処理効率との関係を表すグラフ。The graph showing the relationship between the parallel processing number in the server apparatus Y, and the processing efficiency estimated by the communication server setting value determination apparatus X. 通信サーバ設定値決定装置Xにより決定された最大並列処理数及び最大待ち行列数の設定値が設定されたサーバ装置Yの負荷試験により得られた応答時間の測定結果を表すグラフ。The graph showing the measurement result of the response time obtained by the load test of the server apparatus Y in which the setting value of the maximum parallel processing number determined by the communication server setting value determination apparatus X and the maximum number of queues was set.

符号の説明Explanation of symbols

X…通信サーバ設定値決定装置
Y…サーバ装置
1…演算部
2…記憶部
3…通信制御部
4…表示部
5…操作部
9…ネットワーク
11…要求通信処理部
12…応答時間測定処理部
13…処理効率推定処理部
14…最大並列処理数決定部
15…最大待ち行列数決定部
S1,S2,,…処理手順(ステップ)
X ... Communication server set value determination device Y ... Server device 1 ... Calculation unit 2 ... Storage unit 3 ... Communication control unit 4 ... Display unit 5 ... Operation unit 9 ... Network 11 ... Request communication processing unit 12 ... Response time measurement processing unit 13 ... processing efficiency estimation processing unit 14 ... maximum parallel processing number determining unit 15 ... maximum queue number determining unit S1, S2, ... processing procedure (step)

Claims (4)

所定の通信回線を介して複数の端末装置から受信される処理要求に応じて処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求の最大並列処理数の設定値と,複数の並列処理に対して備えられた1つの待ち行列に加える処理要求の数の最大値を示す最大待ち行列数の設定値とを決定する通信サーバ設定値決定装置であって,
前記最大並列処理数の設定値が設定されていない状態,或いは前記サーバ装置の処理能力として並列処理可能な数以上の範囲で設定された状態で,前記サーバ装置に対して前記通信回線を介して前記サーバ装置の処理能力として並列処理可能な数の1又は複数の前記処理要求を略同時に送信しその応答を受信する処理を,略同時に送信する前記処理要求の数を変えて複数回実行する要求通信手段と,
前記要求通信手段による前記処理要求の送信及びその応答の受信ごとに,前記処理要求を略同時に送信した後からそれらの応答の受信完了までの時間を表す応答時間を測定する応答時間測定手段と,
前記応答時間測定手段の測定結果に基づいて前記サーバ装置における並列処理数ごとの処理効率を推定する処理効率推定手段と,
前記処理効率推定手段の推定結果に基づいて前記サーバ装置における前記最大並列処理数の設定値を決定する最大並列処理数決定手段と,
前記サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間と前記最大並列処理数決定手段により決定された前記最大並列処理数の設定値と該設定値に対応する前記処理効率推定手段の推定結果である前記処理効率とに基づいて前記サーバ装置における前記処理要求の最大待ち行列数の設定値を決定する最大待ち行列数決定手段と,
を具備してなり,
前記処理効率推定手段により推定される前記処理効率が,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値であって,
前記最大待ち行列数決定手段が,前記サーバ装置により前記最大並列処理数決定手段により決定された前記最大並列処理数の設定値の下で,該設定値に対応する前記処理効率推定手段の推定結果である前記処理効率で処理がなされたとしたときに,最大の応答待ち時間が前記応答許容時間と略等しくなるように,前記応答許容時間と,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値のうち最小である最小単位応答時間との差を,当該最小単位応答時間で割り,さらに,前記最大並列処理数の設定値を掛けた値を,前記最大待ち行列数の設定値として決定してなることを特徴とする通信サーバ設定値決定装置。
Maximum parallel processing of the processing requests in the server device when a plurality of the processing requests are received for a server device that executes processing in response to processing requests received from a plurality of terminal devices via a predetermined communication line A communication server setting value determination device that determines a setting value of a number and a setting value of a maximum number of queues indicating a maximum value of the number of processing requests to be added to one queue provided for a plurality of parallel processes. And
In a state where the set value of the maximum parallel processing number is not set, or in a state where the processing capacity of the server device is set in a range more than the number that can be processed in parallel, the server device is connected to the server device via the communication line. A request to execute a process of transmitting one or a plurality of the process requests that can be processed in parallel as the processing capability of the server apparatus substantially at the same time and receiving a response thereof a plurality of times by changing the number of the process requests to be transmitted substantially simultaneously. Communication means;
A response time measuring means for measuring a response time indicating a time from transmission of the processing request substantially simultaneously to reception completion of the response for each transmission of the processing request and reception of the response by the request communication means;
Processing efficiency estimation means for estimating processing efficiency for each parallel processing number in the server device based on the measurement result of the response time measurement means;
Maximum parallel processing number determining means for determining a setting value of the maximum parallel processing number in the server device based on an estimation result of the processing efficiency estimating means;
An allowable response time for the processing request given as a design condition of the server device, a set value of the maximum parallel processing number determined by the maximum parallel processing number determining unit, and an estimation of the processing efficiency estimating unit corresponding to the set value Maximum queue number determining means for determining a setting value of the maximum queue number of the processing request in the server device based on the processing efficiency as a result;
Ri name comprises a,
The processing efficiency estimated by the processing efficiency estimation means is a value obtained by dividing the response time measured for each parallel processing number by the number of processing requests transmitted substantially simultaneously, or a value obtained by normalizing it.
The estimation result of the processing efficiency estimation unit corresponding to the set value under the set value of the maximum parallel processing number determined by the maximum parallel processing number determining unit by the server device. When the processing is performed with the above processing efficiency, the response allowable time and the response time measured for each number of parallel processes are transmitted substantially simultaneously so that the maximum response waiting time is substantially equal to the response allowable time. The difference from the minimum unit response time, which is the minimum value among the values divided by the number of processed requests or the normalized value, is divided by the minimum unit response time, and then multiplied by the set value of the maximum parallel processing number. A communication server set value determining apparatus , wherein the set value is determined as a set value for the maximum number of queues .
前記最大並列処理数決定手段が,前記処理効率が最も高くなる前記サーバ装置における並列処理数を前記最大並列処理数の設定値に決定してなる請求項1に記載の通信サーバ設定値決定装置。   2. The communication server set value determining apparatus according to claim 1, wherein the maximum parallel processing number determining means determines the parallel processing number in the server apparatus having the highest processing efficiency as a set value of the maximum parallel processing number. 所定の通信回線を介して複数の端末装置から受信される処理要求に応じて処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求の最大並列処理数の設定値と,複数の並列処理に対して備えられた1つの待ち行列に加える処理要求の数の最大値を示す最大待ち行列数の設定値とを決定する処理を,前記サーバ装置と前記通信回線を介して通信可能なコンピュータに実行させるための通信サーバ設定値決定プログラムであって,
前記最大並列処理数の設定値が設定されていない状態,或いは前記サーバ装置の処理能力として並列処理可能な数以上の範囲で設定された状態で,前記サーバ装置に対して前記サーバ装置の処理能力として並列処理可能な数の1又は複数の前記処理要求を略同時に送信しその応答を受信する処理を,略同時に送信する前記処理要求の数を変えて複数回実行させる要求通信処理と,
前記要求通信処理による前記処理要求の送信及びその応答の受信ごとに,前記処理要求を略同時に送信した後からそれらの応答の受信完了までの時間を表す応答時間を測定して記憶手段に記憶させる応答時間測定処理と,
前記記憶手段に記憶された前記応答時間測定処理の測定結果に基づいて前記サーバ装置における前記処理要求の並列処理数ごとの処理効率を推定する処理効率推定処理と,
前記処理効率推定処理の推定結果に基づいて前記サーバ装置における前記最大並列処理数の設定値を決定する最大並列処理数決定処理と,
前記サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間と前記最大並列処理数決定処理により決定された前記最大並列処理数の設定値と該設定値に対応する前記処理効率推定処理の推定結果である前記処理効率とに基づいて前記サーバ装置における前記処理要求の最大待ち行列数の設定値を決定する最大待ち行列数決定処理と,
をコンピュータに実行させるものであり,
前記処理効率推定処理により推定される前記処理効率が,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値であって,
前記最大待ち行列数決定処理が,前記サーバ装置により前記最大並列処理数決定処理により決定された前記最大並列処理数の設定値の下で,該設定値に対応する前記処理効率推定処理の推定結果である前記処理効率で処理がなされたとしたときに,最大の応答待ち時間が前記応答許容時間と略等しくなるように,前記応答許容時間と,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値のうち最小である最小単位応答時間との差を,当該最小単位応答時間で割り,さらに,前記最大並列処理数の設定値を掛けた値を,前記最大待ち行列数の設定値として決定するものである通信サーバ設定値決定プログラム。
Maximum parallel processing of the processing requests in the server device when a plurality of the processing requests are received for a server device that executes processing in response to processing requests received from a plurality of terminal devices via a predetermined communication line A process of determining a set value of a number and a set value of a maximum queue number indicating a maximum value of the number of processing requests to be added to one queue provided for a plurality of parallel processes; A communication server setting value determination program for causing a computer capable of communication via a communication line to execute,
The maximum number of parallel processing in a state where the set value is not set, or in a state in which the set in parallel processing possible number above range as the processing capability of the server apparatus, the processing capacity of the server device to the server device and request communication process to be executed multiple times substantially transmitted process of receiving the response at the same time, by changing the number of the processing request to transmit substantially simultaneously parallel processing possible number of one or more of the processing request as,
For each transmission of the processing request and reception of the response by the request communication processing, a response time indicating a time from the transmission of the processing request to the completion of reception of the response is measured and stored in the storage unit. Response time measurement processing,
Processing efficiency estimation processing for estimating processing efficiency for each parallel processing number of the processing request in the server device based on the measurement result of the response time measurement processing stored in the storage means;
A maximum parallel processing number determination process for determining a setting value of the maximum parallel processing number in the server device based on an estimation result of the processing efficiency estimation process;
Estimating the allowable response time for the processing request given as a design condition of the server device, the setting value of the maximum parallel processing number determined by the maximum parallel processing number determination processing, and the processing efficiency estimation processing corresponding to the setting value A maximum queue number determination process for determining a setting value of the maximum queue number of the processing request in the server device based on the processing efficiency as a result;
Is shall cause the computer to execute,
The processing efficiency estimated by the processing efficiency estimation process is a value obtained by dividing the response time measured for each parallel processing number by the number of processing requests transmitted substantially simultaneously, or a normalized value thereof,
The maximum queue number determination process is an estimation result of the processing efficiency estimation process corresponding to the set value under the set value of the maximum parallel process number determined by the server apparatus by the maximum parallel process number determination process. When the processing is performed at the processing efficiency, the response allowable time and the response time measured for each number of parallel processes are transmitted substantially simultaneously so that the maximum response waiting time is approximately equal to the response allowable time. The difference from the minimum unit response time, which is the minimum value among the values divided by the number of processed requests or the normalized value, is divided by the minimum unit response time, and then multiplied by the set value of the maximum parallel processing number. A communication server setting value determination program for determining the value as a setting value for the maximum number of queues .
所定の通信回線を介して複数の端末装置から受信される処理要求に応じて処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求の最大並列処理数の設定値と,複数の並列処理に対して備えられた1つの待ち行列に加える処理要求の数の最大値を示す最大待ち行列数の設定値とを決定する通信サーバ設定値決定方法であって,
前記最大並列処理数の設定値が設定されていない状態,或いは前記サーバ装置の処理能力として並列処理可能な数以上の範囲で設定された状態で,前記サーバ装置に対して前記通信回線を介して前記サーバ装置の処理能力として並列処理可能な数の1又は複数の前記処理要求を略同時に送信しその応答を受信する処理を,略同時に送信する前記処理要求の数を変えて複数回実行する要求通信工程と,
前記要求通信工程による前記処理要求の送信及びその応答の受信ごとに,前記処理要求を略同時に送信した後からそれらの応答の受信完了までの時間を表す応答時間を測定する応答時間測定工程と,
前記応答時間測定処理の測定結果に基づいて前記サーバ装置における前記処理要求の並列処理数ごとの処理効率を推定する処理効率推定工程と,
前記処理効率推定工程の推定結果に基づいて前記サーバ装置における前記最大並列処理数の設定値を決定する最大並列処理数決定工程と,
前記サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間と前記最大並列処理数決定工程により決定された前記最大並列処理数の設定値と該設定値に対応する前記処理効率推定工程の推定結果である前記処理効率とに基づいて前記サーバ装置における前記処理要求の最大待ち行列数の設定値を決定する最大待ち行列数決定工程と,
を有してなり,
前記処理効率推定工程により推定される前記処理効率が,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値であって,
前記最大待ち行列数決定工程が,前記サーバ装置により前記最大並列処理数決定工程により決定された前記最大並列処理数の設定値の下で,該設定値に対応する前記処理効率推定工程の推定結果である前記処理効率で処理がなされたとしたときに,最大の応答待ち時間が前記応答許容時間と略等しくなるように,前記応答許容時間と,並列処理数ごとに測定した応答時間を略同時に送信した処理要求の数で割った値又はそれを正規化した値のうち最小である最小単位応答時間との差を,当該最小単位応答時間で割り,さらに,前記最大並列処理数の設定値を掛けた値を,前記最大待ち行列数の設定値として決定するものであることを特徴とする通信サーバ設定値決定方法。
Maximum parallel processing of the processing requests in the server device when a plurality of the processing requests are received for a server device that executes processing in response to processing requests received from a plurality of terminal devices via a predetermined communication line A communication server setting value determination method for determining a setting value of a number and a setting value of a maximum number of queues indicating a maximum value of the number of processing requests to be added to one queue provided for a plurality of parallel processes. And
In a state where the set value of the maximum parallel processing number is not set, or in a state where the processing capacity of the server device is set in a range more than the number that can be processed in parallel, the server device is connected to the server device via the communication line. A request to execute a process of transmitting one or a plurality of the process requests that can be processed in parallel as the processing capability of the server apparatus substantially at the same time and receiving a response thereof a plurality of times by changing the number of the process requests to be transmitted substantially simultaneously. Communication process;
A response time measuring step for measuring a response time indicating a time from transmission of the processing request almost simultaneously to reception completion of the response for each transmission of the processing request and reception of the response by the request communication step;
A processing efficiency estimation step of estimating processing efficiency for each parallel processing number of the processing request in the server device based on the measurement result of the response time measurement processing;
A maximum parallel processing number determination step for determining a setting value of the maximum parallel processing number in the server device based on an estimation result of the processing efficiency estimation step;
Response allowable time for the processing request given as a design condition of the server device, a setting value of the maximum parallel processing number determined by the maximum parallel processing number determination step, and an estimation of the processing efficiency estimation step corresponding to the setting value A maximum queue number determining step of determining a setting value of the maximum queue number of the processing request in the server device based on the processing efficiency as a result;
Ri name have,
The processing efficiency estimated by the processing efficiency estimation step is a value obtained by dividing the response time measured for each parallel processing number by the number of processing requests transmitted substantially simultaneously, or a value obtained by normalizing it.
The maximum queue number determination step is an estimation result of the processing efficiency estimation step corresponding to the setting value under the setting value of the maximum parallel processing number determined by the server device by the maximum parallel processing number determination step. When the processing is performed at the processing efficiency, the response allowable time and the response time measured for each number of parallel processes are transmitted substantially simultaneously so that the maximum response waiting time is approximately equal to the response allowable time. The difference from the minimum unit response time, which is the minimum value among the values divided by the number of processed requests or the normalized value, is divided by the minimum unit response time, and then multiplied by the set value of the maximum parallel processing number. The communication server setting value determining method is characterized in that the determined value is determined as a setting value for the maximum number of queues .
JP2005035949A 2005-02-14 2005-02-14 COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD Expired - Fee Related JP4646649B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005035949A JP4646649B2 (en) 2005-02-14 2005-02-14 COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005035949A JP4646649B2 (en) 2005-02-14 2005-02-14 COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD

Publications (2)

Publication Number Publication Date
JP2006221516A JP2006221516A (en) 2006-08-24
JP4646649B2 true JP4646649B2 (en) 2011-03-09

Family

ID=36983802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005035949A Expired - Fee Related JP4646649B2 (en) 2005-02-14 2005-02-14 COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD

Country Status (1)

Country Link
JP (1) JP4646649B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5030063B2 (en) 2007-10-05 2012-09-19 本田技研工業株式会社 Navigation device and navigation system
JP2013222407A (en) * 2012-04-18 2013-10-28 Bank Of Tokyo-Mitsubishi Ufj Ltd System having flow rate control function
JP5793259B1 (en) 2014-04-14 2015-10-14 株式会社日立システムズ Information processing apparatus, flow control parameter calculation method, and program
JP2017059250A (en) * 2016-11-01 2017-03-23 株式会社三菱東京Ufj銀行 System having flow rate control function
JP2022110929A (en) 2021-01-19 2022-07-29 株式会社日立製作所 Management computer, management system, and management program
JP7288727B1 (en) * 2021-07-09 2023-06-08 株式会社プレイシンク Matrix optimization system, matrix optimization method, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075832A (en) * 1999-08-31 2001-03-23 Fujitsu Ltd Device and method for system diagnosis and computer- readable recording medium with system diagnostic program recorded thereon
JP2004164253A (en) * 2002-11-13 2004-06-10 Nec Corp Queue controller and registration suppression method used therefor
JP2004302525A (en) * 2003-03-28 2004-10-28 Nri & Ncc Co Ltd Device and method for carrying out performance balance evaluation and sizing of component of computer system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075832A (en) * 1999-08-31 2001-03-23 Fujitsu Ltd Device and method for system diagnosis and computer- readable recording medium with system diagnostic program recorded thereon
JP2004164253A (en) * 2002-11-13 2004-06-10 Nec Corp Queue controller and registration suppression method used therefor
JP2004302525A (en) * 2003-03-28 2004-10-28 Nri & Ncc Co Ltd Device and method for carrying out performance balance evaluation and sizing of component of computer system

Also Published As

Publication number Publication date
JP2006221516A (en) 2006-08-24

Similar Documents

Publication Publication Date Title
US7779416B2 (en) Load balance control method and load balance control apparatus in data-processing system
JP4646649B2 (en) COMMUNICATION SERVER SETTING VALUE DETERMINING DEVICE, ITS PROGRAM, AND ITS METHOD
JP4898805B2 (en) Method, program and apparatus for optimizing system configuration parameter sets
US8572621B2 (en) Selection of server for relocation of application program based on largest number of algorithms with identical output using selected server resource criteria
CN112256417B (en) Data request processing method and device and computer readable storage medium
CN110287332B (en) Method and device for selecting simulation model in cloud environment
US20110131579A1 (en) Batch job multiplex processing method
CN114730277B (en) Multi-tenant extraction transformation loading resource sharing
US20160274946A1 (en) System and method for controlling workflow execution, and recording medium
US9609068B2 (en) Session management system, session management apparatus, and non-transitory computer readable medium
US20110119373A1 (en) Service workflow generation apparatus and method
US10613992B2 (en) Systems and methods for remote procedure call
US9652294B2 (en) Cross-platform workload processing
US9886320B2 (en) Method for prioritizing tasks queued at a server system
CN112506619B (en) Job processing method, job processing device, electronic equipment and storage medium
US9501321B1 (en) Weighted service requests throttling
He et al. Budget-based control for interactive services with adaptive execution
JP5045576B2 (en) Multiprocessor system and program execution method
JP2006012065A (en) Resource load adjustment management system
WO2013138982A1 (en) A parallel processing method and apparatus
Ogden et al. Layercake: Efficient Inference Serving with Cloud and Mobile Resources
JP2011107862A (en) System, device, method, and program for evaluating maximum throughput
CN112835804B (en) Test case processing method, device, electronic equipment and medium
JP3891273B2 (en) Transaction processing load balancing method and system
CN110442612B (en) Data query method, electronic device and computer-readable storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100420

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100614

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100621

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

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees