WO2013145629A1 - Information processing device for executing load evaluation and load evaluation method - Google Patents

Information processing device for executing load evaluation and load evaluation method Download PDF

Info

Publication number
WO2013145629A1
WO2013145629A1 PCT/JP2013/001830 JP2013001830W WO2013145629A1 WO 2013145629 A1 WO2013145629 A1 WO 2013145629A1 JP 2013001830 W JP2013001830 W JP 2013001830W WO 2013145629 A1 WO2013145629 A1 WO 2013145629A1
Authority
WO
WIPO (PCT)
Prior art keywords
frequency distribution
data
request
time
expected
Prior art date
Application number
PCT/JP2013/001830
Other languages
French (fr)
Japanese (ja)
Inventor
育大 網代
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US14/387,030 priority Critical patent/US20150046480A1/en
Publication of WO2013145629A1 publication Critical patent/WO2013145629A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3414Workload generation, e.g. scripts, playback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Definitions

  • the present invention relates to a load test for a system or a server, and relates to a technique for evaluating whether a desired load can be generated for a test target.
  • a method called a load test is known as one of the methods for confirming the behavior of a system or server under high load.
  • a simulated load is applied to the target system or server.
  • a load test is performed by a load test execution device using software called a load test tool.
  • the load test execution device applies a load to the test target system by transmitting a request to the test target system.
  • the test target system processes the request received from the load test execution device and responds to the load test execution device.
  • test target system for example, a server of an online shopping site can be cited.
  • load is applied to the server during the actual operation of the online shopping site.
  • the customer When each customer arrives at the online shopping site, the customer repeatedly sends a request and receives a response to the request.
  • the request transmitted by the customer to the server is, for example, browsing or selecting a product, checking a cart, inputting a product delivery destination or a credit card number, and the like.
  • the customer receives a response (for example, text describing the product, an image of the product, a video of the product, etc.) to the request transmitted by the customer. After that, the customer confirms the screen of the displayed product or thinks to select the product, and transmits the next request again.
  • the customer repeats the transmission of the request and the reception of the response, and completes the browsing of the online shopping site when the purpose of purchasing the target product is achieved.
  • the arrival interval of requests follows an exponential distribution.
  • the arrival interval is a time interval from the arrival of a certain request to the arrival of the next request. It is known that when the request arrival interval follows an exponential distribution, the request arrival rate (the number of request arrivals per unit time) follows a Poisson distribution.
  • Patent Document 1 discloses an example of a load test execution device.
  • the operator of the load test execution device inputs the number of requests processed per unit time to be processed by the test target system as a performance target when performing the load test.
  • the load test execution device automatically adjusts various parameters at the time of performing the load test so as to satisfy the performance target input by the operator, and transmits the request.
  • Patent Document 2 discloses a method for determining the load capacity of a server.
  • the method disclosed in Patent Document 2 includes the following steps.
  • the method simulates the behavior of the virtual user and sends a request from the client to the server.
  • the method measures a metric that is a performance indicator of the server.
  • the method compares the measured metric with a predetermined value and changes the number of virtual users based on the difference between the metric and the predetermined value until the metric is within a predetermined range of the predetermined value.
  • Patent Document 3 discloses a distribution suitability test apparatus.
  • the distribution suitability test apparatus disclosed in Patent Document 3 includes a totaling section determination unit, a totaling unit, and a suitability test unit.
  • the tabulation section determining means determines the width of the tabulation section in which the measured data is tabulated so that the expected frequency has an equal probability.
  • the totaling means totals the number of data of each determined total section.
  • the fitness test means performs a fitness test between the aggregated data and the probability distribution.
  • Patent Document 4 discloses a technique for detecting an abnormality in the operating state using chi-square determination.
  • Patent Document 5 discloses a technique for generating a frequency distribution.
  • the load test execution device is required to accurately reproduce the load applied during the actual operation of the test target system.
  • the first requirement is that the average number of requests transmitted per unit time satisfies a desired value.
  • the second requirement is that requests are transmitted at time intervals according to a predetermined distribution (it can be said that the number of requests transmitted per unit time follows a predetermined distribution).
  • the load test execution device of Patent Document 1 has evaluated whether a request transmitted by the load test execution device satisfies the first requirement. However, the load test execution device has not evaluated whether the second requirement is satisfied.
  • the response time is a time required from when the request arrives at the test target system until the load test execution device receives the response.
  • the response time tends to be longer than when the request arrival time interval is constant. This is because when a request is transmitted at a non-constant time interval and a request arrives at a short interval, a queue is generated due to a large number of requests arriving at the test target system.
  • the load test execution device In order not to underestimate the response time to the request, the load test execution device needs to transmit the request not at a constant time interval but at a time interval according to a predetermined distribution. However, until now, no device has been known for evaluating whether or not a request transmitted by the load test execution device satisfies a predetermined distribution.
  • the present invention provides an information processing apparatus, a load evaluation method, and a program for executing a load evaluation capable of evaluating whether a load test execution apparatus can generate a desired load for a test target system. With the goal.
  • a first invention for solving the above-described problem is based on time-series data storage means for storing time-series data of a request transmission time transmitted from a load generation device to a test target system, based on the time-series data.
  • the request rate which is the number of requests transmitted per unit time, is calculated, the request rate is aggregated based on the class data, which is the aggregate interval for creating the frequency distribution data, and the frequency distribution data of the request rate is obtained.
  • Observation frequency distribution creation means to create, expected frequency distribution acquisition means to obtain expected frequency distribution data which is expected frequency distribution data assuming that the distribution of the request rate follows a desired probability distribution, and the observed frequency Using the distribution data and the expected frequency distribution data, the degree-of-fit test of the observed frequency distribution data with the desired probability distribution And goodness-of-fit test means for performing an information processing apparatus including a.
  • a second invention for solving the above-mentioned problem is based on time-series data storage means for storing time-series data of the transmission time of a request transmitted from the load generation device to the test target system, and based on the time-series data.
  • An observation frequency distribution creating means for calculating a request transmission time interval, totaling based on class data that is a total interval width for creating frequency distribution data, and creating frequency distribution data of a request transmission time interval;
  • Expected frequency distribution acquisition means for acquiring expected frequency distribution data that is expected frequency distribution data assuming that the distribution of the transmission time intervals of the request follows a desired probability distribution, the observed frequency distribution data, and the expected frequency
  • a fitness test means for performing a fitness test of the observed frequency distribution data with the desired probability distribution using the distribution data; It is obtain the information processing apparatus.
  • a third invention for solving the above-described problem is a method of controlling an apparatus including time-series data storage means for storing time-series data of a request transmission time transmitted from a load generation apparatus to a test target system. Based on the time series data, the request rate that is the number of requests transmitted per unit time is calculated, and the request rate is totaled based on the class data that is the total interval width for creating the frequency distribution data.
  • Generating frequency distribution data of request rate acquiring expected frequency distribution data which is frequency distribution data expected when the distribution of request rate follows a desired probability distribution, and the observed frequency Using the distribution data and the expected frequency distribution data, the degree of fitness of the observed frequency distribution data with the desired probability distribution
  • a computer comprising time-series data storage means for storing time-series data of the transmission time of a request transmitted from the load generation device to the test target system, Based on, the request rate that is the number of requests sent per unit time is calculated, the request rate is aggregated based on the class data that is the aggregate interval width for creating the frequency distribution data, and the frequency of the request rate Observation frequency distribution creation processing for creating distribution data, expected frequency distribution acquisition processing for obtaining expected frequency distribution data that is expected frequency distribution data assuming that the distribution of the request rate follows a desired probability distribution, the observation Using the frequency distribution data and the expected frequency distribution data, the desired probability distribution for the observed frequency distribution data. Goodness-of-fit test process for goodness-of-fit test with a non-volatile recording medium recording a program for executing the.
  • FIG. 1 is a network configuration diagram including a load evaluation device 1 according to the first embodiment.
  • FIG. 2 is a block diagram illustrating a configuration of the load evaluation device 1 according to the first embodiment.
  • FIG. 3 is an example of time-series data stored in the time-series data storage unit 111.
  • FIG. 4 is an example of data stored in the chi-square distribution data storage unit 112.
  • FIG. 5 is an example of class data acquired by the class acquisition unit 122.
  • FIG. 6 is an example of observation frequency distribution data regarding the request rate.
  • FIG. 7 is an example of expected frequency distribution data.
  • FIG. 8 is a flowchart for explaining the operation of the load evaluation device 1 according to the first embodiment.
  • FIG. 9 is an example in which observed frequencies and expected frequencies are arranged.
  • FIG. 9 is an example in which observed frequencies and expected frequencies are arranged.
  • FIG. 10 is an example of observation frequency distribution data regarding the request rate.
  • FIG. 11 is a block diagram illustrating a configuration of the load test execution device 2 according to the second embodiment.
  • FIG. 12 is a diagram illustrating typical behavior of a virtual user in a closed model.
  • FIG. 13 is a diagram illustrating typical behavior of a virtual user in an open model.
  • FIG. 14 is a block diagram illustrating a configuration of the load evaluation device 1 according to the second embodiment.
  • FIG. 15 is a flowchart for explaining the operation of the load evaluation device 1 according to the second embodiment.
  • FIG. 16 is a block diagram illustrating a configuration of the load evaluation device 1 according to the third embodiment.
  • FIG. 17 is an example of the probability density function of the exponential distribution.
  • FIG. 18 is an example of a Poisson distribution probability mass function.
  • FIG. 19 is a block diagram illustrating a configuration of the load evaluation device 1 according to the fourth embodiment.
  • FIG. 20 is a diagram illustrating a hardware configuration of a computer
  • FIG. 1 is a network configuration diagram including a load evaluation device (also referred to as an information processing device) 1 according to the first embodiment.
  • the load evaluation device 1 is connected to the load test execution device 2 and the test target system 3 via the network 4 so as to communicate with each other.
  • the load test execution device 2 (also referred to as a load generation device) is a device that performs a load test on the test target system 3.
  • the load test execution device 2 establishes a TCP (Transmission Control Protocol) connection with the test target system 3 and applies a load by continuing to transmit requests to the test target system 3.
  • TCP Transmission Control Protocol
  • the test target system 3 is a server or system that is a target of the load test.
  • the test target system 3 processes the request received from the load test execution device 2 and responds to the load test execution device 2.
  • the transmission time interval of the request transmitted by the load test execution device 2 is equal to the arrival time interval of the request when viewed from the test target system 3.
  • the average number of requests per unit time (request transmission rate) of the request transmitted by the load test execution device 2 is viewed from the test target system 3. And the average number of requests received per unit time (request arrival rate).
  • the request interval without distinguishing between the request transmission interval and the arrival interval.
  • the request transmission rate and the request arrival rate are called request rates.
  • the values of the request transmission rate and the request arrival rate are equal to the throughput value indicating the number of request processes per unit time.
  • the load evaluation device 1 acquires a log of communication data between the load test execution device 2 and the test target system 3. And the load evaluation apparatus 1 calculates a request interval or a request rate using the acquired log. The load evaluation device 1 evaluates whether or not the calculated request interval or request rate distribution matches the probability distribution desired by the operator of the load test execution device 2.
  • the test target system 3 is a system that receives requests from an unspecified number of customers, such as an online shopping site. It is known that during the actual operation of such a system, the request interval is a random number according to a probability distribution such as an exponential distribution or a Pareto distribution.
  • FIG. 17 An example of the probability density function of the exponential distribution is shown in FIG. In FIG. 17, the horizontal axis represents the request interval, and the vertical axis represents the probability.
  • the exponential distribution is a probability distribution having a parameter ⁇ , and the expected value (average value) is 1 / ⁇ . When the request interval is 1 / ⁇ , its reciprocal ⁇ represents the number of requests per second (request rate).
  • the average request rate is 20 [requests / second].
  • the request rate is known to follow a Poisson distribution.
  • Fig. 18 shows an example of the Poisson distribution probability mass function.
  • the horizontal axis in the figure represents the request rate, and the vertical axis represents the probability.
  • a probability mass function is a probability density function for a discrete probability distribution. Since the request rate takes only an integer, the probability distribution is expressed as a probability mass function.
  • the request arrival interval is short or long, or the number of arrival requests per unit time is small. Time will be mixed.
  • a queue is generated and the response time is likely to increase.
  • the response time is longer when the request interval varies as shown in FIGS. 17 and 18 than when the request interval is constant.
  • the request interval transmitted by the load test execution device 2 is not as intended by the operator, the value of the throughput and the response time obtained as a result of the load test are not reliable. In order to guarantee the reliability of the result of the load test, it is necessary to evaluate that the request interval follows the distribution intended by the operator of the load test execution device 2.
  • FIG. 2 is a block diagram showing the configuration of the load evaluation device 1 according to the first embodiment of the present invention.
  • the load evaluation device 1 is a computer that includes a storage unit 110, a processing unit 120, a communication unit 130, an input unit 140, and an output unit 150.
  • the storage unit 110 includes a time series data storage unit 111 and a chi-square distribution data storage unit 112.
  • the time series data storage unit 111 stores time series data related to communication between the load test execution device 2 and the test target system 3.
  • the time series data includes at least data on the transmission time of the request transmitted from the load test execution device 2 to the test target system 3.
  • the time series data may include a TCP connection request, a TCP disconnection request, and the like from the load test execution device 2 to the test target system 3.
  • FIG. 3 is a diagram illustrating an example of data stored in the time-series data storage unit 111.
  • the data shown in FIG. 3 represents log information related to communication between the load test execution device 2 and the test target system 3.
  • the leftmost column in Fig. 3 represents the row number.
  • the second column from the left represents the elapsed time (seconds) since the start of log collection.
  • S and D in “S-> D” in the third to fifth columns from the left represent the IP (Internet Protocol) address of the host.
  • S ⁇ ⁇ -> D means that data is transmitted from S to D.
  • the sixth column represents the communication protocol.
  • TCP in this example indicates that the TCP protocol is used.
  • the tenth column represents the type of the TCP packet, and the eleventh and subsequent columns represent the contents transmitted by the HTTP (HyperText Transfer Protocol) protocol.
  • the line number 10050 is changed from the machine identified by the IP address 192.168.0.1 to /some.com on the machine identified by the IP address 192.168.0.2. This indicates that a GET request is transmitted at a time 21.256673 seconds after the start of log collection for the content “php”.
  • the time-series data storage unit 111 stores time-series data of request transmission times.
  • the chi-square distribution data storage unit 112 stores a chi-square distribution table indicating the value of the chi-square distribution or a calculation formula for calculating the value of the chi-square distribution.
  • the value of the chi-square distribution is used when performing a chi-square test described later.
  • FIG. 4 shows an example of a chi-square distribution table stored in the chi-square distribution data storage unit 112. Details of the chi-square distribution table will be described later.
  • the processing unit 120 includes a communication data acquisition unit 121, a class acquisition unit 122, an observation frequency distribution creation unit 123, an expected frequency distribution acquisition unit 124, a superiority level acquisition unit 125, and a fitness test unit 126. Composed.
  • the communication data acquisition unit 121 acquires data related to communication between the load test execution device 2 and the test target server 3. Next, the communication data acquisition unit 121 stores the acquired data related to communication in the time-series data storage unit 111.
  • the data related to communication specifically refers to request transmission, TCP connection request, and TCP disconnection request.
  • the class acquisition unit 122 receives “class data” necessary for creating the “frequency distribution” from the operator of the load evaluation device 1.
  • the frequency distribution represents the distribution of the number of sample data for a certain property or variable. Frequency distribution is also called frequency distribution.
  • a class of certain properties for classifying sample data and a range of variables (total section width) are called classes.
  • Class data is data that defines a class.
  • the range of the interval related to the request interval or request rate transmitted by the load test execution device 2 is defined as a class.
  • FIG. 5 is a diagram illustrating an example of class data acquired by the class acquisition unit 122.
  • the class data shown in FIG. 5 is an example of class data related to the request rate, and the contents thereof are as follows. In this example, seven classes are set.
  • the request rate “6 to” represents “6 or more”.
  • the observation frequency distribution creating unit 123 calculates the request rate or the request interval from the time series data stored in the time series data storage unit 111. Next, the observation frequency distribution creation unit 123 aggregates the calculated request rate or request interval based on the class data received by the class acquisition unit 122 to create “observation frequency distribution data”.
  • the observed frequency distribution data is data in which the frequency corresponding to the classification of the class is counted for each class of the class data, and the class and the frequency are associated with each other.
  • FIG. 6 is a diagram illustrating an example of observation frequency distribution data regarding the request rate created by the observation frequency distribution creation unit 123.
  • the observation frequency distribution data shown in FIG. 6 has a total of 100 observation frequencies (sample data numbers).
  • the observation frequency distribution data is aggregated according to the class data acquired by the class acquisition unit 122.
  • the expected frequency distribution acquisition unit 124 acquires or calculates “expected frequency distribution data” for testing whether the observed frequency distribution is in line with the distribution intended by the operator.
  • FIG. 7 is a diagram illustrating an example of expected frequency distribution data acquired by the expected frequency distribution acquisition unit 124.
  • the expected frequency distribution is a frequency distribution expected when the observed value distribution is assumed to follow a probability distribution desired by the operator.
  • the observation value is a value analyzed from the time series data stored in the time series data acquisition unit 111.
  • the expected frequency distribution is a distribution according to the Poisson distribution.
  • the expected frequency distribution shown in FIG. 7 is a distribution calculated based on a Poisson distribution with ⁇ (expected value) of 2 so that the total frequency of the expected frequency distribution is the same as the total frequency of the observed frequency distribution. It is.
  • the superiority level acquisition unit 125 acquires the value of the significance level in the chi-square test from the operator.
  • the value of the significance level is a probability value such as 5% or 1%, for example.
  • the acquired value of significance level is used in the later-described chi-square test.
  • the goodness-of-fit test unit 126 performs a goodness-of-fit test (chi-square test) between the observed frequency distribution data created by the observed frequency distribution creation unit 123 and the expected frequency distribution data acquired by the expected frequency distribution acquisition unit 124. In this way, the suitability test unit 126 evaluates whether the request rate or request transmission interval of the request transmitted by the load test execution device 2 is in accordance with the distribution desired by the operator of the load test execution device 2.
  • the communication unit 300 communicates with the load test execution device 2 and the test target system 3.
  • the input unit 400 receives input from the operator of the load evaluation device 1.
  • the output unit 500 outputs information to the operator of the load evaluation device 1.
  • the storage unit 110 of the load evaluation device 1 can be realized using a RAM (Random Access Memory), an HDD (Hard Disk Drive), or the like.
  • Each unit included in the processing unit 120 can be realized by a CPU (Central Processing Unit) included in the load evaluation device 1 executing a predetermined program or code.
  • the communication unit 130 can be realized by an application program controlling a network interface card (NIC) using a function provided by an OS (Operating System), for example.
  • the input unit 140 can be realized using, for example, a keyboard or a mouse.
  • the output unit 150 can be realized using a display, for example.
  • FIG. 20 is a diagram illustrating a hardware configuration of a computer 700 that implements the load evaluation device 1 according to the present embodiment.
  • a computer 700 includes a CPU (Central Processing Unit) 701, a storage unit 702, a storage device 703, an input unit 704, an output unit 705, and a communication unit 706. Furthermore, the computer 700 includes a recording medium (or storage medium) 707 supplied from the outside.
  • the recording medium 707 may be a non-volatile recording medium that stores information non-temporarily.
  • the CPU 701 controls the overall operation of the computer 700 by operating an operating system (not shown).
  • the CPU 701 reads a program and data from a recording medium 707 mounted on the storage device 703, for example, and writes the read program and data to the storage unit 702.
  • the program is, for example, a program that causes the computer 700 to execute operations of flowcharts shown in FIGS.
  • the CPU 701 executes various processes as the processing unit 120 shown in FIG. 2 according to the read program and based on the read data.
  • the CPU 701 may download a program or data to the storage unit 702 from an external computer (not shown) connected to a communication network (not shown).
  • the storage unit 702 may correspond to the storage unit 120 in FIG.
  • the storage device 703 is, for example, an optical disk, a flexible disk, a magnetic optical disk, an external hard disk, and a semiconductor memory, and includes a recording medium 707.
  • the storage device 703 (recording medium 707) stores the program in a computer-readable manner.
  • the storage device 703 may store data.
  • the storage device 703 may correspond to the storage unit 120 in FIG.
  • the input unit 704 may correspond to the input unit 140 in FIG.
  • the output unit 705 may correspond to the output unit 150 in FIG.
  • the communication unit 706 may correspond to the communication unit 130 of FIG.
  • the functional unit block of the load evaluation apparatus 1 shown in FIG. 2 may be realized by the computer 700 having the hardware configuration shown in FIG.
  • the means for realizing each unit included in the computer 700 is not limited to the above.
  • the computer 700 may be realized by one physically coupled device, or may be realized by two or more physically separated devices connected by wire or wirelessly and by a plurality of these devices. .
  • a recording medium 707 in which the above-described program code is recorded may be supplied to the computer 700, and the CPU 701 may read and execute the program code stored in the recording medium 707.
  • the CPU 701 may store the code of the program stored in the recording medium 707 in the storage unit 702, the storage device 703, or both. That is, the present embodiment includes an embodiment of a recording medium 707 that stores a program (software) executed by the computer 700 (CPU 701) temporarily or non-temporarily.
  • FIG. 8 is a flowchart for explaining the operation of the load evaluation device 1.
  • the class acquisition unit 122 acquires class data necessary for creating the frequency distribution (S11).
  • the class acquisition unit 122 acquires class data related to the request rate or the request interval as exemplified in FIG. Hereinafter, it is assumed that the class acquisition unit 122 has received class data related to the request rate.
  • the observation frequency distribution creation unit 123 acquires class data related to the request rate from the class acquisition unit 122. Subsequently, the observation frequency distribution creation unit 123 calculates the request rate based on the time series data stored in the time series data storage unit 111. Subsequently, the observation frequency distribution creation unit 123 aggregates the calculated request rates based on the class data acquired from the class acquisition unit 122, and creates observation frequency distribution data regarding the request rate (S12). The observation frequency distribution creation unit 123 creates, for example, observation frequency distribution data having a request rate as shown in FIG.
  • the expected frequency distribution acquisition unit 124 acquires or creates expected frequency distribution data that is a frequency distribution that is expected when the observed value distribution follows the distribution desired by the operator. For example, expected frequency distribution data as shown in FIG. 7 is acquired or created (S13).
  • the superiority level acquisition unit 125 acquires a significant level value from the operator.
  • the superiority level acquisition unit 125 acquires a value of a significance level of “5%”, for example (S14).
  • the goodness-of-fit test unit 126 performs a goodness-of-fit test between the observation frequency distribution data created by the observation frequency distribution creation unit 123 and the expected frequency distribution data acquired by the expected frequency distribution acquisition unit 124 (S15).
  • the goodness-of-fit test unit 126 uses a chi-square test well known in the field of statistics for the goodness-of-fit test.
  • the goodness-of-fit test based on the chi-square test is a technique for testing the hypothesis that “the frequency distribution of observed events matches the expected frequency distribution”. For example, if the significance level is 5% and the chi-square value calculated based on the difference between the observed event and the expected event is included in the danger zone of less than 5%, the assumption is rejected and may not be met. Is considered high. Conversely, if the chi-square value is not within the risk range of less than 5%, the assumption that it is met is adopted and it is considered likely that it is met.
  • a chi-square value is first calculated from the distribution of the observed frequency and the expected frequency.
  • the observation frequency of class i is Oi and the expected frequency is Ei
  • the chi-square value is calculated by the following equation.
  • ⁇ 2 ⁇ i ((Oi ⁇ Ei) 2 / Ei)
  • the chi-square value ⁇ (15-13.5) 2 /13.5 ⁇ Tasu ⁇ (27-27.1) 2 /27.1 ⁇ Tasu ⁇ (29-27.1) 2/27. 1 ⁇ + ⁇ (13-18.0) 2 /18.0 ⁇ + ⁇ (6 ⁇ 9.02) 2 /9.02 ⁇ + ⁇ (5-3.61) 2 /3.61 ⁇ + ⁇ ( 5-1.66) 2 /1.66 ⁇ 9.96.
  • the probability that the chi-square value is 9.96 is calculated based on the chi-square distribution table.
  • FIG. 4 shows a part of the chi-square distribution table.
  • the chi-square distribution table of FIG. 4 shows the following regarding the chi-square value with six degrees of freedom.
  • the output unit 150 outputs a determination result indicating conformity to an external output device such as a display, a log file, or the like (S16).
  • the determination result means that the request rate in the load generated by the load generator matches the distribution intended by the user.
  • the distribution with respect to the request rate transmitted by the load test execution device 2 is evaluated.
  • the request interval transmitted by the load test execution device 2 can also be evaluated.
  • class data related to the request interval is as follows.
  • the observation frequency distribution creation unit 123 may create observation frequency distribution data related to the request interval when the class data received by the class acquisition unit 122 is data related to the request interval. . In addition, the observation frequency distribution creation unit 123 may create observation frequency distribution data related to the request rate when the class data received by the class acquisition unit 122 is data related to the request rate.
  • the load evaluation device 1 and the load test execution device 2 may be an integrated device.
  • the class acquisition unit 122 may acquire class data from a storage unit (not shown) instead of acquiring class data from an operator.
  • the expected frequency distribution acquisition unit 124 may acquire the expected frequency distribution data from an operator (not shown) instead of acquiring the expected frequency distribution data from the operator.
  • the significance level acquisition unit 125 may acquire the expected frequency distribution data from a storage unit or the like (not shown) instead of acquiring the expected frequency distribution data from the operator.
  • the load evaluation device 1 it is verified whether or not the transmission time interval or request transmission rate of the request transmitted by the load test execution device 2 follows a predetermined distribution. Can do. By referring to such information, it can be confirmed whether or not the load test has been accurately performed, and it can be determined whether or not the result of the load test is reliable.
  • the time-series data storage unit stores the time-series data of the transmission time of the request transmitted from the load test execution device 2 to the test target system 3.
  • the observed frequency distribution creation unit 123 calculates a request rate that is the number of requests transmitted per unit time based on the time series data, and a class that is a total interval width for creating the frequency distribution data Based on the data, the request rate is aggregated, and observation frequency distribution data of the request rate is created.
  • the expected frequency distribution acquisition 124 acquires expected frequency distribution data that is expected frequency distribution data when the request rate distribution is assumed to follow a desired probability distribution.
  • the fitness test 126 uses the observed frequency distribution data and the expected frequency distribution data to perform a fitness test with the desired probability distribution for the observed frequency distribution data.
  • the load evaluation apparatus 1 according to the second embodiment uses a load test of a type executed by a test scenario as an evaluation target.
  • test scenario is a script for transmitting a request to the test target system 3 and applying a load.
  • the test scenario is executed by a “virtual user”.
  • the “virtual user” is a function for transmitting a request to the test target system 3 and is generated by the load test execution device 2.
  • FIG. 11 is a block diagram illustrating a configuration of the load test execution device 2 according to the second embodiment.
  • the load test execution device 2 includes a test storage unit 210 and a generation unit 220.
  • the test storage unit 210 stores a test scenario.
  • the test scenario is a script for sending a request to the test target system 3 and applying a load.
  • the test scenario includes a plurality of processes from sending a request to receiving a response to the request.
  • the specific content of the test scenario is determined by the operator of the load test execution device 2 in consideration of typical processing content of the test target system 3.
  • the request data is a URL (Uniform Resource Locator) of the Web server.
  • URL Uniform Resource Locator
  • a series of requests in the test scenario are a series of requests such as product browsing and selection, cart confirmation, product delivery destination and credit card number input by customers of the online shopping site. It corresponds to the operation of.
  • the generation unit 220 generates a “virtual user” and causes the virtual user to execute a test scenario.
  • the virtual user is a function for transmitting a request to the test target system 3 in order to simulate access to the test target system 3 by the user, for example.
  • Each virtual user applies a load by transmitting a request to the test target system 3.
  • the generation unit 220 generates OS level threads and processes for the number of virtual users so that the load test execution apparatus 2 operates a plurality of virtual users in parallel, and executes a test scenario in each thread or process.
  • Typical behavior of virtual users include “closed model” and “open model”. Whether the “closed model” or the “open model” is selected as the behavior of the virtual user is an item determined by the operator of the load test execution device 2 according to the nature of the load test to be executed.
  • FIG. 12 is a diagram illustrating typical behavior of a virtual user in a closed model.
  • the virtual user first establishes a TCP connection in accordance with a TCP / IP (Transmission Control Protocol / Internet Protocol) protocol before sending a request to the test target system 3.
  • TCP / IP Transmission Control Protocol / Internet Protocol
  • a logical communication path for exchanging requests and responses is prepared between the load test execution device 1 on which the virtual user operates and the test target system 3.
  • the virtual user After the TCP connection is established, the virtual user sends a request specified in the test scenario. First, the virtual user transmits a first request and receives a response to the first request. The virtual user pauses for a certain time (thinking time) from receiving a response to a certain request until transmitting the next request. When the thinking time elapses after receiving the response to the first request, the virtual user transmits the second request and receives the response to the second request.
  • the virtual user repeats these operations and disconnects the TCP connection when reception of the Nth request is completed for the predetermined number of requests (N) specified in the test scenario.
  • the virtual user completes the processing for one user after the TCP connection is established until the TCP connection is disconnected.
  • the virtual user pauses for a predetermined time (thinking time) after receiving the Nth request and then executes the test scenario again.
  • the virtual user repeats the test scenario execution a predetermined number of times or for a predetermined time. This is because each virtual user cannot continue to apply a load to the test target system 3 for a certain period if the process is completed by executing the test scenario once.
  • ⁇ Thinking time> is a time that simulates "the time required for a user to select a request". For example, consider a case where the test target system 3 is an online shopping site. The customer of the online shopping site receives a response to the request (for example, text describing the product, product image, product video, etc.). Thereafter, the customer checks the screen of the displayed product, thinks to select a product, inputs a product destination, a credit card number, and the like. The customer sends the next request after these times have elapsed since receiving the response to the request. In this way, the time interval from when the user receives a response to a request until the next request is transmitted is simulated using the thinking time.
  • the length of the thinking time is a parameter that can be set by the operator of the load test execution device 2.
  • the operator of the load test execution device 2 sets an average value of the thinking time as a parameter.
  • the load test execution apparatus 2 determines the length of the thinking time until it transmits a request using the random number according to an exponential distribution based on the parameter.
  • the load test execution device 2 adjusts the time interval between requests to be transmitted in this way, and reproduces the variation in the request transmission interval.
  • the request transmission time interval in the test scenario is the response time RT And the sum of the thinking time TT.
  • the response time RT is an observed value that is influenced by the load state of the test target system, and is a value that cannot be directly controlled by the operator of the load test execution device 1.
  • the response time RT increases, and the response time RT becomes larger than the thinking time TT, the response time RT becomes more dominant in determining the request transmission time interval.
  • the thought time TT is set as a random number and the change in the request transmission interval is attempted to be reproduced, the effect is diminished. As a result, the request transmission time interval deviates from the transmission time interval intended by the operator.
  • the closed model In the closed model, the load on the system under test increases and the response time increases, so the time to complete the test scenario also increases, so the time to repeat the next test scenario (virtual user arrival) is delayed. There's a problem. In other words, the closed model has a drawback that the load generated by the load generator decreases as the load on the test target system increases.
  • ⁇ Description of open model> The difference between a closed model and an open model is that a virtual user repeats the execution of a test scenario in the closed model, whereas a virtual user is dynamically generated in the open model and disappears after the test scenario is executed. It is in.
  • FIG. 13 is a diagram for explaining a typical behavior of a virtual user in the opened model.
  • the virtual user first establishes a TCP connection according to the TCP / IP protocol before sending a request to the test target system 3.
  • a logical communication path for exchanging requests and responses is prepared between the load test execution device 1 on which the virtual user operates and the test target system 3.
  • the virtual user After the TCP connection is established, the virtual user sends a request specified in the test scenario. First, the virtual user transmits a first request and receives a response to the first request.
  • the virtual user transmits a second request and receives a response to the second request.
  • the virtual user repeats these operations, and disconnects the TCP connection when the reception of the Nth request is completed for the predetermined number of requests (N) defined in the test scenario.
  • the virtual user completes the processing for one user after the TCP connection is established until the TCP connection is disconnected.
  • the virtual user arrives at the frequency intended by the user regardless of the load of the test target system, so that a more accurate load can be generated as compared with the closed model.
  • FIG. 14 is a block diagram showing a configuration of the load evaluation device 1 according to the second exemplary embodiment of the present invention. Constituent elements similar to those in the first embodiment are given the same reference numerals, and the description thereof is omitted.
  • the load evaluation device 1 according to the second embodiment includes a filtering unit 127 in addition to the configuration of the load evaluation device 1 in the first embodiment shown in FIG.
  • the filtering unit 127 extracts data related to the first request in the test scenario from the time series data stored in the time series data storage unit 111.
  • the time-series data storage unit 111 stores time-series data of transmission times of requests transmitted to the test target system 3 by repeatedly executing a script by the virtual user.
  • the time-series data storage unit 111 further stores time-series data of the transmission time of the TCP connection request requested to the test target system 3 when the virtual user starts executing the script.
  • the filtering unit 127 extracts, from the time-series data storage unit 111, the data of the transmission time of the request transmitted first after the TCP test is sent from the load test execution device 2 to the test target system 3. This is because, as described in the description of the closed model and the open model described above, the request to be transmitted first after the TCP connection request is the first request in the test scenario.
  • the operation of the filtering unit 127 will be described using a specific example of data stored in the time-series data storage unit 111 shown in FIG. FIG. 3 shows log information related to communication between the load test execution device 2 and the test target system 3.
  • Lines 10047 to 10049 in FIG. 3 indicate connection connection requests from the virtual user (port 1855 at address 192.168.0.1) generated by the load test execution device 2 to the test target system 3 (port 80 at address 192.168.0.2). Indicates that the connection was successfully established.
  • An application on the OS communicates through a TCP port. In preparation for this, the applications on the OS exchange [SYN], [SYN, ACK], and [ACK] packets to establish mutual connections.
  • the line 10050 in FIG. 3 represents that a GET request is transmitted from the virtual user to the test target system 3 for the content “/some.php” on the server by the HTTP protocol. Since the request described in the row 10050 is a request transmitted first after the TCP connection request described in the rows 10047 to 10049, the filtering unit 127 transmits the transmission time data of the request described in the row 10050. To extract.
  • the filtering unit 127 analyzes the data stored in the time-series data storage unit 111 in this way, and extracts data related to the first request in the test scenario. ⁇ Description of operation> Next, the operation of the load evaluation device 1 according to the second embodiment will be described.
  • FIG. 15 is a flowchart for explaining the operation of the load evaluation device 1.
  • the filtering unit 127 extracts data related to the first request in the test scenario from the time series data stored in the time series data storage unit 111. Subsequently, the filtering unit 127 outputs the extracted data to the observation frequency distribution creation unit 123 (S21).
  • the class acquisition unit 122 acquires class data necessary for creating the frequency distribution (S22).
  • observation frequency distribution creation unit 123 analyzes the request rate regarding the first request in the test scenario based on the data output from the filtering unit 127.
  • the observation frequency distribution creation unit 123 further creates observation frequency distribution data related to the request rate based on the class data acquired from the class acquisition unit 122 (S12).
  • the load evaluation device 1 evaluates the request interval or the request rate for only the first request of the test scenario.
  • the request interval follows an exponential distribution
  • the request rate follows a Poisson distribution
  • the evaluation regarding only the first request of the test scenario is evaluated to approximate the evaluation regarding the entire request transmitted by the load test execution device 2. Can be done automatically. This is because the exponential distribution or Poisson distribution has a property called “memorylessness”.
  • the filtering unit 127 extracts only a part from the time series data stored in the time series data storage unit 111. And the observation frequency distribution creation part 123 totals only the data which the filtering part 127 extracted.
  • the series of processing of the observation frequency distribution creation unit 123 can be reduced in cost. It becomes possible.
  • the load evaluation device 1 evaluates the request interval or the request rate for only the first request of the test scenario extracted by the filtering unit 127. By doing so, the load evaluation device 1 evaluates the arrival interval and arrival rate of the virtual users. In the model opened as described above, the arrival interval and arrival rate of the virtual user are controlled on the load test execution device 2 side regardless of the load of the load target system 3. Therefore, the load evaluation device 1 according to the second embodiment is not influenced by the load of the test target system 3 by evaluating the arrival interval and arrival rate of the virtual users, and the virtual user generated by the load test execution device 2 It is possible to accurately evaluate the quality (request interval, request rate) of the transmitted request.
  • the filtering unit 127 extracts from the time-series data storage unit 111 does not necessarily need to be only data related to the first request of the test scenario.
  • the filtering unit 127 may extract a TCP connection request from the load test execution device 2 to the test target system 3.
  • a request to a Web server is normally transmitted according to a protocol such as HTTP or HTTPS (Hypertext Transfer Protocol Protocol over Secure Secure Socket Layer).
  • HTTP and HTTPS are protocols that operate on top of the TCP protocol, and analyzing TCP communication packets is less time-consuming than analyzing HTTP and HTTPS packets.
  • the conformity test for the TCP connection request can be performed at a lower cost than the conformity test for the first request in the test scenario.
  • the filtering unit 127 extracts the transmission time data of the TCP connection request from the time series data storage unit 111 and outputs the data to the observation frequency distribution creation unit 123.
  • the observation frequency distribution creation unit 123 calculates the number of TCP connection requests per unit time (TCP connection request rate) based on the data extracted by the filtering unit 127. Next, the observation frequency distribution creation unit 123 aggregates the calculated TCP connection request rates based on the class data obtained from the class acquisition unit 122, and creates observation frequency distribution data of the TCP connection request rates.
  • FIG. 16 is a block diagram showing the configuration of the load evaluation device 1 according to the third embodiment of the present invention. Constituent elements similar to those in the first embodiment are given the same reference numerals, and the description thereof is omitted.
  • the load evaluation device 1 includes a filtering unit 127A instead of the filtering unit 127 as compared with the configuration of the load evaluation device 1 in the second embodiment shown in FIG. Further, a time series data storage unit 111 ⁇ / b> A is provided instead of the time series data storage unit 111.
  • the load evaluation device 1 according to the third embodiment can save the storage capacity of the time series data storage unit 111A as compared with the load evaluation device 1 according to the first embodiment.
  • the filtering unit 127A extracts only a part of the communication-related data acquired by the communication data acquisition unit 121 and stores it in the time-series data storage unit 111A. Specifically, the filtering unit 127A extracts the data on the transmission time of the first request of the test scenario or the data on the transmission time of the TCP connection request from the data related to the communication acquired by the communication data acquisition unit 121, and sets the time series data. Store in the storage unit 111.
  • the operation of the filtering unit 127A to extract the data related to the first request of the test scenario or the TCP connection request is the same as that in the second embodiment, and thus the description thereof is omitted. Further, the operation of the load evaluation device 1 according to the third embodiment for performing the suitability test of the request interval or request rate distribution is the same as that of the first embodiment, and thus the description thereof is omitted.
  • the time-series data storage unit 111 stores only some data extracted by the filtering unit 127. Thereby, in the load evaluation device 1 according to the third embodiment, the storage capacity of the time-series data storage unit 111 can be saved.
  • FIG. 19 is a configuration diagram of the load evaluation device 1 according to the fourth embodiment.
  • the load evaluation device 1 includes a time-series data storage unit 111, an observation frequency distribution creation unit 123, an expected frequency distribution acquisition unit 124, and a fitness test unit 126. .
  • the time-series data storage unit 111 stores time-series data of request transmission times transmitted from the load generation device to the test target system.
  • the observation frequency distribution creation unit 123 calculates a request rate that is the number of requests transmitted per unit time based on the time series data, and based on the class data that is the total section width for creating the frequency distribution data. The request rates are totaled, and frequency distribution data of the request rate is created.
  • the expected frequency distribution acquisition unit 124 acquires expected frequency distribution data which is frequency distribution data expected when the request rate distribution is based on a desired probability distribution.
  • the goodness-of-fit test unit 126 uses the observed frequency distribution data and the expected frequency distribution data to perform a goodness-of-fit test on the observed frequency distribution data with the desired probability distribution.
  • the load evaluation device 1 of the present embodiment can evaluate whether the load test execution device 2 can generate a desired load for the test target system.
  • “whether the load test execution device can generate a desired load for the test target system” includes “whether the request transmitted by the load test execution device satisfies a predetermined distribution”.
  • the load test execution device 2 is an example of the “load generation device” described in the claims.
  • each virtual user generated by the load test execution device 2 can be regarded as a “load generation device” described in the claims.
  • the load test execution device 2 may separately provide an agent in which only the request transmission / reception function is mounted separately from the load test execution device 2.
  • the agent that transmits / receives a request to / from the test target system 3 corresponds to the “load generation device” described in the claims.
  • the present invention is suitable as an evaluation apparatus or system for a load test apparatus for verifying performance and behavior when a predetermined load is applied to a server.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

The present invention provides an information processing device that is capable of evaluating whether a desired load is being generated for application to a system that is a target for testing. The information processing device is provided with: a means that calculates the request rate per unit time on the basis of time series data for requests sent from a load generation device, and aggregates the request rates on the basis of predetermined class data in order to create frequency distribution data; a means that acquires expected frequency distribution data, said data being the frequency distribution data that is expected for a case in which it is assumed that the distribution of request rates follows a desired probability distribution; and a means that uses observed frequency distribution data that has been created and the expected frequency distribution data that has been acquired in order to carry out goodness-of-fit testing of the expected frequency distribution data with the probability distribution of the observed frequency distribution data.

Description

負荷評価を実行する情報処理装置及び負荷評価方法Information processing apparatus and load evaluation method for executing load evaluation
 本発明は、システムやサーバ等のための負荷テストに関し、テスト対象に対して所望の負荷を生成できているかを評価する技術に関する。 The present invention relates to a load test for a system or a server, and relates to a technique for evaluating whether a desired load can be generated for a test target.
 システムやサーバ等の高負荷時の挙動を確認する方法の1つに、負荷テストとよばれる方法が知られている。その負荷テストは、対象となるシステムやサーバ等に擬似的に負荷をかける。 A method called a load test is known as one of the methods for confirming the behavior of a system or server under high load. In the load test, a simulated load is applied to the target system or server.
 多くの場合、負荷テストは、負荷テストツールとよばれるソフトウェアを用いて、負荷テスト実施装置により実施される。負荷テスト実施装置は、テスト対象システムに対してリクエストを送信することにより、テスト対象システムに負荷をかける。テスト対象システムは、負荷テスト実施装置から受け取ったリクエストを処理して、負荷テスト実施装置に応答する。 In many cases, a load test is performed by a load test execution device using software called a load test tool. The load test execution device applies a load to the test target system by transmitting a request to the test target system. The test target system processes the request received from the load test execution device and responds to the load test execution device.
 テスト対象システムとしては、例えばオンラインショッピングサイトのサーバが挙げられる。以下、オンラインショッピングサイトの本番運用時に、サーバにどのような負荷が掛かるかを説明する。 As the test target system, for example, a server of an online shopping site can be cited. Hereinafter, what kind of load is applied to the server during the actual operation of the online shopping site will be described.
 オンラインショッピングサイトの顧客は不特定多数存在している。それぞれの顧客は、オンラインショッピングサイトに到着すると、リクエストの送信及びリクエストに対する応答の受信を繰り返す。顧客がサーバに送信するリクエストは、例えば、商品の閲覧や選択、カートの確認、商品送付先やクレジットカード番号の入力等である。顧客は、自身が送信したリクエストに対する応答(例えば、商品を説明するテキスト、商品の画像、商品の動画等)を受け取る。その後、その顧客は、表示された商品の画面を確認したり、商品を選択するために考えたりして、再び次のリクエストを送信する。 There are an unspecified number of customers on the online shopping site. When each customer arrives at the online shopping site, the customer repeatedly sends a request and receives a response to the request. The request transmitted by the customer to the server is, for example, browsing or selecting a product, checking a cart, inputting a product delivery destination or a credit card number, and the like. The customer receives a response (for example, text describing the product, an image of the product, a video of the product, etc.) to the request transmitted by the customer. After that, the customer confirms the screen of the displayed product or thinks to select the product, and transmits the next request again.
 顧客は、リクエストの送信と応答の受信とを一通り繰り返して、目的の商品を購入するなどの目的を達成すると、オンラインショッピングのサイトの閲覧を終了する。 The customer repeats the transmission of the request and the reception of the response, and completes the browsing of the online shopping site when the purpose of purchasing the target product is achieved.
 オンラインショッピングサイトのように、不特定多数の顧客からリクエストを受け取るシステムにおいては、リクエストの到着間隔は指数分布に従うことが知られている。ここで、到着間隔は、あるリクエストが到着してから次のリクエストが到着するまでの時間間隔である。そしてリクエストの到着間隔が指数分布に従うとき、リクエストの到着率(単位時間当たりリクエスト到着数)はポアソン分布に従うことが知られている。 In a system that receives requests from an unspecified number of customers, such as an online shopping site, it is known that the arrival interval of requests follows an exponential distribution. Here, the arrival interval is a time interval from the arrival of a certain request to the arrival of the next request. It is known that when the request arrival interval follows an exponential distribution, the request arrival rate (the number of request arrivals per unit time) follows a Poisson distribution.
 特許文献1は、負荷テスト実施装置の一例を開示する。特許文献1が開示する負荷テスト実施装置では、負荷テスト実施装置のオペレータが、負荷テストを行う際の性能目標として、テスト対象システムが処理すべき単位時間当たりのリクエストの処理件数を入力する。その負荷テスト実施装置は、オペレータにより入力された性能目標を満たすように、負荷テスト実施の際の各種パラメタを自動的に調整してリクエストを送信する。 Patent Document 1 discloses an example of a load test execution device. In the load test execution device disclosed in Patent Document 1, the operator of the load test execution device inputs the number of requests processed per unit time to be processed by the test target system as a performance target when performing the load test. The load test execution device automatically adjusts various parameters at the time of performing the load test so as to satisfy the performance target input by the operator, and transmits the request.
 特許文献2は、サーバの負荷容量を決定する方法を開示する。特許文献2が開示する方法は、以下のステップを含む。第1のステップでは、その方法は、仮想ユーザの動作をシミュレートし、クライアントからのリクエストをサーバに送信する。第2のステップでは、その方法は、サーバの性能指標であるメトリックを測定する。第3のステップでは、その方法は、測定したメトリックを所定値と比較し、メトリックが所定値の所定範囲内になるまで、メトリックと所定値との差に基づいて仮想ユーザ数を変更する。 Patent Document 2 discloses a method for determining the load capacity of a server. The method disclosed in Patent Document 2 includes the following steps. In the first step, the method simulates the behavior of the virtual user and sends a request from the client to the server. In the second step, the method measures a metric that is a performance indicator of the server. In a third step, the method compares the measured metric with a predetermined value and changes the number of virtual users based on the difference between the metric and the predetermined value until the metric is within a predetermined range of the predetermined value.
 特許文献3は、分布適合度検定装置を開示する。特許文献3が開示する分布適合度検定装置は、集計区間決定手段、集計手段及び適合度検定手段を含む。集計区間決定手段は、測定したデータを集計する集計区間の幅を期待度数が等確率になるように決定する。集計手段は、決定した各集計区間のデータ数を集計する。適合度検定手段は、集計データと確率分布との適合度検定を行う。 Patent Document 3 discloses a distribution suitability test apparatus. The distribution suitability test apparatus disclosed in Patent Document 3 includes a totaling section determination unit, a totaling unit, and a suitability test unit. The tabulation section determining means determines the width of the tabulation section in which the measured data is tabulated so that the expected frequency has an equal probability. The totaling means totals the number of data of each determined total section. The fitness test means performs a fitness test between the aggregated data and the probability distribution.
 特許文献4は、カイ二乗判定を用いて、稼働状況の異常を検出する技術を開示する。 Patent Document 4 discloses a technique for detecting an abnormality in the operating state using chi-square determination.
 特許文献5は、度数分布を生成する技術を開示する。 Patent Document 5 discloses a technique for generating a frequency distribution.
特開2006―31178号公報JP 2006-31178 A 特開2010―244528号公報JP 2010-244528 A 特許4349216号公報Japanese Patent No. 4349216 特開2011-034208号公報JP 2011-034208 A 特開2010-257227号公報JP 2010-257227 A
 本番運用時に掛かる負荷を正確に再現していない負荷テストの結果を、信頼することはできない。そのため負荷テスト実施装置には、テスト対象システムの本番運用時に掛かる負荷を、正確に再現することが求められる。 ∙ You cannot trust the results of a load test that does not accurately reproduce the load that is applied during production operations. Therefore, the load test execution device is required to accurately reproduce the load applied during the actual operation of the test target system.
 ここで、負荷テスト実施装置がテスト対象システムの本番運用時に掛かる負荷を正確に再現するためには、少なくとも以下の2つの要件を満たしてリクエストを送信することが必要である。その第1の要件は、単位時間当たりに送信する平均リクエスト数が所望の値を満たしていることである。その第2の要件は、所定の分布に従った時間間隔でリクエストを送信すること(単位時間当たりに送信するリクエスト数が、所定の分布に従っているとも言える)である。 Here, in order for the load test execution device to accurately reproduce the load applied during the actual operation of the test target system, it is necessary to satisfy at least the following two requirements and transmit the request. The first requirement is that the average number of requests transmitted per unit time satisfies a desired value. The second requirement is that requests are transmitted at time intervals according to a predetermined distribution (it can be said that the number of requests transmitted per unit time follows a predetermined distribution).
 特許文献1の負荷テスト実施装置は、負荷テスト実施装置が送信するリクエストが第1の要件を満たしているか否かについての評価を行っていた。しかし、その負荷テスト実施装置は、第2の要件を満たしているかどうかを評価していなかった。 The load test execution device of Patent Document 1 has evaluated whether a request transmitted by the load test execution device satisfies the first requirement. However, the load test execution device has not evaluated whether the second requirement is satisfied.
 負荷テスト実施装置が送信するリクエストが、第2の要件を満たしているか否かは、負荷テストの結果の信頼性にとって重要である。なぜならば、リクエストの到着の時間間隔が一定である場合と、一定でない場合とでは、たとえテスト対象システムのリクエスト処理性能及び単位時間当たり平均リクエスト到着数が等しくても、応答時間が異なるからである。ここで、応答時間は、テスト対象システムにリクエストが到着してから、負荷テスト実施装置が応答を受信するまでに必要な時間である。 Whether the request transmitted by the load test execution device satisfies the second requirement is important for the reliability of the load test result. This is because the response time differs between the case where the request arrival time interval is constant and the case where the request arrival time is not constant, even if the request processing performance of the system under test and the average number of request arrivals per unit time are equal. . Here, the response time is a time required from when the request arrives at the test target system until the load test execution device receives the response.
 一般に、リクエストの到着時間間隔が一定でない場合は、リクエストの到着時間間隔が一定である場合よりも、応答時間は長くなる傾向にある。これは、リクエストが一定でない時間間隔で送信される場合に、リクエストの到着間隔が短い場合が続くと、テスト対象システムに多数のリクエストが到着することによって待ち行列が発生するためである。 Generally, when the request arrival time interval is not constant, the response time tends to be longer than when the request arrival time interval is constant. This is because when a request is transmitted at a non-constant time interval and a request arrives at a short interval, a queue is generated due to a large number of requests arriving at the test target system.
 リクエストに対する応答時間を過小評価しないためにも、負荷テスト実施装置は一定の時間間隔ではなく、所定の分布に従った時間間隔でリクエストを送信する必要がある。しかし、これまで、負荷テスト実施装置が送信するリクエストが所定の分布を満たしているか否かを評価する装置は知られていなかった。 In order not to underestimate the response time to the request, the load test execution device needs to transmit the request not at a constant time interval but at a time interval according to a predetermined distribution. However, until now, no device has been known for evaluating whether or not a request transmitted by the load test execution device satisfies a predetermined distribution.
 本願発明では、負荷テスト実施装置が、テスト対象のシステムに対して所望の負荷を生成できているか、を評価することができる負荷評価を実行する情報処理装置、負荷評価方法及びプログラムを提供することを目的とする。 The present invention provides an information processing apparatus, a load evaluation method, and a program for executing a load evaluation capable of evaluating whether a load test execution apparatus can generate a desired load for a test target system. With the goal.
 上述した課題を解決する第1の発明は、負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段と、前記時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成する観測度数分布作成手段と、前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する期待度数分布取得手段と、前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行う適合度検定手段と、を備える情報処理装置である。 A first invention for solving the above-described problem is based on time-series data storage means for storing time-series data of a request transmission time transmitted from a load generation device to a test target system, based on the time-series data. The request rate, which is the number of requests transmitted per unit time, is calculated, the request rate is aggregated based on the class data, which is the aggregate interval for creating the frequency distribution data, and the frequency distribution data of the request rate is obtained. Observation frequency distribution creation means to create, expected frequency distribution acquisition means to obtain expected frequency distribution data which is expected frequency distribution data assuming that the distribution of the request rate follows a desired probability distribution, and the observed frequency Using the distribution data and the expected frequency distribution data, the degree-of-fit test of the observed frequency distribution data with the desired probability distribution And goodness-of-fit test means for performing an information processing apparatus including a.
 上述した課題を解決する第2の発明は、負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段と、前記時系列データに基づいて、リクエストの送信時間間隔を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて集計し、リクエストの送信時間間隔の度数分布データを作成する観測度数分布作成手段と、前記リクエストの送信時間間隔の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する期待度数分布取得手段と、前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行う適合度検定手段と、を備える情報処理装置である。 A second invention for solving the above-mentioned problem is based on time-series data storage means for storing time-series data of the transmission time of a request transmitted from the load generation device to the test target system, and based on the time-series data. , An observation frequency distribution creating means for calculating a request transmission time interval, totaling based on class data that is a total interval width for creating frequency distribution data, and creating frequency distribution data of a request transmission time interval; Expected frequency distribution acquisition means for acquiring expected frequency distribution data that is expected frequency distribution data assuming that the distribution of the transmission time intervals of the request follows a desired probability distribution, the observed frequency distribution data, and the expected frequency A fitness test means for performing a fitness test of the observed frequency distribution data with the desired probability distribution using the distribution data; It is obtain the information processing apparatus.
 上述した課題を解決する第3の発明は、負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段を備える装置の制御方法であって、前記時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成するステップと、前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得するステップと、前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行うステップと、を実行するよう制御する前記装置の制御方法である。 A third invention for solving the above-described problem is a method of controlling an apparatus including time-series data storage means for storing time-series data of a request transmission time transmitted from a load generation apparatus to a test target system. Based on the time series data, the request rate that is the number of requests transmitted per unit time is calculated, and the request rate is totaled based on the class data that is the total interval width for creating the frequency distribution data. Generating frequency distribution data of request rate, acquiring expected frequency distribution data which is frequency distribution data expected when the distribution of request rate follows a desired probability distribution, and the observed frequency Using the distribution data and the expected frequency distribution data, the degree of fitness of the observed frequency distribution data with the desired probability distribution A control method for the device for controlling to execute a step of performing a constant, a.
 上述した課題を解決する第4の発明は、負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段を備えるコンピュータに、前記時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成する観測度数分布作成処理、前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する期待度数分布取得処理、前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行う適合度検定処理、を実行させるプログラムを記録した不揮発性記録媒体である。 According to a fourth aspect of the present invention for solving the above-described problem, a computer comprising time-series data storage means for storing time-series data of the transmission time of a request transmitted from the load generation device to the test target system, Based on, the request rate that is the number of requests sent per unit time is calculated, the request rate is aggregated based on the class data that is the aggregate interval width for creating the frequency distribution data, and the frequency of the request rate Observation frequency distribution creation processing for creating distribution data, expected frequency distribution acquisition processing for obtaining expected frequency distribution data that is expected frequency distribution data assuming that the distribution of the request rate follows a desired probability distribution, the observation Using the frequency distribution data and the expected frequency distribution data, the desired probability distribution for the observed frequency distribution data. Goodness-of-fit test process for goodness-of-fit test with a non-volatile recording medium recording a program for executing the.
 負荷テスト実施装置が、テスト対象のシステムに対して所望の負荷を生成できているかを評価することができる負荷評価を実行する情報処理装置、負荷評価方法及びプログラムを提供することができる。ここで、「負荷テスト実施装置が、テスト対象のシステムに対して所望の負荷を生成できているか」は、「負荷テスト実施装置が送信するリクエストが所定の分布を満たしているか」を含む。 It is possible to provide an information processing apparatus, a load evaluation method, and a program for executing a load evaluation that can evaluate whether the load test execution apparatus can generate a desired load on the test target system. Here, “whether the load test execution device can generate a desired load for the test target system” includes “whether the request transmitted by the load test execution device satisfies a predetermined distribution”.
図1は、第1の実施形態に係る負荷評価装置1を含むネットワーク構成図である。FIG. 1 is a network configuration diagram including a load evaluation device 1 according to the first embodiment. 図2は、第1の実施形態に係る負荷評価装置1の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of the load evaluation device 1 according to the first embodiment. 図3は、時系列データ記憶部111が記憶する時系列データの一例である。FIG. 3 is an example of time-series data stored in the time-series data storage unit 111. 図4は、カイ二乗分布データ記憶部112が記憶するデータの一例である。FIG. 4 is an example of data stored in the chi-square distribution data storage unit 112. 図5は、階級取得部122が取得する階級データの一例である。FIG. 5 is an example of class data acquired by the class acquisition unit 122. 図6は、リクエスト率に関する観測度数分布データの一例である。FIG. 6 is an example of observation frequency distribution data regarding the request rate. 図7は、期待度数分布データの一例である。FIG. 7 is an example of expected frequency distribution data. 図8は、第1の実施形態に係る負荷評価装置1の動作を説明するフローチャートである。FIG. 8 is a flowchart for explaining the operation of the load evaluation device 1 according to the first embodiment. 図9は、観測度数と期待度数を整理した例である。FIG. 9 is an example in which observed frequencies and expected frequencies are arranged. 図10は、リクエスト率に関する観測度数分布データの一例である。FIG. 10 is an example of observation frequency distribution data regarding the request rate. 図11は、第2の実施形態に係る負荷テスト実施装置2の構成を示すブロック図である。FIG. 11 is a block diagram illustrating a configuration of the load test execution device 2 according to the second embodiment. 図12は、閉じたモデルにおける仮想ユーザの典型的振る舞いを説明する図である。FIG. 12 is a diagram illustrating typical behavior of a virtual user in a closed model. 図13は、開いたモデルにおける仮想ユーザの典型的振る舞いを説明する図である。FIG. 13 is a diagram illustrating typical behavior of a virtual user in an open model. 図14は、第2の実施形態に係る負荷評価装置1の構成を示すブロック図である。FIG. 14 is a block diagram illustrating a configuration of the load evaluation device 1 according to the second embodiment. 図15は、第2の実施形態に係る負荷評価装置1の動作を説明するフローチャートである。FIG. 15 is a flowchart for explaining the operation of the load evaluation device 1 according to the second embodiment. 図16は、第3の実施形態に係る負荷評価装置1の構成を示すブロック図である。FIG. 16 is a block diagram illustrating a configuration of the load evaluation device 1 according to the third embodiment. 図17は、指数分布の確率密度関数の一例である。FIG. 17 is an example of the probability density function of the exponential distribution. 図18は、ポアソン分布の確率質量関数の一例である。FIG. 18 is an example of a Poisson distribution probability mass function. 図19は、第4の実施形態に係る負荷評価装置1の構成を示すブロック図である。FIG. 19 is a block diagram illustrating a configuration of the load evaluation device 1 according to the fourth embodiment. 図20は、第1の実施形態に係る負荷評価装置1を実現するコンピュータ700のハードウェア構成を示す図である。FIG. 20 is a diagram illustrating a hardware configuration of a computer 700 that implements the load evaluation device 1 according to the first embodiment.
<<第1の実施形態>>
<構成の説明>
 図1は、第1の実施形態に係る負荷評価装置(情報処理装置とも呼ばれる)1を含むネットワーク構成図である。
<< First Embodiment >>
<Description of configuration>
FIG. 1 is a network configuration diagram including a load evaluation device (also referred to as an information processing device) 1 according to the first embodiment.
 負荷評価装置1は、ネットワーク4を介して負荷テスト実施装置2及びテスト対象システム3と互いに通信可能に接続されている。 The load evaluation device 1 is connected to the load test execution device 2 and the test target system 3 via the network 4 so as to communicate with each other.
 負荷テスト実施装置2(負荷生成装置とも呼ばれる)は、テスト対象システム3に対して負荷テストを実施する装置である。負荷テスト実施装置2は、テスト対象システム3との間にTCP(Transmission Control Protocol)接続を確立し、テスト対象システム3に対してリクエストを送信し続けることにより負荷をかける。 The load test execution device 2 (also referred to as a load generation device) is a device that performs a load test on the test target system 3. The load test execution device 2 establishes a TCP (Transmission Control Protocol) connection with the test target system 3 and applies a load by continuing to transmit requests to the test target system 3.
 テスト対象システム3は負荷テストの対象となるサーバやシステム等である。テスト対象システム3は、負荷テスト実施装置2から受け取ったリクエストを処理して負荷テスト実施装置2に応答する。 The test target system 3 is a server or system that is a target of the load test. The test target system 3 processes the request received from the load test execution device 2 and responds to the load test execution device 2.
 テスト対象システム3が、到着したリクエストを問題なく全て処理できている場合、負荷テスト実施装置2が送信するリクエストの送信時間間隔は、テスト対象システム3から見るとリクエストの到着時間間隔と等しくなる。また、テスト対象システム3が、到着したリクエストを問題なく全て処理できている場合、負荷テスト実施装置2が送信するリクエストの単位時間あたり平均送信数(リクエスト送信率)は、テスト対象システム3から見るとリクエストの単位時間あたり平均到着数(リクエスト到着率)と等しくなる。 When the test target system 3 can process all the received requests without any problem, the transmission time interval of the request transmitted by the load test execution device 2 is equal to the arrival time interval of the request when viewed from the test target system 3. When the test target system 3 can process all the arrived requests without any problem, the average number of requests per unit time (request transmission rate) of the request transmitted by the load test execution device 2 is viewed from the test target system 3. And the average number of requests received per unit time (request arrival rate).
 これ以降、リクエストの送信間隔と到着間隔とを区別せずにリクエスト間隔とよぶ。また、リクエスト送信率やリクエスト到着率をリクエスト率とよぶことにする。リクエスト送信率やリクエスト到着率の値は、単位時間あたりのリクエスト処理数を表すスループットの値と等しくなる。 Hereafter, it is called the request interval without distinguishing between the request transmission interval and the arrival interval. Also, the request transmission rate and the request arrival rate are called request rates. The values of the request transmission rate and the request arrival rate are equal to the throughput value indicating the number of request processes per unit time.
 負荷評価装置1は、負荷テスト実施装置2とテスト対象システム3との間の通信データのログを取得する。そして、負荷評価装置1は、その取得したログを利用して、リクエスト間隔またはリクエスト率を算出する。負荷評価装置1は、その算出したリクエスト間隔またはリクエスト率の分布が、負荷テスト実施装置2のオペレータが希望する確率分布に適合しているか否かを評価する。 The load evaluation device 1 acquires a log of communication data between the load test execution device 2 and the test target system 3. And the load evaluation apparatus 1 calculates a request interval or a request rate using the acquired log. The load evaluation device 1 evaluates whether or not the calculated request interval or request rate distribution matches the probability distribution desired by the operator of the load test execution device 2.
 本実施形態においては、テスト対象システム3として、例えばオンラインショッピングサイトのように、不特定多数の顧客からリクエストを受け取るシステムを想定している。このようなシステムの本番運用時には、リクエスト間隔は指数分布やパレート分布といった確率分布に従う乱数となることが知られている。 In the present embodiment, it is assumed that the test target system 3 is a system that receives requests from an unspecified number of customers, such as an online shopping site. It is known that during the actual operation of such a system, the request interval is a random number according to a probability distribution such as an exponential distribution or a Pareto distribution.
 指数分布の確率密度関数の例を図17に示す。図17において、横軸はリクエスト間隔、縦軸は確率を表す。指数分布は、パラメタλをもつ確率分布であり、期待値(平均値)は1/λとなる。リクエスト間隔が1/λのとき、その逆数λは、毎秒のリクエスト数(リクエスト率)を表す。 An example of the probability density function of the exponential distribution is shown in FIG. In FIG. 17, the horizontal axis represents the request interval, and the vertical axis represents the probability. The exponential distribution is a probability distribution having a parameter λ, and the expected value (average value) is 1 / λ. When the request interval is 1 / λ, its reciprocal λ represents the number of requests per second (request rate).
 例えば、平均リクエスト間隔が1/20(=0.05)秒のとき、平均リクエスト率は20[リクエスト/秒]である。リクエスト間隔が指数分布に従うとき、リクエスト率はポアソン分布に従うことが知られている。 For example, when the average request interval is 1/20 (= 0.05) seconds, the average request rate is 20 [requests / second]. When the request interval follows an exponential distribution, the request rate is known to follow a Poisson distribution.
 ポアソン分布の確率質量関数の例を図18に示す。図の横軸はリクエスト率、縦軸は確率を表す。確率質量関数とは、離散的な確率分布に対する確率密度関数である。リクエスト率は整数しかとらないため、その確率分布は確率質量関数として表現される。 Fig. 18 shows an example of the Poisson distribution probability mass function. The horizontal axis in the figure represents the request rate, and the vertical axis represents the probability. A probability mass function is a probability density function for a discrete probability distribution. Since the request rate takes only an integer, the probability distribution is expressed as a probability mass function.
 リクエスト間隔やリクエスト率が一定(定数)でなく、図17や図18のような確率分布に従う場合、リクエスト到着間隔が短いときと長いときとが、あるいは単位時間あたり到着リクエスト数が多いときと少ないときとが混在することになる。そして、テスト対象システムに多数のリクエストが到着するときは、待ち行列が発生し、応答時間が伸びる可能性が高まる。 When the request interval and the request rate are not constant (constant) and follow the probability distribution as shown in FIG. 17 or 18, the request arrival interval is short or long, or the number of arrival requests per unit time is small. Time will be mixed. When a large number of requests arrive at the test target system, a queue is generated and the response time is likely to increase.
 一般に、平均リクエスト間隔が同一であっても、リクエスト間隔に図17や図18のような変動がある場合の方が、リクエスト間隔が一定の場合よりも、応答時間が長くなる。 Generally, even if the average request interval is the same, the response time is longer when the request interval varies as shown in FIGS. 17 and 18 than when the request interval is constant.
 上述したように、テスト対象システム3の本番運用時には、リクエスト間隔やリクエスト率には変動があることが経験的に知られている。そのため、テスト対象システム3の本番運用時に掛かる負荷を正確に再現するためには、負荷テスト実施装置2が送信するリクエスト間隔も、確率分布等を用いて負荷の変動を表現するのが合理的である。 As described above, it is empirically known that the request interval and the request rate vary during the actual operation of the test target system 3. Therefore, in order to accurately reproduce the load applied during the actual operation of the test target system 3, it is reasonable to express the load fluctuation using the probability distribution or the like for the request interval transmitted by the load test execution device 2 as well. is there.
 逆に、負荷テスト実施装置2が送信するリクエスト間隔がオペレータの意図どおりのものでなければ、負荷テストの結果得られるスループットの値や応答時間の値は信頼できない。負荷テストの結果の信頼性を担保するには、リクエスト間隔が負荷テスト実施装置2のオペレータの意図する分布にしたがっていることを評価する必要がある。 Conversely, if the request interval transmitted by the load test execution device 2 is not as intended by the operator, the value of the throughput and the response time obtained as a result of the load test are not reliable. In order to guarantee the reliability of the result of the load test, it is necessary to evaluate that the request interval follows the distribution intended by the operator of the load test execution device 2.
 図2は、本発明の第1の実施形態に係る負荷評価装置1の構成を示すブロック図である。負荷評価装置1は、記憶部110と処理部120と通信部130と入力部140と出力部150とを備えて構成されるコンピュータである。 FIG. 2 is a block diagram showing the configuration of the load evaluation device 1 according to the first embodiment of the present invention. The load evaluation device 1 is a computer that includes a storage unit 110, a processing unit 120, a communication unit 130, an input unit 140, and an output unit 150.
 記憶部110は、時系列データ記憶部111とカイ二乗分布データ記憶部112とを含んで構成される。 The storage unit 110 includes a time series data storage unit 111 and a chi-square distribution data storage unit 112.
 時系列データ記憶部111は、負荷テスト実施装置2とテスト対象システム3との通信に関する時系列データを記憶している。時系列データは、少なくとも、負荷テスト実施装置2からテスト対象システム3に対して送信されたリクエストの送信時刻のデータを含む。また、時系列データは、負荷テスト実施装置2からテスト対象システム3に対するTCP接続要求やTCP切断要求等を含んでいてもよい。 The time series data storage unit 111 stores time series data related to communication between the load test execution device 2 and the test target system 3. The time series data includes at least data on the transmission time of the request transmitted from the load test execution device 2 to the test target system 3. The time series data may include a TCP connection request, a TCP disconnection request, and the like from the load test execution device 2 to the test target system 3.
 図3は、時系列データ記憶部111が記憶するデータの一例を示す図である。図3に示されるデータは、負荷テスト実施装置2とテスト対象システム3との通信に関するログ情報を表す。 FIG. 3 is a diagram illustrating an example of data stored in the time-series data storage unit 111. The data shown in FIG. 3 represents log information related to communication between the load test execution device 2 and the test target system 3.
 図3中の最左列は行番号を表す。左から2番目の列はログの採取を開始してからの経過時刻(秒)を表す。左から3~5番目の列の「S -> D」におけるS及びDは、ホストのIP(Internet Protocol)アドレスを表している。そして、その「S -> D」は、SからDに対してデータが送信されたことを意味する。6番目の列は通信プロトコルを表す。この例の「TCP」は、TCPプロトコルが用いられていることを示している。10番目の列は、TCPパケットの種類を表し、11番目以降の列は、HTTP(HyperText Transfer Protocol)プロトコルによって送信された内容を表している。 (The leftmost column in Fig. 3 represents the row number.) The second column from the left represents the elapsed time (seconds) since the start of log collection. S and D in “S-> D” in the third to fifth columns from the left represent the IP (Internet Protocol) address of the host. “S そ の-> D” means that data is transmitted from S to D. The sixth column represents the communication protocol. “TCP” in this example indicates that the TCP protocol is used. The tenth column represents the type of the TCP packet, and the eleventh and subsequent columns represent the contents transmitted by the HTTP (HyperText Transfer Protocol) protocol.
 図3に示す時系列データ記憶部111の例では、例えば行番号10050は、IPアドレス192.168.0.1で識別されるマシンから、IPアドレス192.168.0.2で識別されるマシン上の/some.phpというコンテンツに対して、ログの採取を開始してから21.256673秒後の時刻にGETリクエストが送信されていることを表す。このように時系列データ記憶部111は、リクエストの送信時刻の時系列データを記憶している。 In the example of the time-series data storage unit 111 shown in FIG. 3, for example, the line number 10050 is changed from the machine identified by the IP address 192.168.0.1 to /some.com on the machine identified by the IP address 192.168.0.2. This indicates that a GET request is transmitted at a time 21.256673 seconds after the start of log collection for the content “php”. Thus, the time-series data storage unit 111 stores time-series data of request transmission times.
 カイ二乗分布データ記憶部112は、カイ二乗分布の値を示すカイ二乗分布表またはカイ二乗分布の値を算出するための算出式を記憶する。そのカイ二乗分布の値は、後述するカイ二乗検定を行なう際に用いられる。図4は、カイ二乗分布データ記憶部112が記憶するカイ二乗分布表の一例を示す。カイ二乗分布表の詳細は後述する。 The chi-square distribution data storage unit 112 stores a chi-square distribution table indicating the value of the chi-square distribution or a calculation formula for calculating the value of the chi-square distribution. The value of the chi-square distribution is used when performing a chi-square test described later. FIG. 4 shows an example of a chi-square distribution table stored in the chi-square distribution data storage unit 112. Details of the chi-square distribution table will be described later.
 処理部120は、通信データ取得部121と、階級取得部122と、観測度数分布作成部123と、期待度数分布取得部124と、優位水準取得部125と、適合度検定部126とを含んで構成される。 The processing unit 120 includes a communication data acquisition unit 121, a class acquisition unit 122, an observation frequency distribution creation unit 123, an expected frequency distribution acquisition unit 124, a superiority level acquisition unit 125, and a fitness test unit 126. Composed.
 通信データ取得部121は、負荷テスト実施装置2とテスト対象サーバ3との通信に関するデータを取得する。次に、通信データ取得部121は、取得した通信に関するデータを時系列データ記憶部111に記憶する。ここで、通信に関するデータとは、具体的には、リクエストの送信や、TCP接続要求、TCP切断要求を指す。 The communication data acquisition unit 121 acquires data related to communication between the load test execution device 2 and the test target server 3. Next, the communication data acquisition unit 121 stores the acquired data related to communication in the time-series data storage unit 111. Here, the data related to communication specifically refers to request transmission, TCP connection request, and TCP disconnection request.
 階級取得部122は、「度数分布」の作成に必要な「階級データ」を、負荷評価装置1のオペレータから受け付ける。 The class acquisition unit 122 receives “class data” necessary for creating the “frequency distribution” from the operator of the load evaluation device 1.
 度数分布とは、ある性質や変量に対するサンプルデータ数の分布を表す。度数分布は頻度分布ともよばれる。このとき、サンプルデータを分類するためのある性質のクラスや変量の範囲(集計区間幅)を階級とよぶ。 The frequency distribution represents the distribution of the number of sample data for a certain property or variable. Frequency distribution is also called frequency distribution. At this time, a class of certain properties for classifying sample data and a range of variables (total section width) are called classes.
 階級データは、階級を定義するデータである。本実施形態に係る負荷評価装置1においては、負荷テスト実施装置2が送信したリクエスト間隔またはリクエスト率に関する区間の範囲を階級とする。 Class data is data that defines a class. In the load evaluation device 1 according to the present embodiment, the range of the interval related to the request interval or request rate transmitted by the load test execution device 2 is defined as a class.
 図5は、階級取得部122が取得する階級データの一例を示す図である。図5に示した階級データは、リクエスト率に関する階級データの一例であり、その内容は次のようなものである。本例では、7つの階級が設定される。尚、リクエスト率の「6~」は、「6以上」を表す。 FIG. 5 is a diagram illustrating an example of class data acquired by the class acquisition unit 122. The class data shown in FIG. 5 is an example of class data related to the request rate, and the contents thereof are as follows. In this example, seven classes are set. The request rate “6 to” represents “6 or more”.
 階級1: 0(リクエスト/秒)以上1(リクエスト/秒)未満
 階級2: 1(リクエスト/秒)以上2(リクエスト/秒)未満
 階級3: 2(リクエスト/秒)以上3(リクエスト/秒)未満
 階級4: 3(リクエスト/秒)以上4(リクエスト/秒)未満
 階級5: 4(リクエスト/秒)以上5(リクエスト/秒)未満
 階級6: 5(リクエスト/秒)以上6(リクエスト/秒)未満
 階級7: 6(リクエスト/秒)以上
 観測度数分布作成部123は、時系列データ記憶部111が記憶する時系列データからリクエスト率またはリクエスト間隔を算出する。次に、観測度数分布作成部123は、算出したリクエスト率またはリクエスト間隔を、階級取得部122が受け付けた階級データに基づいて集計し、「観測度数分布データ」を作成する。
Class 1: 0 (request / s) or more and less than 1 (request / s) Class 2: 1 (request / s) or more and less than 2 (requests / s) Class 3: 2 (requests / s) or more 3 (requests / s) Less than Class 4: 3 (request / second) or more and less than 4 (request / second) Class 5: 4 (request / second) or more and less than 5 (request / second) Class 6: 5 (request / second) or more 6 (request / second) ) Less than class 7: 6 (requests / second) or more The observation frequency distribution creating unit 123 calculates the request rate or the request interval from the time series data stored in the time series data storage unit 111. Next, the observation frequency distribution creation unit 123 aggregates the calculated request rate or request interval based on the class data received by the class acquisition unit 122 to create “observation frequency distribution data”.
 観測度数分布データとは、階級データの階級毎に、該階級の区分に該当する度数をカウントして、階級と度数とを対応付けたデータである。 The observed frequency distribution data is data in which the frequency corresponding to the classification of the class is counted for each class of the class data, and the class and the frequency are associated with each other.
 図6は、観測度数分布作成部123が作成したリクエスト率に関する観測度数分布データの一例を示す図である。図6に示す観測度数分布データは、観測度数(サンプルデータ数)の合計が100である。そして、その観測度数分布データは、階級取得部122が取得した階級データに従って集計されている。 FIG. 6 is a diagram illustrating an example of observation frequency distribution data regarding the request rate created by the observation frequency distribution creation unit 123. The observation frequency distribution data shown in FIG. 6 has a total of 100 observation frequencies (sample data numbers). The observation frequency distribution data is aggregated according to the class data acquired by the class acquisition unit 122.
 期待度数分布取得部124は、オペレータが意図する分布に観測度数分布が沿っているか否かを検定するための「期待度数分布データ」を取得、若しくは算出する。 The expected frequency distribution acquisition unit 124 acquires or calculates “expected frequency distribution data” for testing whether the observed frequency distribution is in line with the distribution intended by the operator.
 図7は、期待度数分布取得部124が取得する期待度数分布データの一例を示す図である。期待度数分布とは、観測値の分布が、オペレータが所望する確率分布に従うと仮定した場合に期待される度数分布である。ここで、観測値は、時系列データ取得部111が記憶する時系列データから分析される値である。 FIG. 7 is a diagram illustrating an example of expected frequency distribution data acquired by the expected frequency distribution acquisition unit 124. The expected frequency distribution is a frequency distribution expected when the observed value distribution is assumed to follow a probability distribution desired by the operator. Here, the observation value is a value analyzed from the time series data stored in the time series data acquisition unit 111.
 観測度数分布がリクエスト率に関する度数分布である場合、期待度数分布はポアソン分布に従う分布とする。図7に示す期待度数分布は、λ(期待値)が2のポアソン分布に基づき、期待度数分布の度数の合計が、観測度数分布の度数の合計と同じ値になるようにして算出された分布である。 If the observed frequency distribution is a frequency distribution related to the request rate, the expected frequency distribution is a distribution according to the Poisson distribution. The expected frequency distribution shown in FIG. 7 is a distribution calculated based on a Poisson distribution with λ (expected value) of 2 so that the total frequency of the expected frequency distribution is the same as the total frequency of the observed frequency distribution. It is.
 優位水準取得部125は、カイ二乗検定における有意水準の値をオペレータから取得する。有意水準の値は、例えば5%や1%といった確率値である。取得した有意水準の値は、後述するカイ二乗検定の際に用いられる。 The superiority level acquisition unit 125 acquires the value of the significance level in the chi-square test from the operator. The value of the significance level is a probability value such as 5% or 1%, for example. The acquired value of significance level is used in the later-described chi-square test.
 適合度検定部126は、観測度数分布作成部123が作成した観測度数分布データと、期待度数分布取得部124が取得した期待度数分布データとの適合度検定(カイ二乗検定)を行う。こうすることで、適合度検定部126は、負荷テスト実施装置2が送信するリクエストのリクエスト率またはリクエスト送信間隔が、負荷テスト実施装置2のオペレータの所望の分布に従っているか否かを評価する。 The goodness-of-fit test unit 126 performs a goodness-of-fit test (chi-square test) between the observed frequency distribution data created by the observed frequency distribution creation unit 123 and the expected frequency distribution data acquired by the expected frequency distribution acquisition unit 124. In this way, the suitability test unit 126 evaluates whether the request rate or request transmission interval of the request transmitted by the load test execution device 2 is in accordance with the distribution desired by the operator of the load test execution device 2.
 通信部300は、負荷テスト実施装置2及びテスト対象システム3と通信を行う。 The communication unit 300 communicates with the load test execution device 2 and the test target system 3.
 入力部400は、負荷評価装置1のオペレータからの入力を受け付ける。 The input unit 400 receives input from the operator of the load evaluation device 1.
 出力部500は、負荷評価装置1のオペレータに対して情報を出力する。
<ハードウェアの構成>
 負荷評価装置1の記憶部110は、RAM(Random Access Memory)やHDD(Hard Disk Drive)などを用いて実現することができる。処理部120が備える各手段は、負荷評価装置1が備えるCPU(Central Processing Unit)が、所定のプログラムやコードを実行することによって実現することができる。通信部130は、例えばOS(Operating System)が提供する機能を使ってアプリケーションプログラムがネットワークインターフェイスカード(NIC:Network Interface Card)を制御することによって実現することができる。入力部140は、例えばキーボードやマウスを用いて実現することができる。出力部150は、例えばディスプレイを用いて実現することができる。
The output unit 500 outputs information to the operator of the load evaluation device 1.
<Hardware configuration>
The storage unit 110 of the load evaluation device 1 can be realized using a RAM (Random Access Memory), an HDD (Hard Disk Drive), or the like. Each unit included in the processing unit 120 can be realized by a CPU (Central Processing Unit) included in the load evaluation device 1 executing a predetermined program or code. The communication unit 130 can be realized by an application program controlling a network interface card (NIC) using a function provided by an OS (Operating System), for example. The input unit 140 can be realized using, for example, a keyboard or a mouse. The output unit 150 can be realized using a display, for example.
 図20は、本実施形態における負荷評価装置1を実現するコンピュータ700のハードウェア構成を示す図である。 FIG. 20 is a diagram illustrating a hardware configuration of a computer 700 that implements the load evaluation device 1 according to the present embodiment.
 図20に示すように、コンピュータ700は、CPU(Central Processing Unit)701、記憶部702、記憶装置703、入力部704、出力部705及び通信部706を含む。更に、コンピュータ700は、外部から供給される記録媒体(または記憶媒体)707を含む。記録媒体707は、情報を非一時的に記憶する不揮発性記録媒体であってもよい。 As shown in FIG. 20, a computer 700 includes a CPU (Central Processing Unit) 701, a storage unit 702, a storage device 703, an input unit 704, an output unit 705, and a communication unit 706. Furthermore, the computer 700 includes a recording medium (or storage medium) 707 supplied from the outside. The recording medium 707 may be a non-volatile recording medium that stores information non-temporarily.
 CPU701は、オペレーティングシステム(不図示)を動作させて、コンピュータ700の、全体の動作を制御する。また、CPU701は、例えば記憶装置703に装着された記録媒体707から、プログラムやデータを読み込み、読み込んだプログラムやデータを記憶部702に書き込む。ここで、そのプログラムは、例えば、後述の図8、図15に示すフローチャートの動作をコンピュータ700に実行させるプログラムである。 The CPU 701 controls the overall operation of the computer 700 by operating an operating system (not shown). The CPU 701 reads a program and data from a recording medium 707 mounted on the storage device 703, for example, and writes the read program and data to the storage unit 702. Here, the program is, for example, a program that causes the computer 700 to execute operations of flowcharts shown in FIGS.
 そして、CPU701は、読み込んだプログラムに従って、また読み込んだデータに基づいて、図2に示す処理部120として各種の処理を実行する。 Then, the CPU 701 executes various processes as the processing unit 120 shown in FIG. 2 according to the read program and based on the read data.
 尚、CPU701は、通信網(不図示)に接続されている外部コンピュータ(不図示)から、記憶部702にプログラムやデータをダウンロードするようにしてもよい。 Note that the CPU 701 may download a program or data to the storage unit 702 from an external computer (not shown) connected to a communication network (not shown).
 記憶部702は、図2の記憶部120に対応してよい。 The storage unit 702 may correspond to the storage unit 120 in FIG.
 記憶装置703は、例えば、光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク及び半導体メモリであって、記録媒体707を含む。記憶装置703(記録媒体707)は、プログラムをコンピュータ読み取り可能に記憶する。また、記憶装置703は、データを記憶してもよい。記憶装置703は、図2の記憶部120に対応してよい。 The storage device 703 is, for example, an optical disk, a flexible disk, a magnetic optical disk, an external hard disk, and a semiconductor memory, and includes a recording medium 707. The storage device 703 (recording medium 707) stores the program in a computer-readable manner. The storage device 703 may store data. The storage device 703 may correspond to the storage unit 120 in FIG.
 入力部704は、図2の入力部140に対応してよい。 The input unit 704 may correspond to the input unit 140 in FIG.
 出力部705は、図2の出力部150対応してよい。 The output unit 705 may correspond to the output unit 150 in FIG.
 通信部706は、図2の通信部130に対応してよい。 The communication unit 706 may correspond to the communication unit 130 of FIG.
 以上説明したように、図2に示す負荷評価装置1の機能単位のブロックは、図20に示すハードウェア構成のコンピュータ700によって実現してよい。但し、コンピュータ700が備える各部の実現手段は、上記に限定されない。すなわち、コンピュータ700は、物理的に結合した1つの装置により実現されてもよいし、物理的に分離した2つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。 As described above, the functional unit block of the load evaluation apparatus 1 shown in FIG. 2 may be realized by the computer 700 having the hardware configuration shown in FIG. However, the means for realizing each unit included in the computer 700 is not limited to the above. In other words, the computer 700 may be realized by one physically coupled device, or may be realized by two or more physically separated devices connected by wire or wirelessly and by a plurality of these devices. .
 尚、上述のプログラムのコードを記録した記録媒体707が、コンピュータ700に供給され、CPU701は、記録媒体707に格納されたプログラムのコードを読み出して実行するようにしてもよい。あるいは、CPU701は、記録媒体707に格納されたプログラムのコードを、記憶部702、記憶装置703またはその両方に格納するようにしてもよい。すなわち、本実施形態は、コンピュータ700(CPU701)が実行するプログラム(ソフトウェア)を、一時的にまたは非一時的に、記憶する記録媒体707の実施形態を含む。
<動作の説明>
 次に、第1の実施形態に係る負荷評価装置1の動作について説明する。図8は、負荷評価装置1の動作を説明するフローチャートである。
A recording medium 707 in which the above-described program code is recorded may be supplied to the computer 700, and the CPU 701 may read and execute the program code stored in the recording medium 707. Alternatively, the CPU 701 may store the code of the program stored in the recording medium 707 in the storage unit 702, the storage device 703, or both. That is, the present embodiment includes an embodiment of a recording medium 707 that stores a program (software) executed by the computer 700 (CPU 701) temporarily or non-temporarily.
<Description of operation>
Next, the operation of the load evaluation device 1 according to the first embodiment will be described. FIG. 8 is a flowchart for explaining the operation of the load evaluation device 1.
 まず階級取得部122が、度数分布の作成に必要な階級のデータを取得する(S11)。階級取得部122は、例えば、図5に例示したようなリクエスト率またはリクエスト間隔に関する階級データを取得する。以下、階級取得部122がリクエスト率に関する階級データを受け付けたとして説明する。 First, the class acquisition unit 122 acquires class data necessary for creating the frequency distribution (S11). The class acquisition unit 122 acquires class data related to the request rate or the request interval as exemplified in FIG. Hereinafter, it is assumed that the class acquisition unit 122 has received class data related to the request rate.
 次に、観測度数分布作成部123は、階級取得部122からリクエスト率に関する階級データを取得する。続けて、観測度数分布作成部123は、時系列データ記憶部111に記憶されている時系列データに基づいて、リクエスト率を算出する。続けて、観測度数分布作成部123は、前記算出したリクエスト率を、階級取得部122から取得した階級データに基づいて集計し、リクエスト率に関する観測度数分布データを作成する(S12)。観測度数分布作成部123は、例えば、図6に示すようなリクエスト率の観測度数分布データを作成する。 Next, the observation frequency distribution creation unit 123 acquires class data related to the request rate from the class acquisition unit 122. Subsequently, the observation frequency distribution creation unit 123 calculates the request rate based on the time series data stored in the time series data storage unit 111. Subsequently, the observation frequency distribution creation unit 123 aggregates the calculated request rates based on the class data acquired from the class acquisition unit 122, and creates observation frequency distribution data regarding the request rate (S12). The observation frequency distribution creation unit 123 creates, for example, observation frequency distribution data having a request rate as shown in FIG.
 一方、期待度数分布取得部124は、観測値の分布がオペレータが所望する分布に従うと仮定した場合に期待される度数分布である、期待度数分布データを取得または作成する。例えば図7に示すような期待度数分布データを取得または作成する(S13)。 On the other hand, the expected frequency distribution acquisition unit 124 acquires or creates expected frequency distribution data that is a frequency distribution that is expected when the observed value distribution follows the distribution desired by the operator. For example, expected frequency distribution data as shown in FIG. 7 is acquired or created (S13).
 ここで、わかりやすさのため、観測度数分布と期待度数分布を改めて整理して示すと、図9のようになる。 Here, for the sake of clarity, the observed frequency distribution and the expected frequency distribution are shown again as shown in FIG.
 次に、優位水準取得部125は、有意水準の値をオペレータから取得する。優位水準取得部125は、例えば「5%」という有意水準の値を取得する(S14)。 Next, the superiority level acquisition unit 125 acquires a significant level value from the operator. The superiority level acquisition unit 125 acquires a value of a significance level of “5%”, for example (S14).
 適合度検定部126は、観測度数分布作成部123が作成した観測度数分布データと、期待度数分布取得部124が取得した期待度数分布データとの適合度検定を行う(S15)。 The goodness-of-fit test unit 126 performs a goodness-of-fit test between the observation frequency distribution data created by the observation frequency distribution creation unit 123 and the expected frequency distribution data acquired by the expected frequency distribution acquisition unit 124 (S15).
 適合度検定部126は、適合度検定に、統計学の分野でよく知られているカイ二乗検定を用いる。カイ二乗検定による適合度検定は、「観測された事象の頻度分布が、期待される頻度分布に適合している」という仮説を検定する手法である。例えば、有意水準5%の場合、観測事象と期待事象の差を基に算出されるカイ二乗値が5%未満の危険域に含まれていると、仮定は棄却され、適合していない可能性が高いとみなされる。逆に、カイ二乗値が5%未満の危険域に含まれていないときは、適合しているという仮定は採択され、適合している可能性が高いとみなされる。 The goodness-of-fit test unit 126 uses a chi-square test well known in the field of statistics for the goodness-of-fit test. The goodness-of-fit test based on the chi-square test is a technique for testing the hypothesis that “the frequency distribution of observed events matches the expected frequency distribution”. For example, if the significance level is 5% and the chi-square value calculated based on the difference between the observed event and the expected event is included in the danger zone of less than 5%, the assumption is rejected and may not be met. Is considered high. Conversely, if the chi-square value is not within the risk range of less than 5%, the assumption that it is met is adopted and it is considered likely that it is met.
 以下、具体的にカイ二乗検定を説明する。カイ二乗(χ)検定では、まず観測度数と期待度数の分布からカイ二乗値が算出される。階級iの観測度数をOi、期待度数をEiとしたとき、カイ二乗値は以下の式で算出される。 Hereinafter, the chi-square test will be specifically described. In the chi-square (χ 2 ) test, a chi-square value is first calculated from the distribution of the observed frequency and the expected frequency. When the observation frequency of class i is Oi and the expected frequency is Ei, the chi-square value is calculated by the following equation.
 χ=Σi((Oi-Ei)2/Ei)
 本例では、カイ二乗値={(15-13.5)/13.5}+{(27-27.1)/27.1}+{(29-27.1)/27.1}+{(13-18.0)/18.0}+{(6-9.02)/9.02}+{(5-3.61)/3.61}+{(5-1.66)/1.66}≒9.96、と算出される。次に、カイ二乗値が9.96となる確率がどれくらいかをカイ二乗分布表を基に算定する。図4は、カイ二乗分布表の一部を示している。カイ二乗分布表における自由度は、階級の数から1を減じた数字に対応する。つまり、本例の自由度は7-1=6である。これは、サンプルデータ数が100と決まっているため、6個の階級に対する度数が決まれば、残り1つの期待度数が決まってしまうということを意味している。図4のカイ二乗分布表は、自由度6のカイ二乗値に関して、次のことを示している。 
χ 2 = Σi ((Oi−Ei) 2 / Ei)
In this example, the chi-square value = {(15-13.5) 2 /13.5}Tasu{(27-27.1) 2 /27.1}Tasu{(29-27.1) 2/27. 1} + {(13-18.0) 2 /18.0}+{(6−9.02) 2 /9.02}+{(5-3.61) 2 /3.61} + {( 5-1.66) 2 /1.66}≈9.96. Next, the probability that the chi-square value is 9.96 is calculated based on the chi-square distribution table. FIG. 4 shows a part of the chi-square distribution table. The degree of freedom in the chi-square distribution table corresponds to a number obtained by subtracting 1 from the number of classes. That is, the degree of freedom in this example is 7-1 = 6. This means that since the number of sample data is determined to be 100, if the frequencies for the six classes are determined, the remaining one expected frequency is determined. The chi-square distribution table of FIG. 4 shows the following regarding the chi-square value with six degrees of freedom.
 ・カイ二乗値が0.872以下または16.812以上になる確率は1%以下
 ・カイ二乗値が1.237以下または14.449以上になる確率は2.5%以下
 ・カイ二乗値が1.635以下または12.592以上になる確率は5%以下
 本例では、算出されたカイ二乗値9.96が得られる確率は5%未満の危険域にはないと判定される。すなわち、上述の「観測された事象の頻度分布が、期待される頻度分布に適合している」という仮説は、有意水準5%で採択される。すなわち、観測されたデータは、ユーザの意図する分布に適合するとみなしてよい。
・ Probability that chi-square value is 0.872 or less or 16.812 or more ・ 1% or less ・ Probability that chi-square value is 1.237 or less or 14.449 or more ・ 2.5% or less ・ chi-square value is 1 In this example, it is determined that the probability of obtaining the calculated chi-square value 9.96 is not in the danger zone of less than 5%. That is, the above-mentioned hypothesis that “the frequency distribution of observed events matches the expected frequency distribution” is adopted at a significance level of 5%. That is, the observed data may be considered to match the distribution intended by the user.
 尚、期待度数が10や5を下回る階級があると、算出されるカイ二乗値の誤差が大きくなることが知られている。本例の場合、カイ二乗値の算出にあたり、リクエスト率「5」と「6~」の階級を、図10に示すように「5~」にまとめてもよい。 In addition, it is known that if there is a class whose expected frequency is less than 10 or 5, the error of the calculated chi-square value becomes large. In the case of this example, when calculating the chi-square value, the ranks of the request rates “5” and “6˜” may be combined into “5˜” as shown in FIG.
 最後に出力部150は、適合しているという判定結果をディスプレイ等の外部の出力装置やログファイル等に出力する(S16)。以上に説明した例の場合、判定結果は、負荷生成器の生成した負荷におけるリクエスト率が、ユーザの意図する分布に適合していることを意味する。
<<第1の実施形態の変形例>>
 上記の例では、負荷テスト実施装置2が送信するリクエスト率に対する分布を評価したが、負荷テスト実施装置2が送信するリクエスト間隔に対する評価を行うこともできる。リクエスト間隔に対する評価を行う際には、階級取得部122が取得する階級データをリクエスト間隔に関する階級データとし、期待度数分布取得部124が取得または算出する期待度分布を、指数分布に従うものとすればよい。
Finally, the output unit 150 outputs a determination result indicating conformity to an external output device such as a display, a log file, or the like (S16). In the case of the example described above, the determination result means that the request rate in the load generated by the load generator matches the distribution intended by the user.
<< Modification of First Embodiment >>
In the above example, the distribution with respect to the request rate transmitted by the load test execution device 2 is evaluated. However, the request interval transmitted by the load test execution device 2 can also be evaluated. When evaluating the request interval, it is assumed that the class data acquired by the class acquisition unit 122 is class data related to the request interval, and the expected degree distribution acquired or calculated by the expected frequency distribution acquisition unit 124 follows the exponential distribution. Good.
 リクエスト間隔に関する階級データの一例を挙げると、例えば次のようなものである。 An example of class data related to the request interval is as follows.
 階級1: 0.0(秒)以上0.1(秒)未満
 階級2: 0.1(秒)以上0.2(秒)未満
 階級3: 0.2(秒)以上0.3(秒)未満
 階級4: 0.3(秒)以上0.4(秒)未満
 階級5: 0.4(秒)以上0.5(秒)未満
 階級6: 0.5(秒)以上0.6(秒)未満
 階級7: 0.6(秒)以上
 観測度数分布作成部123は、階級取得部122が受け付けた階級データがリクエスト間隔に関するデータである場合、リクエスト間隔に関する観測度数分布データを作成すればよい。また、観測度数分布作成部123は、階級取得部122が受け付けた階級データがリクエスト率に関するデータである場合、リクエスト率に関する観測度数分布データを作成すればよい。
Class 1: 0.0 (second) to less than 0.1 (second) Class 2: 0.1 (second) to less than 0.2 (second) Class 3: 0.2 (second) to 0.3 (second) Less than Class 4: 0.3 (second) or more and less than 0.4 (second) Class 5: 0.4 (second) or more and less than 0.5 (second) Class 6: 0.5 (second) or more and 0.6 (second) ) Less than Class 7: 0.6 (seconds) or more The observation frequency distribution creation unit 123 may create observation frequency distribution data related to the request interval when the class data received by the class acquisition unit 122 is data related to the request interval. . In addition, the observation frequency distribution creation unit 123 may create observation frequency distribution data related to the request rate when the class data received by the class acquisition unit 122 is data related to the request rate.
 負荷評価装置1と負荷テスト実施装置2とは一体の装置であっても構わない。階級取得部122は、階級データをオペレータから取得することに代えて、別途図示しない記憶部等から取得してもよい。期待度数分布取得部124は、期待度数分布データをオペレータから取得するのではなく、別途図示しない記憶部等から取得するとしてもよい。有意水準取得部125は、期待度数分布データをオペレータから取得するのではなく、別途図示しない記憶部等から取得するとしてもよい。 The load evaluation device 1 and the load test execution device 2 may be an integrated device. The class acquisition unit 122 may acquire class data from a storage unit (not shown) instead of acquiring class data from an operator. The expected frequency distribution acquisition unit 124 may acquire the expected frequency distribution data from an operator (not shown) instead of acquiring the expected frequency distribution data from the operator. The significance level acquisition unit 125 may acquire the expected frequency distribution data from a storage unit or the like (not shown) instead of acquiring the expected frequency distribution data from the operator.
 以上に説明したように、本実施形態に係る負荷評価装置1によれば、負荷テスト実施装置2が送信するリクエストの送信時間間隔またはリクエスト送信率が、所定の分布に従っているか否かを検定することができる。係る情報を参照することにより、負荷テストが正確に行われたか否かを確認することができ、負荷テストの結果が信頼に値するか否かを判断することができる。 As described above, according to the load evaluation device 1 according to the present embodiment, it is verified whether or not the transmission time interval or request transmission rate of the request transmitted by the load test execution device 2 follows a predetermined distribution. Can do. By referring to such information, it can be confirmed whether or not the load test has been accurately performed, and it can be determined whether or not the result of the load test is reliable.
 その理由は、以下の構成を含むようにしたからである。第1に、時系列データ記憶部が、負荷テスト実施装置2からテスト対象システム3へと送信された、リクエストの送信時刻の時系列データを記憶する。第2に、観測度数分布作成部123が、その時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて、リクエスト率を集計し、リクエスト率の観測度数分布データを作成する。第3に、期待度数分布取得124が、そのリクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する。第4に、適合度検定126が、その観測度数分布データとその期待度数分布データとを用いて、その観測度数分布データについてその所望の確率分布との適合度検定を行う。
<<第2の実施形態>>
 第2の実施形態に係る負荷評価装置1は、テストシナリオにより実行されるタイプの負荷テストを評価対象とする。
This is because the following configuration is included. First, the time-series data storage unit stores the time-series data of the transmission time of the request transmitted from the load test execution device 2 to the test target system 3. Second, the observed frequency distribution creation unit 123 calculates a request rate that is the number of requests transmitted per unit time based on the time series data, and a class that is a total interval width for creating the frequency distribution data Based on the data, the request rate is aggregated, and observation frequency distribution data of the request rate is created. Third, the expected frequency distribution acquisition 124 acquires expected frequency distribution data that is expected frequency distribution data when the request rate distribution is assumed to follow a desired probability distribution. Fourth, the fitness test 126 uses the observed frequency distribution data and the expected frequency distribution data to perform a fitness test with the desired probability distribution for the observed frequency distribution data.
<< Second Embodiment >>
The load evaluation apparatus 1 according to the second embodiment uses a load test of a type executed by a test scenario as an evaluation target.
 まず、負荷テストにおける「テストシナリオ」の概念について説明する。「テストシナリオ」とは、テスト対象システム3にリクエストを送信し負荷を与えるためのスクリプトである。テストシナリオは、「仮想ユーザ」により実行される。「仮想ユーザ」とは、テスト対象システム3に対してリクエストを送信するための機能であり、負荷テスト実施装置2により生成される。ここで、第2の実施形態に係る負荷評価装置1の評価対象となる、負荷テスト実施装置2の構成を説明する。
<負荷テスト実施装置2の構成>
 図11は、第2の実施形態に係る負荷テスト実施装置2の構成を示すブロック図である。負荷テスト実施装置2は、テスト記憶部210と、生成部220とを備えて構成される。
First, the concept of “test scenario” in the load test will be described. The “test scenario” is a script for transmitting a request to the test target system 3 and applying a load. The test scenario is executed by a “virtual user”. The “virtual user” is a function for transmitting a request to the test target system 3 and is generated by the load test execution device 2. Here, a configuration of the load test execution device 2 that is an evaluation target of the load evaluation device 1 according to the second embodiment will be described.
<Configuration of load test execution device 2>
FIG. 11 is a block diagram illustrating a configuration of the load test execution device 2 according to the second embodiment. The load test execution device 2 includes a test storage unit 210 and a generation unit 220.
 テスト記憶部210は、テストシナリオを記憶する。 The test storage unit 210 stores a test scenario.
 テストシナリオは、テスト対象システム3にリクエストを送信し負荷を与えるためのスクリプトである。テストシナリオは、リクエストを送信してからそのリクエストに対する応答を受信するまでの処理を、複数回含むものとする。テストシナリオの具体的内容は、テスト対象システム3の典型的な処理内容を考慮して、負荷テスト実施装置2のオペレータにより決定される。 The test scenario is a script for sending a request to the test target system 3 and applying a load. The test scenario includes a plurality of processes from sending a request to receiving a response to the request. The specific content of the test scenario is determined by the operator of the load test execution device 2 in consideration of typical processing content of the test target system 3.
 例えばテスト対象システム3がWebサーバの場合、リクエストのデータはWebサーバのURL(Uniform Resource Locator)である。例えばテスト対象システム3がオンラインショッピングサイトの場合、テストシナリオ中の一連のリクエストは、オンラインショッピングサイトの顧客による、商品の閲覧や選択、カートの確認、商品送付先やクレジットカード番号の入力等の一連の操作に対応している。 For example, when the test target system 3 is a Web server, the request data is a URL (Uniform Resource Locator) of the Web server. For example, when the test target system 3 is an online shopping site, a series of requests in the test scenario are a series of requests such as product browsing and selection, cart confirmation, product delivery destination and credit card number input by customers of the online shopping site. It corresponds to the operation of.
 生成部220は、「仮想ユーザ」を生成し、仮想ユーザにテストシナリオを実行させる。 The generation unit 220 generates a “virtual user” and causes the virtual user to execute a test scenario.
 仮想ユーザとは、例えば、ユーザによるテスト対象システム3へのアクセスを模擬するために、テスト対象システム3に対してリクエストを送信するための機能である。各仮想ユーザは、テスト対象システム3に対してリクエストを送信することにより負荷をかける。 The virtual user is a function for transmitting a request to the test target system 3 in order to simulate access to the test target system 3 by the user, for example. Each virtual user applies a load by transmitting a request to the test target system 3.
 生成部220は、負荷テスト実施装置2が複数の仮想ユーザを並行して動作させるためにOSレベルのスレッドやプロセスを仮想ユーザ数の分だけ生成し、各スレッドやプロセスでテストシナリオを実行させる。<仮想ユーザの典型的振る舞い>
 次に、仮想ユーザの典型的振る舞いを説明する。仮想ユーザの典型的な振る舞いには、「閉じたモデル」と「開いたモデル」とが有る。仮想ユーザの振る舞いとして、「閉じたモデル」と「開いたモデル」とのどちらを選択するかは、負荷テスト実施装置2のオペレータが、実施したい負荷テストの性質に合わせて決定する事項である。
<閉じたモデルの説明>
 図12は、閉じたモデルにおける仮想ユーザの典型的振る舞いを説明する図である。
The generation unit 220 generates OS level threads and processes for the number of virtual users so that the load test execution apparatus 2 operates a plurality of virtual users in parallel, and executes a test scenario in each thread or process. <Typical behavior of virtual users>
Next, typical behavior of a virtual user will be described. Typical behaviors of virtual users include “closed model” and “open model”. Whether the “closed model” or the “open model” is selected as the behavior of the virtual user is an item determined by the operator of the load test execution device 2 according to the nature of the load test to be executed.
<Description of closed model>
FIG. 12 is a diagram illustrating typical behavior of a virtual user in a closed model.
 仮想ユーザは、まず、テスト対象システム3にリクエストを送信する前に、TCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従ってTCP接続を確立する。これにより、仮想ユーザが動作する負荷テスト実施装置1とテスト対象システム3との間に、リクエストやレスポンスをやりとりするための論理的な通信路が用意される。 The virtual user first establishes a TCP connection in accordance with a TCP / IP (Transmission Control Protocol / Internet Protocol) protocol before sending a request to the test target system 3. Thus, a logical communication path for exchanging requests and responses is prepared between the load test execution device 1 on which the virtual user operates and the test target system 3.
 TCP接続の確立後、仮想ユーザはテストシナリオに規定されたリクエストを送信する。まず、仮想ユーザは第1のリクエストを送信し第1のリクエストに対する応答を受信する。仮想ユーザは、あるリクエストに対する応答を受け取ってから次のリクエストを送信するまで、一定時間(思考時間)休止する。仮想ユーザは、第1のリクエストに対する応答を受信してから思考時間が経過すると、第2のリクエストを送信し第2のリクエストに対する応答を受信する。 After the TCP connection is established, the virtual user sends a request specified in the test scenario. First, the virtual user transmits a first request and receives a response to the first request. The virtual user pauses for a certain time (thinking time) from receiving a response to a certain request until transmitting the next request. When the thinking time elapses after receiving the response to the first request, the virtual user transmits the second request and receives the response to the second request.
 仮想ユーザはこれらの動作を繰り返し、テストシナリオに規定された既定のリクエスト数(N)に対して、第Nのリクエストに対する受信を終えると、TCP接続を切断する。TCP接続を確立してからTCP接続を切断するまでで、仮想ユーザは、1ユーザ分の処理を完了する。そして仮想ユーザは、第Nのリクエストに対する受信を終えてから一定時間(思考時間)休止した後、再度テストシナリオを実行する。 The virtual user repeats these operations and disconnects the TCP connection when reception of the Nth request is completed for the predetermined number of requests (N) specified in the test scenario. The virtual user completes the processing for one user after the TCP connection is established until the TCP connection is disconnected. The virtual user pauses for a predetermined time (thinking time) after receiving the Nth request and then executes the test scenario again.
 仮想ユーザは、既定の回数あるいは既定の時間だけテストシナリオの実行を繰り返す。これは、各仮想ユーザが、1回のテストシナリオの実行で処理を終了してしまうと、テスト対象システム3に対して負荷を一定期間にわたってかけ続けることができないためである。 The virtual user repeats the test scenario execution a predetermined number of times or for a predetermined time. This is because each virtual user cannot continue to apply a load to the test target system 3 for a certain period if the process is completed by executing the test scenario once.
 このように一定数の仮想ユーザが同じようなリクエスト処理を繰り返す仕組みは、閉じたモデル(closed model)とよばれる。 仕 組 み The mechanism in which a certain number of virtual users repeat similar request processing in this way is called a closed model.
 思考時間は、「ユーザがリクエストの選択に掛かる時間」を模擬した時間である。例えばテスト対象システム3がオンラインショッピングサイトである場合を考える。オンラインショッピングサイトの顧客は、リクエストに対する応答(例えば、商品を説明するテキスト、商品の画像、商品の動画等)を受け取る。その後、その顧客は、表示された商品の画面を確認したり、商品を選択するために考えたり、商品送付先やクレジットカード番号を入力したり等をする。顧客はリクエストに対する応答を受け取ってからこれらの時間が経過した後、次のリクエストを送信する。このように、ユーザがあるリクエストに対する応答を受け取ってから次のリクエストを送信するまでの時間間隔を、思考時間を用いて模擬しているのである。 <Thinking time> is a time that simulates "the time required for a user to select a request". For example, consider a case where the test target system 3 is an online shopping site. The customer of the online shopping site receives a response to the request (for example, text describing the product, product image, product video, etc.). Thereafter, the customer checks the screen of the displayed product, thinks to select a product, inputs a product destination, a credit card number, and the like. The customer sends the next request after these times have elapsed since receiving the response to the request. In this way, the time interval from when the user receives a response to a request until the next request is transmitted is simulated using the thinking time.
 思考時間の長さは、負荷テスト実施装置2のオペレータが設定することができるパラメタである。多くの場合、負荷テスト実施装置2のオペレータは思考時間の平均値をパラメタとして設定する。そして、負荷テスト実施装置2は、そのパラメタに基づいて、指数分布に従う乱数を用いて、リクエストを送信するまでの思考時間の長さを決定する。負荷テスト実施装置2はこのようにして送信するリクエストの時間間隔を調整し、リクエストの送信間隔の変動を再現する。 The length of the thinking time is a parameter that can be set by the operator of the load test execution device 2. In many cases, the operator of the load test execution device 2 sets an average value of the thinking time as a parameter. And the load test execution apparatus 2 determines the length of the thinking time until it transmits a request using the random number according to an exponential distribution based on the parameter. The load test execution device 2 adjusts the time interval between requests to be transmitted in this way, and reproduces the variation in the request transmission interval.
 ここで、仮想ユーザがリクエストを送信してから前記リクエストに対する応答を受信するまでの時間(応答時間)をRTとし、思考時間をTTとすると、テストシナリオ中のリクエスト送信時間間隔は、応答時間RTと思考時間TTとの和によって決定される。ここで、応答時間RTはテスト対象システムの負荷の状態に影響を受ける観測値であり、負荷テスト実施装置1のオペレータからは直接制御することができない値である。 Here, when the virtual user transmits a request and receives a response to the request (response time) as RT, and the thinking time as TT, the request transmission time interval in the test scenario is the response time RT And the sum of the thinking time TT. Here, the response time RT is an observed value that is influenced by the load state of the test target system, and is a value that cannot be directly controlled by the operator of the load test execution device 1.
 テスト対象システム3の負荷が高まり、応答時間RTが伸びて、思考時間TTに比べて応答時間RTが大きくなると、リクエスト送信時間間隔の決定においては応答時間RTがより支配的となる。このような場合、せっかく思考時間TTを乱数としてリクエストの送信間隔の変動を再現しようとしたにも関わらず、その効果が薄れてしまうことになる。その結果、リクエストの送信時間間隔はオペレータの意図する送信時間間隔からずれてしまうことになる。 When the load on the test target system 3 increases, the response time RT increases, and the response time RT becomes larger than the thinking time TT, the response time RT becomes more dominant in determining the request transmission time interval. In such a case, although the thought time TT is set as a random number and the change in the request transmission interval is attempted to be reproduced, the effect is diminished. As a result, the request transmission time interval deviates from the transmission time interval intended by the operator.
 また、閉じたモデルでは、テスト対象システムの負荷が高まり、応答時間が伸びると、テストシナリオの完了までの時間も伸びるため、次のテストシナリオの繰返し(仮想ユーザの到着)の時間が遅延するという問題がある。つまり、閉じたモデルには、テスト対象システムの負荷が高くなることによって、負荷生成器の生成する負荷が低下するという欠点がある。
<開いたモデルの説明>
 閉じたモデルと開いたモデルとの違いは、閉じたモデルでは仮想ユーザがテストシナリオの実行を繰り返すのに対し、開いたモデルでは仮想ユーザが動的に生成され、テストシナリオの実行後に消滅する点にある。
In the closed model, the load on the system under test increases and the response time increases, so the time to complete the test scenario also increases, so the time to repeat the next test scenario (virtual user arrival) is delayed. There's a problem. In other words, the closed model has a drawback that the load generated by the load generator decreases as the load on the test target system increases.
<Description of open model>
The difference between a closed model and an open model is that a virtual user repeats the execution of a test scenario in the closed model, whereas a virtual user is dynamically generated in the open model and disappears after the test scenario is executed. It is in.
 図13は、開いたモデルにおける仮想ユーザの典型的振る舞いを説明する図である。 FIG. 13 is a diagram for explaining a typical behavior of a virtual user in the opened model.
 仮想ユーザは、まず、テスト対象システム3にリクエストを送信する前に、TCP/IPプロトコルに従ってTCP接続を確立する。これにより、仮想ユーザが動作する負荷テスト実施装置1とテスト対象システム3との間に、リクエストやレスポンスをやりとりするための論理的な通信路が用意される。 The virtual user first establishes a TCP connection according to the TCP / IP protocol before sending a request to the test target system 3. Thus, a logical communication path for exchanging requests and responses is prepared between the load test execution device 1 on which the virtual user operates and the test target system 3.
 TCP接続の確立後、仮想ユーザはテストシナリオに規定されたリクエストを送信する。まず、仮想ユーザは第1のリクエストを送信し第1のリクエストに対する応答を受信する。 After the TCP connection is established, the virtual user sends a request specified in the test scenario. First, the virtual user transmits a first request and receives a response to the first request.
 次に、仮想ユーザは第2のリクエストを送信し第2のリクエストに対する応答を受信する。仮想ユーザはこれらの動作を繰り返し、テストシナリオに規定された既定のリクエスト数(N)に対して、第Nのリクエストに対する受信を終えると、TCP接続を切断する。TCP接続を確立してからTCP接続を切断するまでで、仮想ユーザは、1ユーザ分の処理を完了する。 Next, the virtual user transmits a second request and receives a response to the second request. The virtual user repeats these operations, and disconnects the TCP connection when the reception of the Nth request is completed for the predetermined number of requests (N) defined in the test scenario. The virtual user completes the processing for one user after the TCP connection is established until the TCP connection is disconnected.
 開いたモデルでは、テスト対象システムの負荷に関係なく、ユーザの意図した頻度で仮想ユーザが到着するため、閉じたモデルと比較するとより正確な負荷を生成することができる。 In the open model, the virtual user arrives at the frequency intended by the user regardless of the load of the test target system, so that a more accurate load can be generated as compared with the closed model.
 以上、テストシナリオの実施による負荷テストの概要を説明すると共に、テストシナリオという概念を説明した。
<構成の説明>
 図14は、本発明の第2の実施形態に係る負荷評価装置1の構成を示すブロック図である。第1の実施の形態における構成要素と同様の構成要素は同一の符号を付し、その説明を省略する。第2の実施形態に係る負荷評価装置1は、図2に示す第1の実施形態における負荷評価装置1の構成に加えて、フィルタリング部127を備える。
As described above, the outline of the load test by the execution of the test scenario has been explained, and the concept of the test scenario has been explained.
<Description of configuration>
FIG. 14 is a block diagram showing a configuration of the load evaluation device 1 according to the second exemplary embodiment of the present invention. Constituent elements similar to those in the first embodiment are given the same reference numerals, and the description thereof is omitted. The load evaluation device 1 according to the second embodiment includes a filtering unit 127 in addition to the configuration of the load evaluation device 1 in the first embodiment shown in FIG.
 フィルタリング部127は、時系列データ記憶部111に記憶された時系列データから、テストシナリオにおける最初のリクエストに関するデータを抽出する。 The filtering unit 127 extracts data related to the first request in the test scenario from the time series data stored in the time series data storage unit 111.
 時系列データ記憶部111には、仮想ユーザが、スクリプトを繰り返し実行することにより、テスト対象システム3に送信したリクエストの送信時刻の時系列データが記憶されている。時系列データ記憶部111には、更に、仮想ユーザがスクリプトの実行を開始する際に、テスト対象システム3に対して要求したTCP接続要求の送信時刻の時系列データが記憶されている。 The time-series data storage unit 111 stores time-series data of transmission times of requests transmitted to the test target system 3 by repeatedly executing a script by the virtual user. The time-series data storage unit 111 further stores time-series data of the transmission time of the TCP connection request requested to the test target system 3 when the virtual user starts executing the script.
 フィルタリング部127は、負荷テスト実施装置2からテスト対象システム3に対してTCP接続要求があった後、始めに送信されたリクエストの送信時刻のデータを、時系列データ記憶部111から抽出する。上述した、閉じたモデルと開いたモデルの説明の中で述べた通り、TCP接続要求があった後、始めに送信するリクエストがテストシナリオにおける最初のリクエストだからである。 The filtering unit 127 extracts, from the time-series data storage unit 111, the data of the transmission time of the request transmitted first after the TCP test is sent from the load test execution device 2 to the test target system 3. This is because, as described in the description of the closed model and the open model described above, the request to be transmitted first after the TCP connection request is the first request in the test scenario.
 図3に示す時系列データ記憶部111が記憶するデータの具体例を用いて、フィルタリング部127の動作を説明する。図3は、負荷テスト実施装置2とテスト対象システム3との通信に関するログ情報である。 The operation of the filtering unit 127 will be described using a specific example of data stored in the time-series data storage unit 111 shown in FIG. FIG. 3 shows log information related to communication between the load test execution device 2 and the test target system 3.
 図3の行10047~10049は、負荷テスト実施装置2が生成した仮想ユーザ(アドレス192.168.0.1の1855番ポート)からテスト対象システム3(アドレス192.168.0.2の80番ポート)に対してコネクション接続要求があり、コネクションが無事確立されたことを表している。OS上のアプリケーションは、TCPポートを通じて通信を行なう。OS上のアプリケーションは、そのための準備として [SYN], [SYN,ACK], [ACK] パケットをやりとりして、お互いのコネクションを確立する。 Lines 10047 to 10049 in FIG. 3 indicate connection connection requests from the virtual user (port 1855 at address 192.168.0.1) generated by the load test execution device 2 to the test target system 3 (port 80 at address 192.168.0.2). Indicates that the connection was successfully established. An application on the OS communicates through a TCP port. In preparation for this, the applications on the OS exchange [SYN], [SYN, ACK], and [ACK] packets to establish mutual connections.
 図3の行10050は、仮想ユーザからテスト対象システム3に対して、HTTPプロトコルによってサーバ上の /some.php というコンテンツに対してGETリクエストが送信されたことを表している。行10050に記載されたリクエストは、行10047~10049に記載されたTCP接続要求の後、始めに送信されたリクエストであるので、フィルタリング部127は、行10050に記載されたリクエストの送信時刻のデータを抽出する。 The line 10050 in FIG. 3 represents that a GET request is transmitted from the virtual user to the test target system 3 for the content “/some.php” on the server by the HTTP protocol. Since the request described in the row 10050 is a request transmitted first after the TCP connection request described in the rows 10047 to 10049, the filtering unit 127 transmits the transmission time data of the request described in the row 10050. To extract.
 フィルタリング部127は、このように時系列データ記憶部111が記憶するデータを解析し、テストシナリオにおける最初のリクエストに関するデータを抽出する。
<動作の説明>
 次に、第2の実施形態に係る負荷評価装置1の動作について説明する。図15は、負荷評価装置1の動作を説明するフローチャートである。
The filtering unit 127 analyzes the data stored in the time-series data storage unit 111 in this way, and extracts data related to the first request in the test scenario.
<Description of operation>
Next, the operation of the load evaluation device 1 according to the second embodiment will be described. FIG. 15 is a flowchart for explaining the operation of the load evaluation device 1.
 まず、フィルタリング部127は、時系列データ記憶部111に記憶された時系列データから、テストシナリオにおける最初のリクエストに関するデータを抽出する。続けて、フィルタリング部127は、抽出したデータを観測度数分布作成部123に出力する(S21)。 First, the filtering unit 127 extracts data related to the first request in the test scenario from the time series data stored in the time series data storage unit 111. Subsequently, the filtering unit 127 outputs the extracted data to the observation frequency distribution creation unit 123 (S21).
 次に、階級取得部122が、度数分布の作成に必要な階級データを取得する(S22)。 Next, the class acquisition unit 122 acquires class data necessary for creating the frequency distribution (S22).
 次に、観測度数分布作成部123は、フィルタリング部127が出力したデータに基づき、テストシナリオにおける最初のリクエストに関する、リクエスト率を分析する。観測度数分布作成部123は更に、階級取得部122から取得した階級データに基づいて、上記リクエスト率に関する観測度数分布データを作成する(S12)。 Next, the observation frequency distribution creation unit 123 analyzes the request rate regarding the first request in the test scenario based on the data output from the filtering unit 127. The observation frequency distribution creation unit 123 further creates observation frequency distribution data related to the request rate based on the class data acquired from the class acquisition unit 122 (S12).
 以降の動作は第1の実施形態に係る負荷評価システムの動作と同様であるので、説明を省略する。 Since the subsequent operation is the same as the operation of the load evaluation system according to the first embodiment, the description thereof is omitted.
 第2の実施形態に係る負荷評価装置1は、テストシナリオの最初のリクエストのみに関してリクエスト間隔またはリクエスト率を評価する。ここで、リクエスト間隔が指数分布に従っている場合、またはリクエスト率がポアソン分布に従っている場合、テストシナリオの最初のリクエストのみに関する評価を行うことによって、負荷テスト実施装置2が送信するリクエスト全体に関する評価を近似的に行うことができる。これは、指数分布またはポアソン分布が「無記憶性」とよばれる性質を有することによるものである。 The load evaluation device 1 according to the second embodiment evaluates the request interval or the request rate for only the first request of the test scenario. Here, when the request interval follows an exponential distribution, or when the request rate follows a Poisson distribution, the evaluation regarding only the first request of the test scenario is evaluated to approximate the evaluation regarding the entire request transmitted by the load test execution device 2. Can be done automatically. This is because the exponential distribution or Poisson distribution has a property called “memorylessness”.
 以上に説明したように、第2の実施形態に係る負荷評価装置1では、フィルタリング部127が時系列データ記憶部111に記憶された時系列データから一部分のみを抽出する。そして、観測度数分布作成部123は、フィルタリング部127が抽出したデータのみを集計する。こうして、第2の実施形態に係る負荷評価装置1においては、観測度数分布作成部123の集計対象となるデータが少なくなるため、観測度数分布作成部123の一連の処理を低コスト化することが可能となる。 As described above, in the load evaluation device 1 according to the second embodiment, the filtering unit 127 extracts only a part from the time series data stored in the time series data storage unit 111. And the observation frequency distribution creation part 123 totals only the data which the filtering part 127 extracted. Thus, in the load evaluation apparatus 1 according to the second embodiment, since the data to be tabulated by the observation frequency distribution creation unit 123 is reduced, the series of processing of the observation frequency distribution creation unit 123 can be reduced in cost. It becomes possible.
 また、第2の実施形態に係る負荷評価装置1は、フィルタリング部127が抽出したテストシナリオの最初のリクエストのみに関してリクエスト間隔またはリクエスト率を評価する。こうすることにより、負荷評価装置1は、仮想ユーザの到着間隔や到着率を評価する。上述したように開いたモデルにおいては、仮想ユーザの到着間隔や到着率は負荷対象システム3の負荷によらず、負荷テスト実施装置2側でコントロールしている。従って、第2の実施形態に係る負荷評価装置1は、仮想ユーザの到着間隔や到着率を評価することによりテスト対象システム3の負荷に左右されず、負荷テスト実施装置2が生成した仮想ユーザが送信するリクエストの品質(リクエスト間隔、リクエスト率)を正確に評価することが可能である。
<<第2の実施形態の変形例>>
 ところで、フィルタリング部127が時系列データ記憶部111から抽出するのは、必ずしもテストシナリオの最初のリクエストに関するデータのみでなくても良い。例えば、フィルタリング部127は、負荷テスト実施装置2からテスト対象システム3へのTCP接続要求を抽出してもよい。
In addition, the load evaluation device 1 according to the second embodiment evaluates the request interval or the request rate for only the first request of the test scenario extracted by the filtering unit 127. By doing so, the load evaluation device 1 evaluates the arrival interval and arrival rate of the virtual users. In the model opened as described above, the arrival interval and arrival rate of the virtual user are controlled on the load test execution device 2 side regardless of the load of the load target system 3. Therefore, the load evaluation device 1 according to the second embodiment is not influenced by the load of the test target system 3 by evaluating the arrival interval and arrival rate of the virtual users, and the virtual user generated by the load test execution device 2 It is possible to accurately evaluate the quality (request interval, request rate) of the transmitted request.
<< Modification of Second Embodiment >>
By the way, what the filtering unit 127 extracts from the time-series data storage unit 111 does not necessarily need to be only data related to the first request of the test scenario. For example, the filtering unit 127 may extract a TCP connection request from the load test execution device 2 to the test target system 3.
 Webサーバへのリクエストは、通常HTTPやHTTPS(Hypertext Transfer Protocol over Secure Socket Layer)といったプロトコルに従って送信される。HTTPやHTTPSは、TCPプロトコルの上で動作するプロトコルであり、TCPの通信パケットを解析するのはHTTPやHTTPSのパケットを解析するのに比べて手間が掛からない。 A request to a Web server is normally transmitted according to a protocol such as HTTP or HTTPS (Hypertext Transfer Protocol Protocol over Secure Secure Socket Layer). HTTP and HTTPS are protocols that operate on top of the TCP protocol, and analyzing TCP communication packets is less time-consuming than analyzing HTTP and HTTPS packets.
 従って、TCP接続要求に関する適合度検定は、テストシナリオにおける最初のリクエストに関する適合度検定よりも、更に少ないコストで実施することが可能である。 Therefore, the conformity test for the TCP connection request can be performed at a lower cost than the conformity test for the first request in the test scenario.
 フィルタリング部127は、時系列データ記憶部111からTCP接続要求の送信時刻のデータを抽出し、観測度数分布作成部123に出力する。 The filtering unit 127 extracts the transmission time data of the TCP connection request from the time series data storage unit 111 and outputs the data to the observation frequency distribution creation unit 123.
 観測度数分布作成部123は、フィルタリング部127が抽出したデータに基づき、単位時間当たりのTCP接続要求回数(TCP接続要求率)を算出する。次に、観測度数分布作成部123は、階級取得部122から所得した階級データに基づき、その算出したTCP接続要求率を集計し、TCP接続要求率の観測度数分布データを作成する。 The observation frequency distribution creation unit 123 calculates the number of TCP connection requests per unit time (TCP connection request rate) based on the data extracted by the filtering unit 127. Next, the observation frequency distribution creation unit 123 aggregates the calculated TCP connection request rates based on the class data obtained from the class acquisition unit 122, and creates observation frequency distribution data of the TCP connection request rates.
 以降の動作は第1の実施形態に係る負荷評価システムの動作と同様であるので、説明を省略する。
<<第3の実施形態>>
 図16は、本発明の第3の実施形態に係る負荷評価装置1の構成を示すブロック図である。第1の実施の形態における構成要素と同様の構成要素は同一の符号を付し、その説明を省略する。
Subsequent operations are the same as the operations of the load evaluation system according to the first embodiment, and a description thereof will be omitted.
<< Third Embodiment >>
FIG. 16 is a block diagram showing the configuration of the load evaluation device 1 according to the third embodiment of the present invention. Constituent elements similar to those in the first embodiment are given the same reference numerals, and the description thereof is omitted.
 第3の実施形態に係る負荷評価装置1は、図14に示す第2の実施形態における負荷評価装置1の構成と比較してフィルタリング部127の代わりにフィルタリング部127Aを備える。また、時系列データ記憶部111の代わりに時系列データ記憶部111Aを備える。 The load evaluation device 1 according to the third embodiment includes a filtering unit 127A instead of the filtering unit 127 as compared with the configuration of the load evaluation device 1 in the second embodiment shown in FIG. Further, a time series data storage unit 111 </ b> A is provided instead of the time series data storage unit 111.
 第3の実施形態に係る負荷評価装置1は、第1の実施形態に係る負荷評価装置1と比較して、時系列データ記憶部111Aの記憶容量を節約することができる。 The load evaluation device 1 according to the third embodiment can save the storage capacity of the time series data storage unit 111A as compared with the load evaluation device 1 according to the first embodiment.
 すなわち、第3の実施形態に係る負荷評価装置1によると、フィルタリング部127Aは、通信データ取得部121が取得した通信に関するデータのうち、一部分のみを抽出して時系列データ記憶部111Aに記憶する。具体的には、フィルタリング部127Aは、通信データ取得部121が取得した通信に関するデータから、テストシナリオの最初のリクエストの送信時刻のデータまたはTCP接続要求の送信時刻のデータを抽出し、時系列データ記憶部111に記憶する。 That is, according to the load evaluation device 1 according to the third embodiment, the filtering unit 127A extracts only a part of the communication-related data acquired by the communication data acquisition unit 121 and stores it in the time-series data storage unit 111A. . Specifically, the filtering unit 127A extracts the data on the transmission time of the first request of the test scenario or the data on the transmission time of the TCP connection request from the data related to the communication acquired by the communication data acquisition unit 121, and sets the time series data. Store in the storage unit 111.
 フィルタリング部127Aが、テストシナリオの最初のリクエストに関するデータまたはTCP接続要求を抽出する動作は、第2の実施形態と同様であるので説明を省略する。また、第3の実施形態に係る負荷評価装置1がリクエスト間隔またはリクエスト率の分布の適合度検定を行う動作は、第1の実施形態と同様であるので説明を省略する。 The operation of the filtering unit 127A to extract the data related to the first request of the test scenario or the TCP connection request is the same as that in the second embodiment, and thus the description thereof is omitted. Further, the operation of the load evaluation device 1 according to the third embodiment for performing the suitability test of the request interval or request rate distribution is the same as that of the first embodiment, and thus the description thereof is omitted.
 以上に説明したように、第3の実施形態に係る負荷評価装置1では、時系列データ記憶部111は、フィルタリング部127が抽出した一部のデータのみを記憶する。これにより、第3の実施形態に係る負荷評価装置1においては、時系列データ記憶部111の記憶容量を節約することができる。
<<第4の実施形態>>
 本発明の第4の実施形態に係る負荷評価装置1について図面を参照して詳細に説明する。
As described above, in the load evaluation device 1 according to the third embodiment, the time-series data storage unit 111 stores only some data extracted by the filtering unit 127. Thereby, in the load evaluation device 1 according to the third embodiment, the storage capacity of the time-series data storage unit 111 can be saved.
<< Fourth Embodiment >>
A load evaluation apparatus 1 according to a fourth embodiment of the present invention will be described in detail with reference to the drawings.
 図19は、第4の実施形態に係る負荷評価装置1の構成図である。 FIG. 19 is a configuration diagram of the load evaluation device 1 according to the fourth embodiment.
 第4の実施形態に係る負荷評価装置1は、時系列データ記憶部111と、観測度数分布作成部123と、期待度数分布取得部124と、適合度検定部126と、を備えて構成される。 The load evaluation device 1 according to the fourth embodiment includes a time-series data storage unit 111, an observation frequency distribution creation unit 123, an expected frequency distribution acquisition unit 124, and a fitness test unit 126. .
 時系列データ記憶部111は、負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する。 The time-series data storage unit 111 stores time-series data of request transmission times transmitted from the load generation device to the test target system.
 観測度数分布作成部123は、その時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成する。 The observation frequency distribution creation unit 123 calculates a request rate that is the number of requests transmitted per unit time based on the time series data, and based on the class data that is the total section width for creating the frequency distribution data. The request rates are totaled, and frequency distribution data of the request rate is created.
 期待度数分布取得部124は、そのリクエスト率の分布が所望の確率分布に基づくと仮定した場合に期待される度数分布データである期待度数分布データを取得する。 The expected frequency distribution acquisition unit 124 acquires expected frequency distribution data which is frequency distribution data expected when the request rate distribution is based on a desired probability distribution.
 適合度検定部126は、その観測度数分布データとその期待度数分布データとを用いて、その観測度数分布データについてその所望の確率分布との適合度検定を行う。 The goodness-of-fit test unit 126 uses the observed frequency distribution data and the expected frequency distribution data to perform a goodness-of-fit test on the observed frequency distribution data with the desired probability distribution.
 以上の構成を含むことにより、本実施形態の負荷評価装置1は、負荷テスト実施装置2が、テスト対象のシステムに対して所望の負荷を生成できているかを評価することができる。ここで、「負荷テスト実施装置が、テスト対象のシステムに対して所望の負荷を生成できているか」は、「負荷テスト実施装置が送信するリクエストが所定の分布を満たしているか」を含む。 By including the above configuration, the load evaluation device 1 of the present embodiment can evaluate whether the load test execution device 2 can generate a desired load for the test target system. Here, “whether the load test execution device can generate a desired load for the test target system” includes “whether the request transmitted by the load test execution device satisfies a predetermined distribution”.
 本願発明においては、負荷テスト実施装置2は、請求の範囲に記載した「負荷生成装置」の一例である。あるいは、負荷テスト実施装置2が生成した各仮想ユーザを、請求の範囲に記載した「負荷生成装置」とみなすこともできる。尚、負荷テスト実施装置2は、リクエスト送受信機能のみを実装したエージェントを、負荷テスト実施装置2とは別に別途設けるとしても良い。この場合には、テスト対象システム3とリクエストの送受信を行うエージェントが、請求の範囲に記載した「負荷生成装置」に相当する。 In the present invention, the load test execution device 2 is an example of the “load generation device” described in the claims. Alternatively, each virtual user generated by the load test execution device 2 can be regarded as a “load generation device” described in the claims. Note that the load test execution device 2 may separately provide an agent in which only the request transmission / reception function is mounted separately from the load test execution device 2. In this case, the agent that transmits / receives a request to / from the test target system 3 corresponds to the “load generation device” described in the claims.
 以上、本願発明を実施するための形態について説明したが、上記実施の形態は本願発明の理解を容易にするためのものであり、本願発明を限定して解釈するためのものではない。本願発明はその趣旨を逸脱することなく変更、改良され得ると共に、本願発明にはその等価物も含まれる。 As mentioned above, although the form for implementing this invention was demonstrated, the said embodiment is for making an understanding of this invention easy, and is not for limiting and interpreting this invention. The present invention can be changed and improved without departing from the gist thereof, and the present invention includes equivalents thereof.
 この出願は、2012年3月30日に出願された日本出願特願2012-079419を基礎とする優先権を主張し、その開示の全てをここに取り込む。 This application claims priority based on Japanese Patent Application No. 2012-079419 filed on March 30, 2012, the entire disclosure of which is incorporated herein.
 本発明は、サーバに所定の負荷を与えたときの性能や挙動を検証するための負荷テスト装置に対する評価装置またはシステムとして好適である。 The present invention is suitable as an evaluation apparatus or system for a load test apparatus for verifying performance and behavior when a predetermined load is applied to a server.
1  負荷評価装置
2  負荷テスト実施装置
3  テスト対象システム
4  ネットワーク
110  記憶部
111  時系列データ記憶部
112  カイ二乗データ記憶部
120  処理部
121  通信データ取得部
122  階級取得部
123  観測度数分布作成部
124  期待度数分布取得部
125  優位水準取得部
126  適合度検定部
127  フィルタリング部
130  通信部
140  入力部
150  出力部
160  テスト記憶部
220  生成部
DESCRIPTION OF SYMBOLS 1 Load evaluation apparatus 2 Load test execution apparatus 3 Test object system 4 Network 110 Storage part 111 Time series data storage part 112 Chi-square data storage part 120 Processing part 121 Communication data acquisition part 122 Class acquisition part 123 Observation frequency distribution preparation part 124 Expectation Frequency distribution acquisition unit 125 Dominance level acquisition unit 126 Goodness-of-fit test unit 127 Filtering unit 130 Communication unit 140 Input unit 150 Output unit 160 Test storage unit 220 Generation unit

Claims (10)

  1.  負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段と、
     前記時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成する観測度数分布作成手段と、
     前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する期待度数分布取得手段と、
     前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行う適合度検定手段と、
     を備える情報処理装置。
    Time-series data storage means for storing time-series data of the transmission time of the request transmitted from the load generation device to the test target system;
    Based on the time series data, a request rate that is the number of requests transmitted per unit time is calculated, and the request rate is totaled based on class data that is a total interval width for creating frequency distribution data, Observation frequency distribution creation means for creating frequency distribution data of request rate,
    Expected frequency distribution acquisition means for acquiring expected frequency distribution data which is frequency distribution data expected when the request rate distribution is assumed to follow a desired probability distribution;
    Using the observed frequency distribution data and the expected frequency distribution data, a fitness test means for performing a fitness test with the desired probability distribution for the observed frequency distribution data,
    An information processing apparatus comprising:
  2.  前記時系列データ記憶手段が記憶する時系列データは、前記負荷生成装置が、リクエストを送信してから前記リクエストに対する応答を受信する処理を複数回含むスクリプトを繰り返し実行することにより、前記テスト対象システムに対して送信したリクエストの送信時刻の時系列データであって、
     前記時系列データ記憶手段から、前記スクリプトにおける最初のリクエストの送信時刻のデータを抽出し、前記抽出したデータを前記観測度数分布作成手段に出力するフィルタリング手段を更に備え、
     前記観測度数分布作成手段は、前記フィルタリング手段が抽出したデータに基づいて、単位時間当たりに送信された前記最初のリクエストの数であるリクエスト率を算出し、前記リクエスト率を集計し、観測度数分布データを作成し、
     期待度数分布取得手段は、前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する
     請求項1に記載の情報処理装置。
    The time-series data stored by the time-series data storage means is obtained by repeatedly executing a script including a process in which the load generation device receives a response to the request after transmitting the request a plurality of times. Is the time series data of the transmission time of the request sent to
    Filtering means for extracting data of the transmission time of the first request in the script from the time series data storage means, and outputting the extracted data to the observation frequency distribution creating means,
    The observation frequency distribution creating unit calculates a request rate that is the number of the first requests transmitted per unit time based on the data extracted by the filtering unit, totals the request rate, and observes the frequency distribution Create data,
    The information processing apparatus according to claim 1, wherein the expected frequency distribution acquisition unit acquires expected frequency distribution data that is frequency distribution data expected when the request rate distribution is assumed to follow a desired probability distribution.
  3.  前記時系列データ記憶手段は、前記負荷生成装置が、リクエストを送信してから前記リクエストに対する応答を受信する処理を複数回含むスクリプトを繰り返し実行することにより、前記テスト対象システムに対して送信したリクエストの送信時刻の時系列データと、前記負荷生成装置が前記スクリプトの実行を開始する際に、前記テスト対象システムに対して要求したTCP接続要求の送信時刻の時系列データと、を含み、
     前記時系列データ記憶手段から、前記負荷生成装置から前記負荷生成装置へのTCP接続要求の送信時刻のデータを抽出し、前記抽出したデータを前記観測度数分布作成手段に出力するフィルタリング手段を更に備え、
     前記観測度数分布作成手段は、前記フィルタリング手段が抽出したデータに基づいて、単位時間当たりに送信されたTCP接続要求の回数であるTCP接続要求率を算出し、前記TCP接続要求率を集計し、観測度数分布データを作成し、
     期待度数分布取得手段は、前記TCP接続要求率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する
     請求項1に記載の情報処理装置。
    The time-series data storage means is configured so that the load generation device transmits a request transmitted to the test target system by repeatedly executing a script including a process of receiving a response to the request after transmitting the request. Transmission time time series data, and when the load generation device starts executing the script, the TCP connection request transmission time time series data requested to the test target system,
    Filtering means for extracting from the time series data storage means data at the time of transmission of a TCP connection request from the load generation device to the load generation device, and outputting the extracted data to the observation frequency distribution creation means ,
    The observation frequency distribution creating unit calculates a TCP connection request rate that is the number of TCP connection requests transmitted per unit time based on the data extracted by the filtering unit, and tabulates the TCP connection request rate. Create observation frequency distribution data,
    The information processing apparatus according to claim 1, wherein the expected frequency distribution acquisition unit acquires expected frequency distribution data that is frequency distribution data expected when the distribution of the TCP connection request rate follows a desired probability distribution.
  4.  負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段と、
     前記時系列データに基づいて、リクエストの送信時間間隔を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて集計し、リクエストの送信時間間隔の度数分布データを作成する観測度数分布作成手段と、
     前記リクエストの送信時間間隔の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する期待度数分布取得手段と
     前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行う適合度検定手段と、
     を備える情報処理装置。
    Time-series data storage means for storing time-series data of the transmission time of the request transmitted from the load generation device to the test target system;
    Based on the time-series data, the request transmission time interval is calculated, and the request transmission time interval is aggregated based on the class data that is the aggregation interval for creating the frequency distribution data, and the frequency distribution data of the request transmission time interval is created. Observation frequency distribution creation means,
    Expected frequency distribution acquisition means for acquiring expected frequency distribution data that is expected frequency distribution data when the distribution of transmission time intervals of the request follows a desired probability distribution, the observed frequency distribution data, and the expected frequency distribution A fitness test means for performing a fitness test with the desired probability distribution for the observed frequency distribution data using data,
    An information processing apparatus comprising:
  5.  前記時系列データ記憶手段が記憶する時系列データは、前記負荷生成装置が、リクエストを送信してから前記リクエストに対する応答を受信する処理を複数回含むスクリプトを繰り返し実行することにより前記テスト対象システムに対して送信したリクエストの送信時刻の時系列データであって、
     前記時系列データ記憶手段から、前記スクリプトにおける最初のリクエストの送信時刻のデータを抽出し、前記抽出したデータを前記観測度数分布作成手段に出力するフィルタリング手段を更に備え、
     前記観測度数分布作成手段は、前記フィルタリング手段が抽出したデータに基づいて、前記最初のリクエストの送信時間間隔を算出し、前記最初のリクエストの送信時間間隔を集計し、観測度数分布データを作成し、
     期待度数分布取得手段は、前記最初のリクエストの送信時間間隔の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する請求項4に記載の情報処理装置。
    The time-series data stored in the time-series data storage means is stored in the test target system by repeatedly executing a script including a process of receiving a response to the request after the load generation device transmits the request. Time-series data of the transmission time of the request sent to
    Filtering means for extracting data of the transmission time of the first request in the script from the time series data storage means, and outputting the extracted data to the observation frequency distribution creating means,
    The observation frequency distribution creation means calculates the transmission time interval of the first request based on the data extracted by the filtering means, and aggregates the transmission time intervals of the first request to create observation frequency distribution data. ,
    5. The information according to claim 4, wherein the expected frequency distribution acquisition means acquires expected frequency distribution data that is expected frequency distribution data when it is assumed that a transmission time interval distribution of the first request follows a desired probability distribution. Processing equipment.
  6.   前記時系列データ記憶手段は、前記負荷生成装置が、リクエストを送信してから前記リクエストに対する応答を受信する処理を複数回含むスクリプトを繰り返し実行することにより前記テスト対象システムに対して送信したリクエストの送信時刻の時系列データと、前記負荷生成装置が前記スクリプトの実行を開始する際に、前記テスト対象システムに対して要求したTCP接続要求の送信時刻の時系列データと、を含み、
     前記時系列データ記憶手段から、前記負荷生成装置から前記負荷生成装置へのTCP接続要求の送信時刻のデータを抽出し、前記抽出したデータを前記観測度数分布作成手段に出力するフィルタリング手段を更に備え、
     前記観測度数分布作成手段は、前記フィルタリング手段が抽出したデータに基づいて、TCP接続要求の時間間隔を算出し、前記TCP接続要求の時間間隔を集計し、観測度数分布データを作成し、
     期待度数分布取得手段は、前記TCP接続要求の時間間隔の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する
     請求項4に記載の情報処理装置。
    The time-series data storage unit is configured to store the request transmitted to the test target system by repeatedly executing a script including a process of receiving a response to the request after the load generation device transmits the request. Time-series data of transmission time, and time-series data of transmission time of a TCP connection request requested to the test target system when the load generation device starts execution of the script,
    Filtering means for extracting from the time series data storage means data at the time of transmission of a TCP connection request from the load generation device to the load generation device, and outputting the extracted data to the observation frequency distribution creation means ,
    The observation frequency distribution creation means calculates a TCP connection request time interval based on the data extracted by the filtering means, totals the TCP connection request time interval, creates observation frequency distribution data,
    The information processing unit according to claim 4, wherein the expected frequency distribution acquisition unit acquires expected frequency distribution data that is expected frequency distribution data when it is assumed that a time interval distribution of the TCP connection request follows a desired probability distribution. apparatus.
  7.  前記階級データを取得する階級取得手段を含む
     請求項1乃至6のいずれか1項に記載の情報処理装置。
    The information processing apparatus according to claim 1, further comprising: a class acquisition unit that acquires the class data.
  8.  請求項1乃至7のいずれか1項に記載の情報処理装置と、
     前記負荷生成装置と、を含む
     情報処理システム。
    The information processing apparatus according to any one of claims 1 to 7,
    An information processing system including the load generation device.
  9.  負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段を備える装置の制御方法であって、
     前記時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成するステップと、
     前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得するステップと、
     前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行うステップと、
     を実行するよう制御する前記装置の制御方法。
    A method for controlling an apparatus including time-series data storage means for storing time-series data of a transmission time of a request transmitted from a load generation apparatus to a test target system,
    Based on the time series data, a request rate that is the number of requests transmitted per unit time is calculated, and the request rate is totaled based on class data that is a total interval width for creating frequency distribution data, Creating frequency distribution data for request rates;
    Obtaining expected frequency distribution data which is frequency distribution data expected when the distribution of the request rate is assumed to follow a desired probability distribution;
    Using the observed frequency distribution data and the expected frequency distribution data, performing a fitness test with the desired probability distribution for the observed frequency distribution data;
    A method for controlling the apparatus for performing control so as to execute.
  10.  負荷生成装置からテスト対象システムへと送信された、リクエストの送信時刻の時系列データを記憶する時系列データ記憶手段を備えるコンピュータに、
     前記時系列データに基づいて、単位時間あたりに送信されたリクエスト数であるリクエスト率を算出し、度数分布データを作成するための集計区間幅である階級データに基づいて前記リクエスト率を集計し、リクエスト率の度数分布データを作成する観測度数分布作成処理、
     前記リクエスト率の分布が所望の確率分布に従うと仮定した場合に期待される度数分布データである期待度数分布データを取得する期待度数分布取得処理、
     前記観測度数分布データと前記期待度数分布データとを用いて、前記観測度数分布データについて前記所望の確率分布との適合度検定を行う適合度検定処理、
     を実行させるプログラムを記録した不揮発性記録媒体。
    A computer including time-series data storage means for storing time-series data of the transmission time of a request transmitted from the load generation device to the test target system,
    Based on the time series data, a request rate that is the number of requests transmitted per unit time is calculated, and the request rate is totaled based on class data that is a total interval width for creating frequency distribution data, Observation frequency distribution creation process to create frequency distribution data of request rate,
    Expected frequency distribution acquisition processing for acquiring expected frequency distribution data which is frequency distribution data expected when the distribution of the request rate follows a desired probability distribution,
    Using the observed frequency distribution data and the expected frequency distribution data, a fitness test process for performing a fitness test with the desired probability distribution for the observed frequency distribution data,
    A non-volatile recording medium on which a program for executing is recorded.
PCT/JP2013/001830 2012-03-30 2013-03-18 Information processing device for executing load evaluation and load evaluation method WO2013145629A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/387,030 US20150046480A1 (en) 2012-03-30 2013-03-18 Information processing device for executing load evaluation, and load evaluation method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-079419 2012-03-30
JP2012079419 2012-03-30

Publications (1)

Publication Number Publication Date
WO2013145629A1 true WO2013145629A1 (en) 2013-10-03

Family

ID=49258943

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/001830 WO2013145629A1 (en) 2012-03-30 2013-03-18 Information processing device for executing load evaluation and load evaluation method

Country Status (2)

Country Link
JP (1) JPWO2013145629A1 (en)
WO (1) WO2013145629A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102343477B1 (en) * 2020-12-28 2021-12-28 주식회사 앱테스트에이아이 System And Method For User Interface Autonomous Testing
CN116466872A (en) * 2022-10-17 2023-07-21 浙江智臾科技有限公司 Time sequence data storage system and method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348491A (en) * 2003-05-23 2004-12-09 Internatl Business Mach Corp <Ibm> Device, method, and program for adjusting request load, and method for collecting performance data
JP2006011492A (en) * 2004-06-21 2006-01-12 Fuji Xerox Co Ltd Distribution goodness-of-fit testing device, consumable item supply timing determination device, image formation apparatus, distribution goodness-of-fit testing method, and program
WO2009130967A1 (en) * 2008-04-21 2009-10-29 日本電気株式会社 System performance test method, program, and device
JP2011065269A (en) * 2009-09-15 2011-03-31 Toshiba Corp Time series data analysis support program and device
JP2011107862A (en) * 2009-11-16 2011-06-02 Nec Corp System, device, method, and program for evaluating maximum throughput
JP2011186712A (en) * 2010-03-08 2011-09-22 Mitsubishi Electric Corp Performance analysis apparatus, performance analysis method and performance analysis program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004348491A (en) * 2003-05-23 2004-12-09 Internatl Business Mach Corp <Ibm> Device, method, and program for adjusting request load, and method for collecting performance data
JP2006011492A (en) * 2004-06-21 2006-01-12 Fuji Xerox Co Ltd Distribution goodness-of-fit testing device, consumable item supply timing determination device, image formation apparatus, distribution goodness-of-fit testing method, and program
WO2009130967A1 (en) * 2008-04-21 2009-10-29 日本電気株式会社 System performance test method, program, and device
JP2011065269A (en) * 2009-09-15 2011-03-31 Toshiba Corp Time series data analysis support program and device
JP2011107862A (en) * 2009-11-16 2011-06-02 Nec Corp System, device, method, and program for evaluating maximum throughput
JP2011186712A (en) * 2010-03-08 2011-09-22 Mitsubishi Electric Corp Performance analysis apparatus, performance analysis method and performance analysis program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YUKIHIRO TAKAHASHI: "Jirei ni Manabu Web System Kochikuho Dai 4 Kai", NIKKEI INTERNET TECHNOLOGY, 21 June 2002 (2002-06-21), pages 116 - 123 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102343477B1 (en) * 2020-12-28 2021-12-28 주식회사 앱테스트에이아이 System And Method For User Interface Autonomous Testing
US11567858B2 (en) 2020-12-28 2023-01-31 Apptest.Ai System and method for user interface autonomous testing
CN116466872A (en) * 2022-10-17 2023-07-21 浙江智臾科技有限公司 Time sequence data storage system and method

Also Published As

Publication number Publication date
JPWO2013145629A1 (en) 2015-12-10

Similar Documents

Publication Publication Date Title
US10884910B2 (en) Method to configure monitoring thresholds using output of load or resource loadings
KR102089284B1 (en) Cloud verification and test automation
US10057136B2 (en) Method and apparatus for visualized network operation and maintenance
Yu et al. Dissecting performance of production QUIC
US20170093648A1 (en) System and method for assessing streaming video quality of experience in the presence of end-to-end encryption
US20110282642A1 (en) Network emulation in manual and automated testing tools
JP4343983B2 (en) Network management apparatus and network management method
WO2014116936A2 (en) Methods and systems for detecting, locating and remediating a congested resource or flow in a virtual infrastructure
US20200044955A1 (en) Machine Learning for Quality of Experience Optimization
CN107634850B (en) A kind of application state acquisition methods and its equipment, storage medium, server
CN108292254A (en) Technology for the operation for verifying equipment
US10965539B2 (en) System and method for distributed testing of end-to-end performance of a server
US20160140345A1 (en) Information processing device, filtering system, and filtering method
WO2013145629A1 (en) Information processing device for executing load evaluation and load evaluation method
CN108156024A (en) One kind is based on distributed website availability detection method, system and storage medium
JP5896862B2 (en) Test apparatus, test method and program
KR20150025106A (en) Verification apparatus, terminal device, system, method and computer-readable medium for monitoring of application verification result
Deepak et al. Design and implementation of AQM evaluation suite for ns-3
US9391852B2 (en) Computer-readable recording medium and information processing apparatus
CN103139004A (en) Method and system for simulating network bandwidth by using network rate-limiting tool
US20150046480A1 (en) Information processing device for executing load evaluation, and load evaluation method
JP5779616B2 (en) QoE evaluation apparatus, QoE evaluation method and program
Uzun et al. End-to-end internet speed analysis of mobile networks with mapReduce
TWI704784B (en) Device, method and non-transitory tangible machine-readable medium for traffic monitoring
JP2018032983A (en) Terminal device and communication monitoring method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13767689

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014507397

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14387030

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 13767689

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE