Performance test method, apparatus, device, and computer storage medium
By determining the test task configuration information and the running status information of the test nodes, the problem of unreliable performance test results in the existing technology is solved, and more reliable performance test results are achieved.
Patent Information
- Application Number
- CN202111624098.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-28
- Publication Date
- 2026-11-03
- Estimated Expiration
- 2041-12-28
AI Technical Summary
Performance test results for object storage in existing technologies are not reliable enough.
By determining the test task configuration information, configuring test nodes to execute test operations, and acquiring and analyzing the running status information of the test nodes, the performance of the object under test can be determined in reverse.
This improves the reliability of performance test results, enabling a comprehensive evaluation of the performance of the tested object from the user's perspective.
Smart Images

Figure CN116361126B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present invention relate to the field of computer data processing technology, specifically to a performance testing method, apparatus, device, and computer storage medium. Background Technology
[0002] Object storage is a storage product that offers massive storage capacity and features high performance, high reliability, security, and low cost. It provides storage services for unstructured data (images, audio / video, text, and other file formats) through the standard S3 / Swift interface, meeting users' needs for managing and accessing data from anywhere via the internet.
[0003] The inventors of this application discovered during the implementation of this invention that the test results for the performance of object storage are not reliable enough. Summary of the Invention
[0004] In view of the above problems, embodiments of the present invention provide a performance testing method to solve the problem that the performance test results in the prior art are not reliable enough.
[0005] According to one aspect of the present invention, a performance testing method is provided, the method comprising: Determine the test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operations, and information about the test nodes. Configure the test node according to the test task configuration information so that the test node can perform the test operation on the object to be tested; Determine the running status information of the test node during the execution of the test operation; The performance test results of the object under test are determined based on the running status information.
[0006] In one alternative approach, the object to be tested includes an object storage server; the information of the object to be tested includes the object address information, object authentication information, and test security configuration information of the object to be tested. The test node configuration information includes the node address information, node authentication information, and test thread configuration information of the test node; The test operation information includes information corresponding to the operation method and operation file for the object under test; wherein, the operation method is used to operate on the operation file.
[0007] In one optional approach, the running status information includes multiple sub-status information; the method further includes: Obtain the node operation data of the test node during the execution of the test operation; The resource usage information of the test node is determined based on the node's operational data; The operational statistics of the test node are determined based on the node's operational data. The sub-state information is determined based on the resource usage information and / or the operation statistics information.
[0008] In one optional approach, the operation statistics include operation quantity information and operation result information; the sub-state information includes operation success rate; the method further includes: The success rate of the operation is determined based on the operation result information and the operation quantity information.
[0009] In one optional embodiment, the operation statistics include operation result information and operation time information; the sub-state information includes operation frequency information; the method further includes: The operation frequency information is determined based on the operation quantity information and the operation time information.
[0010] In one optional approach, the resource usage information includes network traffic information within a preset statistical period; the sub-state information includes bandwidth information; the method further includes: The bandwidth information is determined based on the network traffic and the preset statistical duration.
[0011] In one alternative approach, the number of test nodes is multiple; the method further includes: Based on the running status information of all the test nodes, determine the sub-performance results corresponding to each of the sub-status information items; The performance test results are determined based on all the described sub-performance results.
[0012] According to another aspect of the present invention, a performance testing apparatus is provided, comprising: The first determining module is used to determine the test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node. A configuration module is used to configure the test node according to the test task configuration information, so that the test node can perform the test operation on the object to be tested; The second determining module is used to determine the running status information of the test node during the execution of the test operation; The third determining module is used to determine the performance test results of the object to be tested based on the running status information.
[0013] According to another aspect of the present invention, a performance testing device is provided, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other through the communication bus; The memory is used to store at least one executable instruction that causes the processor to perform operations as described in the performance testing method.
[0014] According to another aspect of the present invention, a computer-readable storage medium is provided, the storage medium storing at least one executable instruction that causes a performance testing device to perform the operation of the performance testing method as described above.
[0015] This invention, through the determination of test task configuration information, including information about the object under test, test operations, and test nodes, configures the test nodes according to the test task configuration information so that the test nodes can perform test operations on the object under test. It then determines the running status information of the test nodes during the execution of the test operations and determines the performance test results of the object under test based on the running status information. This differs from existing technologies where testing a single performance indicator of the object under test leads to incomplete and unreliable performance test results. This invention, by reverse-engineering the running status information of the test nodes themselves, determines the performance of the object under test, thereby enabling a comprehensive evaluation of the object's performance from the user's perspective and improving the reliability of performance test results.
[0016] The above description is merely an overview of the technical solutions of the embodiments of the present invention. In order to better understand the technical means of the embodiments of the present invention and to implement them in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the embodiments of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description
[0017] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings: Figure 1 A flowchart illustrating the performance testing method provided in an embodiment of the present invention is shown; Figure 2 A schematic diagram of the performance testing device provided in an embodiment of the present invention is shown; Figure 3 A schematic diagram of the performance testing equipment provided in an embodiment of the present invention is shown. Detailed Implementation
[0018] Exemplary embodiments of the invention will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention can be implemented in various forms and should not be limited to the embodiments set forth herein.
[0019] Figure 1 A flowchart illustrating a performance testing method provided in an embodiment of the present invention is shown. This method is executed by a computer processing device. The computer processing device may include a mobile phone, a laptop computer, etc. Figure 1 As shown, the method includes the following steps: Step 10: Determine the test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node.
[0020] In one embodiment of the present invention, the object to be tested includes an object storage server. The object to be tested information includes object address information, object authentication information, and test security configuration information; the test node configuration information includes node address information, node authentication information, and test thread configuration information of the test node; the test operation information includes information corresponding to the operation method and operation file for the object to be tested; wherein, the operation method is used to operate on the operation file.
[0021] Specifically, the object address information is used by the test node to access the object under test; the object authentication information includes the access authentication information set for the object under test; the test security configuration information includes whether to enable temporary authentication for the object under test and whether to enable the private link function; the node address information is used to access and configure the test node; the node authentication information includes the node authentication information of the test node, which is used to specifically characterize the test node; the test thread configuration information includes the number of test threads started in the test node and the thread management method; the operation methods include writing, reading, and deleting; and the information corresponding to the operation file includes the file type, number of files, and file size of the file to be tested.
[0022] Step 20: Configure the test node according to the test task configuration information so that the test node can perform the test operation on the object to be tested.
[0023] In one embodiment of the present invention, information about the object to be tested and information about the test operations are sent to the test node corresponding to the information of the test node. After receiving the test task configuration information, the test node starts the performance test program according to the test thread configuration information to operate the object storage server interface and simulate multi-user concurrent operations. The performance test program runs using a multi-process and event-loop-based asynchronous coroutine approach to maintain optimal test performance for each test node on the object storage server under test. If it is necessary to send files to the object storage server under test during the test, pre-generated files in memory can be used to reduce file read time and improve system performance.
[0024] When the object under test enables temporary authentication and private link functionality, the test node first calls the object storage service server's interface to complete temporary authentication and obtain a private link. Then, it uses the temporary authentication and private link to perform the test operations on the object under test. Specifically, the Python SDK provided by the object storage server can be used to simulate multiple users concurrently using the temporary authentication and private link functionality by calling methods such as `get_session_token` and `generate_presigned_url` using multi-process and coroutine methods, thereby achieving the purpose of performance testing.
[0025] In one embodiment of the present invention, multiple test nodes can be configured separately, and each test node can perform test operations in a distributed manner, thereby improving the efficiency of performance testing.
[0026] Step 30: Determine the running status information of the test node during the execution of the test operation.
[0027] Considering that the primary function of an object storage server is to provide data storage services to users, meeting their needs for managing and accessing stored data, the feedback received by users when operating on the data of the object storage server, as well as their own resource usage, can reflect the performance of the object storage server. Therefore, in one embodiment of the present invention, the running status information includes resource usage information of the test node, used to characterize the impact of the test operation on its own resources, and operation statistics information, used to characterize the number, time, and results of the test operations. The running status can be evaluated from multiple dimensions, each corresponding to a performance indicator of the object under test. The performance of the object under test is determined by comprehensively considering all performance indicators.
[0028] Therefore, in another embodiment of the present invention, the running status information includes multiple sub-status information; step 30 further includes: step 301: obtaining the node running data of the test node during the execution of the test operation.
[0029] In one embodiment of the present invention, when the start of the test thread is detected, node running data is acquired. The node running data may include real-time monitoring information of the running thread of the test node and information on the use of computing resources.
[0030] Step 302: Determine the resource usage information of the test node based on the node's operating data.
[0031] In one embodiment of the present invention, resource usage information is used to characterize the resource consumption of the test node itself in order to perform test operations on the object under test. Specifically, resource usage information may include the test node's CPU, memory, hard disk, and network usage information, etc.
[0032] Step 303: Determine the operation statistics of the test node based on the node operation data.
[0033] In one embodiment of the present invention, operational statistics are used to characterize indicators related to the operation during the operation process. Specifically, operational statistics may include information such as the type, time, and result of the test operation performed by the test node.
[0034] Step 304: Determine each of the sub-state information based on the resource usage information and / or the operation statistics information.
[0035] In one embodiment of the present invention, resource usage information and operation statistics information each correspond to at least one sub-state information. Information is extracted from the resource usage information and operation statistics information under preset dimensions. The extracted information is then calculated according to the performance formula corresponding to that dimension to obtain the corresponding sub-state information. For example, the dimensions corresponding to resource usage information may include traffic usage, memory usage, etc. The dimensions corresponding to operation statistics information may include operation results, operation time, and operation quantity, etc.
[0036] Therefore, in another embodiment of the present invention, the operation statistics information includes operation quantity information and operation result information; the sub-state information includes operation success rate; step 304 further includes: Step 3041: Determine the success rate of the operation based on the operation result information and the operation quantity information.
[0037] In one embodiment of the present invention, the operation result information includes the operation result of each test operation, which may be an operation success or an operation failure. The operation quantity information includes the total number of operation requests, and the operation success rate is determined based on the proportion of the number of successful operations to the total number of operation requests.
[0038] In another embodiment of the present invention, the operation statistics information includes operation result information and operation time information; the sub-state information includes operation frequency information; step 304 further includes: Step 3042: Determine the operation frequency information based on the operation quantity information and the operation time information.
[0039] In one embodiment of the present invention, the operation frequency information may be the number of operations per unit time, and the operation time information may be the total running time of the test program of a test node. The operation frequency information is determined based on the ratio of the total number of all operations completed by the test node to the total running time of the test program.
[0040] In another embodiment of the present invention, the resource usage information includes network traffic within a preset statistical period; the sub-state information includes bandwidth information; step 304 further includes: Step 3043: Determine the bandwidth information based on the network traffic and the preset statistical duration.
[0041] In one embodiment of the present invention, network traffic refers to the total network throughput of the test node, and the bandwidth of the test node is determined based on the ratio of network traffic to a preset statistical duration.
[0042] Step 40: Determine the performance test results of the object to be tested based on the running status information.
[0043] In one embodiment of the present invention, the number of test nodes is multiple; Step 40 further includes: Step 401: Determine the sub-performance results corresponding to each of the sub-state information based on the running status information of all the test nodes.
[0044] In one embodiment of the present invention, a sub-state information can be regarded as a sub-performance indicator. Therefore, the sub-performance result corresponding to the sub-state information is obtained by averaging the running state information of all test nodes under each sub-state information.
[0045] Step 402: Determine the performance test result based on all the sub-performance results.
[0046] In one embodiment of the present invention, the performance test results are obtained by weighted summation of all sub-performance results according to the index weights corresponding to each sub-state information.
[0047] In another embodiment of the present invention, considering that test nodes may encounter problems affecting their normal operation during operation, the test node monitoring module records the problem, restarts the test node, reruns the test task, and simultaneously sends the problem to the task management center. The task management center is used for load balancing and task allocation for test nodes.
[0048] The performance testing method provided in this embodiment of the invention determines test task configuration information, which includes information about the object to be tested, information about test operations, and information about test nodes. The test nodes are configured according to the test task configuration information so that they can perform test operations on the object to be tested. The running status information of the test nodes during the execution of the test operations is determined. The performance test result of the object to be tested is determined based on the running status information.
[0049] This differs from existing technologies where testing a single performance indicator of the test object leads to incomplete and unreliable performance test results. The performance testing method provided in this invention determines the performance of the test object by reverse-engineering the running status information of the test node itself, thereby enabling a comprehensive evaluation of the test object's performance from the user's perspective and improving the reliability of performance test results.
[0050] Figure 2 A schematic diagram of the performance testing apparatus provided in an embodiment of the present invention is shown. Figure 2 As shown, the device 50 includes: a first determining module 501, a configuration module 502, a second determining module 503, and a third determining module 504, wherein the first determining module 501 is used to determine test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node; The configuration module 502 is used to configure the test node according to the test task configuration information, so that the test node can perform the test operation on the object to be tested; The second determining module 503 is used to determine the running status information of the test node during the execution of the test operation; The third determining module 504 is used to determine the performance test result of the object to be tested based on the running status information.
[0051] In one alternative approach, the object to be tested includes an object storage server; the information of the object to be tested includes the object address information, object authentication information, and test security configuration information of the object to be tested. The test node configuration information includes the node address information, node authentication information, and test thread configuration information of the test node; The test operation information includes information corresponding to the operation method and operation file for the object under test; wherein, the operation method is used to operate on the operation file.
[0052] In one optional embodiment, the operating status information includes multiple sub-status information; the second determining module 503 is further configured to: Obtain the node operation data of the test node during the execution of the test operation; The resource usage information of the test node is determined based on the node's operational data; The operational statistics of the test node are determined based on the node's operational data. The sub-state information is determined based on the resource usage information and / or the operation statistics information.
[0053] In one optional embodiment, the operation statistics information includes operation quantity information and operation result information; the sub-state information includes operation success rate; the second determining module 503 is further configured to: The success rate of the operation is determined based on the operation result information and the operation quantity information.
[0054] In one optional embodiment, the operation statistics information includes operation result information and operation time information; the sub-state information includes operation frequency information; the second determining module 503 is further configured to: The operation frequency information is determined based on the operation quantity information and the operation time information.
[0055] In one optional embodiment, the resource usage information includes network traffic information within a preset statistical period; the sub-state information includes bandwidth information; the second determining module 503 is further configured to: The bandwidth information is determined based on the network traffic and the preset statistical duration.
[0056] In one alternative approach, the number of test nodes is multiple; the third determining module 504 is further configured to: Based on the running status information of all the test nodes, determine the sub-performance results corresponding to each of the sub-status information items; The performance test results are determined based on all the described sub-performance results.
[0057] The performance testing apparatus provided in this embodiment of the invention determines test task configuration information, wherein the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node; configures the test node according to the test task configuration information so that the test node performs test operation on the object to be tested; determines the running status information of the test node during the execution of the test operation; and determines the performance test result of the object to be tested based on the running status information.
[0058] This differs from existing technologies where testing a single performance indicator of the test object leads to incomplete and unreliable performance test results. The performance testing device provided in this embodiment of the invention determines the performance of the test object by reverse-engineering the running status information of the test node itself, thereby enabling a comprehensive evaluation of the performance of the test object from the user's perspective and improving the reliability of performance test results.
[0059] Figure 3 The diagram shows a structural schematic of a performance testing device provided in an embodiment of the present invention. The specific embodiments of the present invention do not limit the specific implementation of the performance testing device.
[0060] like Figure 3 As shown, the performance testing device may include: a processor 602, a communications interface 604, a memory 606, and a communications bus 608.
[0061] The processor 602, communication interface 604, and memory 606 communicate with each other via communication bus 608. Communication interface 604 is used to communicate with other network elements such as clients or other servers. The processor 602 executes program 610, specifically performing the relevant steps described in the performance testing method embodiment.
[0062] Specifically, program 610 may include program code, which includes computer-executable instructions.
[0063] Processor 602 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The performance testing equipment includes one or more processors, which may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.
[0064] Memory 606 is used to store program 610. Memory 606 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0065] Specifically, program 610 can be called by processor 602 to cause the performance testing device to perform the following operations: Determine the test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operations, and information about the test nodes. Configure the test node according to the test task configuration information so that the test node can perform the test operation on the object to be tested; Determine the running status information of the test node during the execution of the test operation; The performance test results of the object under test are determined based on the running status information.
[0066] In one alternative approach, the object to be tested includes an object storage server; the information of the object to be tested includes the object address information, object authentication information, and test security configuration information of the object to be tested. The test node configuration information includes the node address information, node authentication information, and test thread configuration information of the test node; The test operation information includes information corresponding to the operation method and operation file for the object under test; wherein, the operation method is used to operate on the operation file.
[0067] In an alternative embodiment, the running status information includes multiple sub-status information; the program 610 is invoked by the processor 602 to cause the performance testing device to perform the following operations: Obtain the node operation data of the test node during the execution of the test operation; The resource usage information of the test node is determined based on the node's operational data; The operational statistics of the test node are determined based on the node's operational data. The sub-state information is determined based on the resource usage information and / or the operation statistics information.
[0068] In one optional manner, the operation statistics include operation quantity information and operation result information; the sub-state information includes operation success rate; the program 610 is invoked by the processor 602 to cause the performance testing device to perform the following operations: The success rate of the operation is determined based on the operation result information and the operation quantity information.
[0069] In one optional manner, the operation statistics include operation result information and operation time information; the sub-state information includes operation frequency information; the program 610 is invoked by the processor 602 to cause the performance testing device to perform the following operations: The operation frequency information is determined based on the operation quantity information and the operation time information.
[0070] In one optional manner, the resource usage information includes network traffic information within a preset statistical period; the sub-state information includes bandwidth information; the program 610 is invoked by the processor 602 to cause the performance testing device to perform the following operations: The bandwidth information is determined based on the network traffic and the preset statistical duration.
[0071] In one alternative approach, the number of test nodes is multiple; the program 610 is invoked by the processor 602 to cause the performance testing device to perform the following operations: Based on the running status information of all the test nodes, determine the sub-performance results corresponding to each of the sub-status information items; The performance test results are determined based on all the described sub-performance results.
[0072] The performance testing device provided in this embodiment of the invention determines test task configuration information, wherein the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node; configures the test node according to the test task configuration information so that the test node performs test operation on the object to be tested; determines the running status information of the test node during the execution of the test operation; and determines the performance test result of the object to be tested based on the running status information.
[0073] This differs from existing technologies where testing a single performance indicator of the test object leads to incomplete and unreliable performance test results. The performance testing equipment provided in this invention determines the performance of the test object by reverse-engineering the operating status information of the test node itself, thereby enabling a comprehensive evaluation of the test object's performance from the user's perspective and improving the reliability of performance test results.
[0074] This invention provides a computer-readable storage medium storing at least one executable instruction that, when executed on a performance testing device, causes the performance testing device to perform the performance testing method described in any of the above method embodiments.
[0075] Specifically, the executable instructions can be used to cause the performance testing equipment to perform the following operations: Determine the test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operations, and information about the test nodes. Configure the test node according to the test task configuration information so that the test node can perform the test operation on the object to be tested; Determine the running status information of the test node during the execution of the test operation; The performance test results of the object under test are determined based on the running status information.
[0076] In one alternative approach, the object to be tested includes an object storage server; the information of the object to be tested includes the object address information, object authentication information, and test security configuration information of the object to be tested. The test node configuration information includes the node address information, node authentication information, and test thread configuration information of the test node; The test operation information includes information corresponding to the operation method and operation file for the object under test; wherein, the operation method is used to operate on the operation file.
[0077] In one alternative approach, the operating status information includes multiple sub-status information; the executable instructions cause the performance testing equipment to perform the following operations: Obtain the node operation data of the test node during the execution of the test operation; The resource usage information of the test node is determined based on the node's operational data; The operational statistics of the test node are determined based on the node's operational data. The sub-state information is determined based on the resource usage information and / or the operation statistics information.
[0078] In one optional approach, the operation statistics include operation quantity information and operation result information; the sub-state information includes operation success rate; and the executable instruction causes the performance testing device to perform the following operations: The success rate of the operation is determined based on the operation result information and the operation quantity information.
[0079] In one optional embodiment, the operation statistics include operation result information and operation time information; the sub-state information includes operation frequency information; and the executable instruction causes the performance testing device to perform the following operations: The operation frequency information is determined based on the operation quantity information and the operation time information.
[0080] In one optional approach, the resource usage information includes network traffic information within a preset statistical period; the sub-state information includes bandwidth information; and the executable instruction causes the performance testing device to perform the following operations: The bandwidth information is determined based on the network traffic and the preset statistical duration.
[0081] In one alternative approach, the number of test nodes is multiple; the executable instructions cause the performance testing device to perform the following operations: Based on the running status information of all the test nodes, determine the sub-performance results corresponding to each of the sub-status information items; The performance test results are determined based on all the described sub-performance results.
[0082] The computer storage medium provided in this embodiment of the invention determines test task configuration information; wherein, the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node; the test node is configured according to the test task configuration information so that the test node performs test operation on the object to be tested; the running status information of the test node during the execution of the test operation is determined; and the performance test result of the object to be tested is determined according to the running status information.
[0083] This invention differs from existing technologies where testing a single performance indicator of the test object leads to incomplete and unreliable performance test results. The computer storage medium provided in this embodiment of the invention determines the performance of the test object by inversely using the running status information of the test node itself. This allows for a comprehensive evaluation of the performance of the test object from the user's perspective, thereby improving the reliability of performance test results.
[0084] This invention provides a performance testing apparatus for performing the above-described performance testing method.
[0085] This invention provides a computer program that can be invoked by a processor to cause a performance testing device to execute the performance testing method described in any of the above method embodiments.
[0086] This invention provides a computer program product, which includes a computer program stored on a computer-readable storage medium. The computer program includes program instructions that, when executed on a computer, cause the computer to perform the performance testing method described in any of the above method embodiments.
[0087] The algorithms or displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings herein. The required structure for constructing such systems is apparent from the above description. Furthermore, the embodiments of the present invention are not directed to any particular programming language. It should be understood that the content of the invention described herein can be implemented using various programming languages, and the above description of specific languages is for the purpose of disclosing the best mode of implementation of the invention.
[0088] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.
[0089] Similarly, it should be understood that, in order to streamline the invention and aid in understanding one or more of the various aspects of the invention, features of the embodiments of the invention are sometimes grouped together in a single embodiment, figure, or description thereof in the above description of exemplary embodiments of the invention. However, this disclosure should not be construed as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim.
[0090] Those skilled in the art will understand that modules in the device of the embodiments can be adaptively changed and placed in one or more devices different from that embodiment. Modules, units, or components in the embodiments can be combined into a single module, unit, or component, and can be divided into multiple sub-modules, sub-units, or sub-components. Except where at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or device so disclosed. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature that serves the same, equivalent, or similar purpose.
[0091] It should be noted that the above embodiments are illustrative of the invention and not restrictive, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be construed as limiting the order of execution.
Claims
1. A performance testing method, characterized in that, The method includes: The test task configuration information is determined; the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node, wherein the object to be tested includes an object storage server; the test node configuration information includes the node address information, node authentication information, and test thread configuration information of the test node; The test node is configured according to the test task configuration information so that the test node can perform the test operation on the object to be tested. The test node starts the performance test program according to the test thread configuration information to operate on the object storage server interface and simulate multi-user concurrent operation. The performance test program runs in a multi-process and event loop-based asynchronous coroutine mode. Determine the running status information of the test node during the execution of the test operation, wherein the running status information includes the resource usage information and operation statistics information of the test node; The performance test results of the object under test are determined based on the running status information.
2. The method according to claim 1, characterized in that, The information of the object to be tested includes the object address information, object authentication information, and test security configuration information of the object to be tested. The test operation information includes information corresponding to the operation method and operation file for the object under test; wherein, the operation method is used to operate on the operation file.
3. The method according to claim 1, characterized in that, The operational status information includes multiple sub-status information; determining the operational status information of the test node during the execution of the test operation includes: Obtain the node operation data of the test node during the execution of the test operation; The resource usage information of the test node is determined based on the node's operational data; The operational statistics of the test node are determined based on the node's operational data. The sub-state information is determined based on the resource usage information and / or the operation statistics information.
4. The method according to claim 3, characterized in that, The operation statistics include operation quantity information and operation result information; the sub-status information includes operation success rate; determining the sub-status information based on the resource usage information and / or the operation statistics includes: The success rate of the operation is determined based on the operation result information and the operation quantity information.
5. The method according to claim 3, characterized in that, The operation statistics include operation quantity information and operation time information; the sub-state information includes operation frequency information; determining the sub-state information based on the resource usage information and / or the operation statistics includes: The operation frequency information is determined based on the operation quantity information and the operation time information.
6. The method according to claim 3, characterized in that, The resource usage information includes network traffic information within a preset statistical period; the sub-state information includes bandwidth information; determining the sub-state information based on the resource usage information and / or the operation statistics information includes: The bandwidth information is determined based on the network traffic and the preset statistical duration.
7. The method according to claim 3, characterized in that, The number of test nodes is multiple; determining the performance test result of the object under test based on the running status information includes: Based on the running status information of all the test nodes, determine the sub-performance results corresponding to each of the sub-status information items; The performance test results are determined based on all the described sub-performance results.
8. A performance testing device, characterized in that, The device includes: The first determining module is used to determine the test task configuration information; the test task configuration information includes information about the object to be tested, information about the test operation, and information about the test node, wherein the object to be tested includes an object storage server; the test node configuration information includes the node address information, node authentication information, and test thread configuration information of the test node; The configuration module is used to configure the test node according to the test task configuration information, so that the test node can perform the test operation on the object to be tested. The test node starts the performance test program according to the test thread configuration information to operate on the object storage server interface and simulate multi-user concurrent operation. The performance test program runs in a multi-process and event loop-based asynchronous coroutine mode. The second determining module is used to determine the running status information of the test node during the execution of the test operation, wherein the running status information includes the resource usage information and operation statistics information of the test node; The third determining module is used to determine the performance test results of the object to be tested based on the running status information.
9. A performance testing device, characterized in that, include: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform the operation of the performance testing method as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The storage medium stores at least one executable instruction, which, when executed on the performance testing device, causes the performance testing device to perform the operation of the performance testing method as described in any one of claims 1-7.
Citation Information
Patent Citations
Real-time monitoring method for test data of server performance pressure test
CN110727564A
