Pressure measurement data processing method and device and storage medium

By initializing global statistics in a large-scale distributed data system and periodically accumulating indicator data in the pressurized test task, the problem of low data collection and analysis efficiency is solved, real-time data feedback of cluster equipment is realized, and data processing is improved accuracy and timeliness.

CN119166447APending Publication Date: 2024-12-20BEIJING XIAOMI MOBILE SOFTWARE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310739311.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-20
Publication Date
2024-12-20

AI Technical Summary

Technical Problem

In the existing technology, in large-scale distributed data systems, the acquisition and calculation and analysis of pressure measurement data is low, and real-time feedback of data and indicators of cluster equipment faces challenges during performance monitoring.

Method used

By initializing the global statistical class, periodically obtain and accumulate multi-class indicator data in the pressure measurement task, generate incremental data, and push it to the pressure measurement management server to realize real-time merge and feedback of data.

Benefits of technology

It improves the efficiency of stress testing data acquisition and analysis of large-scale distributed data systems, realizes real-time data feedback of cluster equipment during performance monitoring, and improves the accuracy and timeliness of data processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119166447A_ABST
    Figure CN119166447A_ABST
Patent Text Reader

Abstract

The invention relates to a pressure measurement data processing method and device and a storage medium. The pressure measurement data processing method comprises the steps that a global statistical class is initialized, and the global statistical class comprises multiple types of indexes for executing pressure measurement tasks; periodically acquiring data of various indexes in the global statistical class; in response to the acquired data of any type of indexes in the global statistical class, performing data accumulation on the acquired index data corresponding to the same type of index data in the same period to obtain incremental data; and pushing the incremental data obtained in the same period to a pressure measurement management server. According to the invention, the collection and calculation analysis efficiency of the test data of the pressure test system can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of performance testing and performance monitoring, and in particular to a stress testing data processing method, device and storage medium. Background Art

[0002] With the increasing popularity and diversification of Internet applications, the demand for performance testing and performance monitoring is increasing. For some high-traffic, high-availability Internet applications, large-scale performance testing and performance monitoring must be carried out to ensure their stability and availability.

[0003] However, for large-scale distributed data systems, the collection and calculation and analysis efficiency of test data obtained by stress testing of cluster devices composed of multiple single machines in the system is low. At the same time, the real-time feedback of various data and indicators of cluster devices during performance monitoring also faces challenges. Summary of the invention

[0004] In order to overcome the problems existing in the related art, the present disclosure provides a stress test data processing method, device and storage medium.

[0005] According to a first aspect of an embodiment of the present disclosure, a stress testing data processing method is provided, which is applied to a stress testing machine server, and the method includes: initializing a global statistical class, the global statistical class including multiple types of indicators for performing stress testing tasks; periodically obtaining data of each type of indicator in the global statistical class; in response to the obtained data of any type of indicator in the global statistical class, accumulating data of the obtained indicator data corresponding to the same type of indicator data within the same period to obtain incremental data; and pushing the incremental data obtained within the same period to the stress testing management server.

[0006] In one embodiment, the initialization of the global statistical class includes: in response to receiving a stress testing task sent by a stress testing management server, determining multiple types of indicators in the global statistical class according to the stress testing task; allocating the stress testing task and the multiple types of indicators corresponding to the stress testing task to a single machine that executes the task, triggering the single machine to execute the stress testing task, and generating initialization indicator data for the multiple types of indicators.

[0007] In one embodiment, the acquired indicator data and corresponding indicator data of the same type are accumulated within the same period to obtain incremental data, including: determining the class indicator of the acquired indicator data; in the coroutine corresponding to the execution call of the class indicator, accumulating the corresponding indicator data of the class in the same period for all stress testing tasks that generate the class indicator; accumulating the corresponding indicator class data of all stress testing tasks that generate the class indicator and determining it as the incremental data of the class indicator within the same period.

[0008] In one embodiment, the method also includes: in response to pushing the incremental data to the stress testing management server, clearing the incremental data corresponding to the acquired class indicator in the global statistics class, and re-accumulating data for the acquired indicator data corresponding to the same type of indicator data within the same period.

[0009] According to a second aspect of an embodiment of the present disclosure, a stress test data processing method is provided, which is applied to a stress test management server, and the method includes: receiving incremental data sent by a stress test server, the incremental data being data obtained by accumulating similar indicator data within the same cycle; merging the incremental data with cached indicator data to obtain merged similar indicator data; and pushing the merged similar indicator data to a front end.

[0010] In one embodiment, the method further includes: sending a stress testing task, wherein the stress testing task is used to determine multiple types of indicators in a global statistical class and is used to initialize the global statistical class.

[0011] According to a third aspect of an embodiment of the present disclosure, a stress testing data processing device is provided, characterized in that it is applied to a stress testing server, and the device includes: a processing unit, used to initialize a global statistical class, wherein the global statistical class includes multiple types of indicators for performing stress testing tasks; a receiving unit, used to periodically obtain data of various types of indicators in the global statistical class; the processing unit is also used to respond to the obtained data of any type of indicator in the global statistical class, and to accumulate the obtained indicator data corresponding to the same type of indicator data within the same period to obtain incremental data; a sending unit, used to push the incremental data obtained within the same period to the stress testing management server.

[0012] In one embodiment, the processing unit initializes the global statistical class in the following manner: in response to receiving a stress testing task sent by a stress testing management server, determining multiple categories of indicators in the global statistical class according to the stress testing task; allocating the stress testing task and the multiple categories of indicators corresponding to the stress testing task to a single machine that executes the task, triggering the single machine to execute the stress testing task, and generating initialization indicator data for the multiple categories of indicators.

[0013] In one embodiment, the processing unit accumulates the acquired indicator data corresponding to the same type of indicator data in the same cycle to obtain incremental data in the following manner: determine the class indicator of the acquired indicator data; in the coroutine corresponding to the execution call of the class indicator, accumulate the corresponding class indicator data for all stress testing tasks that generate the class indicator in the same cycle; accumulate the corresponding indicator class data of all stress testing tasks that generate the class indicator and determine it as the incremental data of the class indicator in the same cycle.

[0014] In one embodiment, the processing unit is also used to: in response to pushing the incremental data to the stress testing management server, clear the incremental data corresponding to the acquired class indicator in the global statistical class, and re-accumulate the acquired indicator data corresponding to the same type of indicator data within the same period.

[0015] According to a fourth aspect of an embodiment of the present disclosure, a stress test data processing device is provided, which is applied to a stress test management server, and the device includes: a receiving unit, which is used to receive incremental data sent by a stress test server, and the incremental data is data obtained by accumulating similar indicator data within the same cycle; a processing unit, which is used to merge the incremental data with the cached indicator data to obtain merged similar indicator data; and a pushing unit, which is used to push the merged similar indicator data to the front end.

[0016] In one implementation, the push unit is further used to: send a stress testing task, where the stress testing task is used to determine multiple types of indicators in a global statistical class and is used to initialize the global statistical class.

[0017] According to a fifth aspect of an embodiment of the present disclosure, a stress test data processing device is provided, characterized in that it includes: a processor; a memory for storing processor executable instructions; wherein the processor is configured to: execute the stress test data processing method described in the first and second aspects or any one of the embodiments of the first and second aspects.

[0018] According to a sixth aspect of an embodiment of the present disclosure, a storage medium is provided, characterized in that the storage medium stores instructions, and when the instructions are executed by a processor in a terminal, the terminal is able to execute the stress testing data processing method described in the first and second aspects or any one of the embodiments of the first and second aspects.

[0019] The technical solution provided by the embodiments of the present disclosure may include the following beneficial effects: Through the present disclosure, the collection and calculation analysis of cluster device test data composed of multiple single machines in a large-scale distributed data system can improve the efficiency of data collection and analysis by confirming incremental data. At the same time, various data and indicators of cluster devices can also be fed back in real time during performance monitoring.

[0020] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0022] Figure 1aIt is a schematic diagram of an application scenario of a stress testing data processing method proposed in the present disclosure.

[0023] Figure 1b The present invention is a flowchart of a stress test data processing method applied to a stress tester server according to an exemplary embodiment.

[0024] Figure 2a The figure is a flowchart of initializing a global statistics class according to an exemplary embodiment.

[0025] Figure 2b It is a schematic diagram of a global statistics class according to an exemplary embodiment.

[0026] Figure 3a The invention is a flowchart of obtaining incremental data according to an exemplary embodiment.

[0027] Figure 3b The figure is a schematic diagram showing a method of acquiring incremental data according to an exemplary embodiment.

[0028] Figure 4 The invention is a flowchart of processing incremental data according to an exemplary embodiment.

[0029] Figure 5 The present invention is a flowchart of a stress testing data processing method applied to a stress testing management server according to an exemplary embodiment.

[0030] Figure 6 The figure is a flowchart of sending a stress testing task according to an exemplary embodiment.

[0031] Figure 7 The diagram is a schematic diagram showing the interaction between a stress test server and a stress test management server according to an exemplary embodiment.

[0032] Figure 8 The present invention is a block diagram of a stress test data processing device applied to a stress test server according to an exemplary embodiment.

[0033] Fig. 9 The present invention is a block diagram showing a stress test data processing device applied to a stress test management server according to an exemplary embodiment.

[0034] Fig.10 The figure is a block diagram of a stress test data processing device according to an exemplary embodiment.

[0035] Fig.11 The figure is a block diagram of a stress test data processing device according to an exemplary embodiment. DETAILED DESCRIPTION

[0036] Here, exemplary embodiments will be described in detail, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present disclosure.

[0037] The stress test data processing method provided by the present invention can be applied to scenarios that require high-concurrency stress testing and real-time monitoring of stress test results or real-time analysis of big data, such as large e-commerce platforms, financial systems, games and other Internet applications, as well as monitoring systems, real-time log analysis, etc.

[0038] A distributed system is a system composed of multiple independent computer nodes that communicate and collaborate through network protocols to complete some complex tasks or services. Distributed systems are characterized by high availability, scalability, fault tolerance, flexibility and other advantages, so they are widely used in large-scale enterprise applications, Internet services, scientific computing and other fields. Common distributed systems include cloud computing, big data processing, distributed databases, distributed file systems, etc. A distributed cluster refers to a cluster composed of multiple computing nodes that collaborate through network communication to complete some tasks or services. Distributed clusters are characterized by high availability, high performance, scalability, fault tolerance and other advantages, and can play an important role in processing large-scale data and high concurrent access.

[0039] In view of this, the embodiment of the present disclosure provides a stress test data processing method, which can initialize the global statistical class and obtain the corresponding global statistical class data according to the stress test task. According to the data obtained from the global statistical class, the incremental data is determined and pushed. The stress test data processing method described in the embodiment of the present disclosure has high fault tolerance, high flexibility, and improves the stress test efficiency. At the same time, it can solve the problems of data accuracy, real-time, visualization, etc. in the existing stress test pressure testing tool Jmeter (a stress testing tool).

[0040] In one embodiment, if Figure 1aAs shown, the stress test data processing method proposed in the present disclosure can be applied to situations where high-concurrency stress testing is required and the results are monitored in real time, or where real-time analysis of big data scenarios is required. Among them, the visualization platform is a user management interface, and the user can configure the stress test task information through the visualization platform and submit the stress test task information to the stress test management server. The configured data information, such as scene arrangement, stress configuration RPS, data source, traffic recording and other data information, is used as scene / interface / data source data. Among them, the scene / interface / data source data is used to determine the working status of the distributed cluster in the stress test service, including the configuration information of each end during the stress test, the interface configuration information of each cluster, the configuration of each cluster interaction or other working status configuration information. Among them, the traffic recording includes gateway traffic records, which can record data information such as network speed. The above-mentioned scene / interface / data source data is loaded with scene information data through the stress test service manager to configure the transmitter server that performs the stress test task in combination with the stress test task. The above-mentioned scene / interface / data source data is loaded on the distributed data source through the transmitter server to determine the various indicator data of the target service data. Among them, the transmitter server is a transmitter cluster composed of multiple transmitters. The stress test management server performs the generation and distribution of the stress test task based on the received stress test task information, and distributes the generated stress test task to the stress test server (stress test cluster) composed of multiple stress test machines. Among them, the stress test machine binding can be used to confirm the number of machines called by this stress test task, the interface arrangement can determine the calling interface, the number of coroutines or other data information of the coroutine used in this stress test task, and the generation of the stress test task includes determining the multiple types of indicator data that the stress test machine needs to obtain and the task content executed by the bound single machine during the stress test. That is, the generated stress test task contains multiple indicators that call the stress test machine server in this stress test. Among them, the stress test management server and the stress test machine server are jointly constructed into a stress test machine engine for stress test data processing. The stress test machine server requests the target service data that needs to be stress tested, obtains the required corresponding indicator data through multiple coroutines according to the stress test task, and performs the corresponding stress test. Among them, the target service data can include inventory, settlement, order and other data. The stress test management server receives the stress test data reported periodically / in real time by the stress test server, merges and analyzes the real-time stress test data with the recorded stress test data, and pushes it to the visualization platform, which provides feedback to the user. The visualization platform can generate a real-time / final report based on the stress test data processed by the stress test management server. The real-time / final report can be displayed in the form of a chart, text, or other methods.

[0041] In one embodiment, Figure 1aThe cluster systems in the system can be connected via wired or wireless networks to achieve data transmission.

[0042] The stress testing data processing method provided in the present disclosure is mainly applied to the stress testing data processing link of the above-mentioned stress testing machine engine, that is, the test data collection and calculation and analysis link.

[0043] The stress test data processing method proposed in the embodiment of the present disclosure can also be extended to other technical fields, especially in the fields of large-scale distributed systems and cloud computing, where the demand for real-time data collection and analysis is very common. For example, in the deployment and operation of cloud-native applications, it is necessary to monitor the performance and availability of applications in real time, and perform automatic expansion and contraction, failover and other operations based on the monitoring data. Therefore, similar data collection, aggregation and analysis solutions also have broad application prospects in these fields.

[0044] In one implementation, in the stress test data processing method provided by the embodiment of the present disclosure, according to the stress test task, the global statistics class is initialized, the data of the global statistics class is periodically obtained, and the corresponding class indicator data is accumulated according to any class of indicator data obtained to obtain incremental data, and the incremental data is sent to the stress test management server. The stress test data processing method applied to the stress test server is described in detail below.

[0045] Figure 1b FIG. 1 is a flowchart of a stress test data processing method applied to a stress test server according to an exemplary embodiment. Figure 1b The stress test data processing method shown is applied to a stress test server and includes the following steps.

[0046] In step S11, the global statistics class is initialized, and the global statistics class includes multiple types of indicators for performing stress testing tasks.

[0047] In the disclosed embodiment, the global statistics class is used to record the data that needs to be obtained during the stress testing task, classify the data, that is, multiple indicators, and enter the data into the various indicators in the global statistics class. Among them, each indicator is independent, and each indicator can only enter the data corresponding to the same indicator.

[0048] In step S12, data of various indicators in the global statistics category are periodically obtained.

[0049] In the disclosed embodiment, various indicator data are periodically acquired to input the statistics of various indicator data into a global statistics class and to acquire incremental data.

[0050] In step S13, in response to the acquired data of any type of indicators in the global statistics class, data accumulation is performed on the acquired indicator data corresponding to the same type of indicator data within the same period to obtain incremental data.

[0051] In the embodiment of the present disclosure, the incremental data is the result of accumulating multiple types of indicator data corresponding to the same type of indicator data in the same cycle. The incremental data represents the current working state of the compressor server in a cycle. The cycle is determined by the above step S12 process.

[0052] In step S14, the incremental data obtained in the same cycle is pushed to the stress testing management server.

[0053] In the disclosed embodiment, the obtained incremental data is periodically pushed to the stress test management server, and the stress test management server performs subsequent processing, wherein the same period is the same as the period for obtaining the global statistical data in step S12.

[0054] In the disclosed embodiment, multiple types of indicators for subsequent stress test data processing are determined by initializing the global statistics class to ensure that data will not be recorded incorrectly and improve accuracy. Data is acquired periodically to ensure the timeliness of stress test data processing. Incremental data is acquired and pushed to ensure that data in the current cycle can be processed in a timely manner.

[0055] In the disclosed embodiment, the global statistics class is initialized, the global statistics class data is obtained, the incremental data is obtained by accumulating the global statistics class data, and the incremental data is sent to the stress test management server. Among them, initializing the global statistics class is a prerequisite for stress test data processing in the above embodiment. The following describes how to initialize the global statistics class.

[0056] Figure 2a The figure is a flowchart of initializing a global statistics class according to an exemplary embodiment.

[0057] In step S21, in response to receiving a stress testing task sent by the stress testing management server, multiple types of indicators in the global statistical class are determined according to the stress testing task.

[0058] In the embodiment of the present disclosure, the stress test task includes multiple types of indicators that need to be stress tested, and initializing the global statistics class is to determine the multiple types of indicators in the global statistics class according to the stress test task sent by the stress test manager. Receiving the stress test task is a prerequisite for initializing the global statistics class.

[0059] In step S22, the stress testing task and the multiple types of indicators corresponding to the stress testing task are allocated to a single machine that executes the task, the single machine is triggered to execute the stress testing task, and initialization indicator data of the multiple types of indicators are generated.

[0060] In the disclosed embodiment, the stress test task includes determining the number of multiple stand-alone machines that perform the stress test task, and the multiple stand-alone machines generate initialization indicator data of multiple types of indicators according to the stress test task. Among them, the number of stand-alone machines and the initialization indicator data of multiple stand-alone machines can be recorded in the data of the global statistics class, so as to complete the initialization of multiple types of indicator data of the global statistics class.

[0061] In the disclosed embodiment, multiple types of indicators are determined according to the stress testing task, and the data in the multiple types of indicators in the global statistical class are initialized, so that the global statistical class can be reused during the stress testing data processing, thereby improving the efficiency of stress testing data processing.

[0062] Figure 2b It is a schematic diagram of a global statistics class according to an exemplary embodiment.

[0063] like Figure 2b As shown in FIG. 1 , the global statistics class includes multiple types of indicators, wherein each type of indicator is used to record the data of the corresponding type of indicator.

[0064] In one implementation, the global statistics may include the number of machines used in this stress test, the number of error calls in all scenarios, counters, and other indicators. For example, in the full-scenario data, the number of error calls in all scenarios can be obtained by the number of stress machines and the number of error calls on a single machine. Based on the same or similar reasons, other full-scenario indicators can also be obtained by the same principle.

[0065] Based on the operating status of the pressure machine server, it is necessary to perform some calculations such as summarization, accumulation, and averaging on the data collected by each machine to obtain the overall indicator data. In the embodiment of the present disclosure, when initializing the global statistics class, according to the multiple indicators of the global statistics class, it is also necessary to obtain the incremental data during the pressure test. The following describes how to obtain the incremental data.

[0066] Figure 3a The invention is a flowchart of obtaining incremental data according to an exemplary embodiment.

[0067] In step S31, the class index of the acquired index data is determined.

[0068] In the disclosed embodiment, the class index of the acquired index data is first determined, and then the index data is processed according to the search class index.

[0069] In step S32, in the coroutine corresponding to the execution call of the class indicator, the corresponding class indicator data are accumulated in the same cycle for all stress testing tasks that generate the class indicator.

[0070] In the disclosed embodiment, the calling condition of the coroutine is determined by the pressure machine server according to its own operation condition. The coroutine includes one or more coroutines. In each coroutine, the corresponding class indicator data of the same cycle in the pressure test task is accumulated.

[0071] In step S33, the corresponding indicator class data of all stress testing tasks that generate class indicators are accumulated and determined as the incremental data of the class indicators in the same period.

[0072] In the disclosed embodiment, the corresponding class indicator data accumulation is the result of accumulating the corresponding class indicator data through the coroutine. The corresponding class indicator data accumulation represents the current working state of the transmitter server within a cycle, that is, the incremental data. The incremental data of the class indicator within the same cycle includes multiple class indicators and indicator data corresponding to all stress testing tasks. Among them, the coroutine is a lightweight thread, which is a carrier for executing a specific request call.

[0073] In the disclosed embodiment, by determining the class indicators of the indicator data, the class indicator data within the same cycle is accumulated in one or more coroutines, and all the class indicator data are accumulated and determined as incremental data, thereby improving the collection and analysis efficiency of stress testing data processing.

[0074] Figure 3b The figure is a schematic diagram showing a method of acquiring incremental data according to an exemplary embodiment.

[0075] As shown in 3b, the global statistics class is determined and called by the stress test task. The counter is used to count and accumulate the counting indicator data, and the average value of the response time indicator data is calculated. The counting accumulation and average calculation results are combined to obtain the incremental data. Among them, the incremental data will be recorded by the global statistics class and subsequently processed.

[0076] In one embodiment, within a cycle, after receiving the stress test task, the client executes and calls the global statistics class and enters the coroutine. Among them, a cycle is a certain time interval, for example, the incremental data can be recorded every 5 seconds, and the incremental data in the same cycle is the summary of all indicator data within 5 seconds. In this embodiment, the cycle can also be other time intervals, which can be changed according to actual conditions. In the coroutine, the counting indicator data in the global statistics class is accumulated according to its own interface number and call situation, and the response time data is averaged. According to the response time mean data and the accumulated counting indicator data, the incremental data generated in the coroutine is recorded in the global statistics class. For example, currently two pressure machines are used for stress testing. Each request issued by each pressure machine will be +1 in the total number of requests maintained in the local memory. After reaching the time period (for example, 10 seconds), if the number of statistics of machine A is a and the number of statistics of machine B is b, then the total number of requests of the two machines within 10 seconds is a+b times. A+b times are used as the accumulated counter indicator data of A and B compressors within this 10s period. Among them, the period in the above implementation can also be other period intervals other than 10s, and the number of compressors can also be any number. Among them, the counter can be used to count multiple types of indicator data, such as the number of full-scene compression requests, the number of full-scene successes, the number of full-scene error calls, or other counting indicator data that need to record the number of times.

[0077] In one implementation, for data that require average calculation, average calculation is performed. For example, the average response time of a transmitter and compressor. If two transmitters and compressors are used in a task, then one of them collects an average response time of 2s for the target service during the task execution, and the other collects an average response time of 4s. After aggregation, the overall average response time can be 3s. The number of transmitters and compressors can also be other numbers, and the average response time of each transmitter and compressor can also be other durations. Incremental data can also include other types of indicator data in addition to the total number of requests and the average response time.

[0078] In one implementation manner, the total number of requests and the average response time in the above embodiment may be respectively entered as indicator data into the total number of requests and average response time indicators of the global statistics category.

[0079] In one implementation, after periodically obtaining incremental data, all indicator data in the global statistics category may be analyzed in the same period, for example, calculating the average data throughput in 10 seconds. Other types of indicator data may also be analyzed at other time intervals.

[0080] In a real-time manner, by using JUC's concurrent safety counters and other technologies, the system's security and stability can be guaranteed. JUC is the abbreviation of the concurrent toolkit provided by the development language Java, which provides some concurrent safety counters such as LongAdder (a counter in JUC), etc. The tools provided in the package can be used to ensure thread safety in the counting process of the compressor. Prevent problems such as data modification failures that may occur when multiple threads concurrently modify a shared variable (such as a shared counter).

[0081] In the disclosed embodiment, after the incremental data is obtained, the incremental data in the stress test process needs to be processed and pushed to the stress test management server as incremental data to complete the stress test data processing process of the transmitter server. The following describes how to process the incremental data.

[0082] Figure 4 The invention is a flowchart of processing incremental data according to an exemplary embodiment.

[0083] In step S41, in response to pushing the incremental data to the stress testing management server, the incremental data of the corresponding class indicators in the global statistics class are cleared.

[0084] In the disclosed embodiment, the incremental data in the global statistics class is cleared for the next incremental data recording, wherein only the incremental data corresponding to the acquired class index is cleared, and other class index data of the global statistics class is not cleared.

[0085] In step S42, data accumulation is performed again on the acquired indicator data corresponding to the same type of indicator data within the same period.

[0086] In the embodiment of the present disclosure, after the incremental data in the global statistics class is cleared, the next cycle is repeated. Figure 3a The process of obtaining incremental data is shown to enter the data in the global statistics class.

[0087] In the disclosed embodiment, the incremental data in the global statistics class is cleared after the incremental data is sent, so that the global statistics class can continue to be used for entering incremental data in the next cycle, reducing resource calls and improving stress testing efficiency.

[0088] Figure 5 The present invention is a flowchart of a stress testing data processing method applied to a stress testing management server according to an exemplary embodiment.

[0089] In step S51, the incremental data sent by the compressor server is received, where the incremental data is data accumulated from the same type of indicator data in the same cycle.

[0090] In the disclosed embodiment, the incremental data sent by the generator and compressor server is received, that is, the working status data of the generator and compressor within a cycle is obtained.

[0091] In step S52, the incremental data is merged with the cached indicator data to obtain merged indicator data of the same type.

[0092] In the disclosed embodiment, the cached indicator data is the incremental data in the recorded global statistics class that has been received. The incremental data is merged with the cached indicator data to obtain the data of various indicators in the current stress test process. Among them, the merged indicator data of the same type represents the execution status of the current stress test data processing.

[0093] In step S53, the merged similar indicator data is pushed to the front end.

[0094] In the disclosed embodiment, the stress test management server pushes the merged indicator data of the same type to the front end.

[0095] In the disclosed embodiment, the incremental data is merged with the cached data, and the merged indicator data of the same type is pushed to the front end, so that the user can grasp the stress test data in real time, thereby optimizing the user experience.

[0096] In one implementation, the incremental data is merged with the cached indicator data to obtain merged indicator data of the same type, and the merged indicator data of the same type is the indicator data of the complete stress testing scenario. For example, the total global call volume is continuously summarized and accumulated by each machine each time; for example, the average total number of requests per second is the average amount of each machine received each time multiplied by the number of stress testing machines to obtain the average total amount of the entire cluster. The above implementation can also be used for the analysis, calculation and merging of other indicator data.

[0097] In one implementation, the stress test management server that receives stress test data will maintain a long connection with the front-end user display interface. The long connection is initiated by the front-end. When the user clicks to enter the real-time test report page, a long connection will be established with the stress test management server. Each time the stress test management server receives cluster data and completes the merge calculation, it will push an event to the front-end through the long connection. The event contains all the test indicator data that the user is concerned about after the calculation is completed. The front-end then renders the report page based on the data, so that the user can perceive it.

[0098] In one implementation, in order to achieve real-time display, a long connection between the front end and the back end can be used, so that when new data reaches the back end, it can be immediately pushed to the front end for display. The long connection can use HTTP (persistent connection), TCP (Transmission Control Protocol), UDP (User Datagram Protocol) or other long connection methods.

[0099] In one implementation, the stress testing management server may display the merged data in the form of a report to facilitate statistical analysis by testers.

[0100] Figure 6 The figure is a flowchart of sending a stress testing task according to an exemplary embodiment.

[0101] In step S61, stress test data processing begins.

[0102] In the disclosed embodiment, the stress test management server determines the stress test task according to the test requirements and prepares to start stress test data processing. The stress test data is some feedback data obtained after each machine actually sends out traffic, that is, some verification data required for stress testing.

[0103] In step S62, a stress testing task is sent.

[0104] In the embodiment of the present disclosure, when the stress test data processing starts, the stress test management server sends a stress test task to the stress transmitter server, wherein the stress test task is used for the stress transmitter server to perform subsequent initialization of the global statistics class.

[0105] In the disclosed embodiment, distributed cluster technology is used, and stress testing instructions are received and stress testing tasks are sent by the stress testing management server rather than the stress testing machine server. This avoids the impact of repeated calls to data by the stress testing machine server on the received stress testing tasks during the stress testing process, and can also reduce the burden on the stress testing machine server and reduce resource usage.

[0106] Figure 7 The diagram is a schematic diagram showing the interaction between a stress test server and a stress test management server according to an exemplary embodiment.

[0107] like Figure 7As shown, in one embodiment, in response to starting a stress test, the stress test management server sends a stress test task to the generator server, wherein the stress test task includes multiple types of indicators that need to be obtained for the stress test. When the generator server receives the stress test task, it generates multiple types of indicators of the global statistical class according to the stress test task to record the working status of the generator during the stress test, so as to complete the initialization of the global statistical class. After initializing the global statistical class, the generator server periodically obtains multiple types of indicator data in the global statistical class recorded during the stress test. In multiple coroutines, the counting indicator data in the recorded indicators of the same type are accumulated by the counter, the response time indicator data is averaged, and the average calculation result and the data accumulation result are combined to obtain the accumulated data of the same type of indicators in the current same period, which are recorded as incremental data in the global statistical class. The generator server uploads the other types of indicator data except the incremental data in the same period to the generator server processing unit for data analysis. The generator server processing unit obtains the incremental data in the global statistical class, and counts the incremental number and other types of indicator data according to the multiple types of indicators of the global statistical class. The processing unit of the pressure transmitter server sends the data push instruction and the data to be pushed to the data push unit of the pressure transmitter server, and the pressure transmitter server push unit pushes the statistical data to the pressure test management server. After the pressure test management server receives the incremental data and other types of indicator data, the pressure transmitter server clears the incremental data in the global statistics category and re-enters the incremental data. After the pressure test management server receives the incremental data, it merges and analyzes the incremental data with the cached similar data through the pressure test server processing unit, and generates a pressure test report to push to the management interface.

[0108] In one embodiment, Figure 7 The stress test management server and the stress test server can be connected via a wired connection or a wireless network to achieve data transmission.

[0109] In one implementation, a stress test management server allocates a task with a certain amount of traffic (such as 100 calls per second, or other call times) to each machine in the stress test server. During this period, each machine in the stress test server periodically reports test indicator data to the stress test management server. The stress test management server aggregates and combines the data and then sends the event to the front-end page for rendering through a long connection.

[0110] In one implementation, cluster indicator data collection, aggregation and display may be performed in a CS (ie, Client+Server) based architecture.

[0111] In one implementation, open source technologies such as JUC provided by Java, SSEEmitter, a long connection tool provided by Spring (an open source framework), etc. may be used during stress testing data processing.

[0112] In one implementation, each batch of compressor clusters will have a corresponding stress test management server. During the stress test, each compressor will report all the indicator data (such as the number of local requests, business response time / number, total number of errors, etc.) collected / counted during this period to the stress test management server at a fixed time period (which can be determined by the user). The stress test management server can summarize, calculate, analyze, push and display data in the data set of the corresponding task maintained by itself after receiving the reported data each time. The compressor cluster is a compressor server including multiple compressors.

[0113] In the above implementation, by collecting and analyzing incremental data in a multi-terminal distributed cluster design, accurate data push and display with high availability in the cluster can be achieved. Through the distributed design of the stress test manager and the stress test server, distributed computing and data merging are achieved, thereby improving the accuracy of statistical data. By using multiple coroutines to operate simultaneously, the control and allocation of concurrency can be guaranteed, and the efficiency of data collection and analysis can be improved. At the same time, the use of a high-availability cluster architecture avoids single points of failure and improves the reliability of the system.

[0114] Based on the same concept, the embodiments of the present disclosure also provide a stress test data processing device applied to a stress test server and a stress test data processing device applied to a stress test management server.

[0115] It is understandable that the stress test data processing device applied to the stress test server and the stress test data processing device applied to the stress test management server provided by the embodiments of the present disclosure include hardware structures and / or software modules corresponding to the execution of each function in order to realize the above functions. In combination with the units and algorithm steps of each example disclosed in the embodiments of the present disclosure, the embodiments of the present disclosure can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the technical solution of the embodiments of the present disclosure.

[0116] Figure 8 1 is a block diagram of a stress test data processing device applied to a stress test server according to an exemplary embodiment. Figure 8 The device includes a receiving unit 101, a processing unit 102 and a sending unit 103.

[0117] Processing unit 102, used to initialize the global statistics class, which includes multiple types of indicators for performing stress testing tasks;

[0118] The receiving unit 101 is used to periodically obtain data of various indicators in the global statistics category;

[0119] The processing unit 102 is further configured to respond to the acquired data of any type of indicator in the global statistics class, and accumulate the acquired indicator data corresponding to the same type of indicator data within the same period to obtain incremental data;

[0120] The sending unit 103 is used to push the incremental data obtained in the same cycle to the stress testing management server.

[0121] In an implementation manner provided by an embodiment of the present disclosure, the receiving unit 101 initializes the global statistical class in the following manner, including: in response to receiving a stress testing task sent by a stress testing management server, determining multiple categories of indicators in the global statistical class according to the stress testing task; allocating the stress testing task and the multiple categories of indicators corresponding to the stress testing task to a single machine that executes the task, triggering the single machine to execute the stress testing task, and generating initialization indicator data for the multiple categories of indicators.

[0122] In an implementation manner provided by an embodiment of the present disclosure, the processing unit 102 accumulates the acquired indicator data corresponding to the same type of indicator data within the same cycle to obtain incremental data in the following manner, including: determining the class indicator of the acquired indicator data; in the coroutine corresponding to the execution call of the class indicator, accumulating the corresponding class indicator data of all stress testing tasks that generate the class indicator in the same cycle; accumulating the corresponding indicator class data of all stress testing tasks that generate the class indicator, and determining it as the incremental data of the class indicator within the same cycle.

[0123] In an implementation provided by an embodiment of the present disclosure, the processing unit 102 is also used to: in response to pushing incremental data to the stress testing management server, clear the incremental data of the corresponding class indicators in the global statistics class, and re-accumulate data for the corresponding same type of indicator data of the acquired indicator data within the same period.

[0124] Fig. 9 1 is a block diagram of a stress test data processing device applied to a stress test management server according to an exemplary embodiment. Fig. 9 The device includes a receiving unit 201, a processing unit 202 and a pushing unit 203.

[0125] The receiving unit 201 is used to receive the incremental data sent by the compressor server, where the incremental data is the data accumulated by the same type of indicator data in the same period;

[0126] The processing unit 202 is used to merge the incremental data with the cached indicator data to obtain merged indicator data of the same type;

[0127] The push unit 203 is used to push the merged indicator data of the same type to the front end.

[0128] In an implementation manner provided by an embodiment of the present disclosure, the push unit 203 is further used to: send a stress testing task, where the stress testing task is used to determine multiple types of indicators in a global statistical class and is used to initialize the global statistical class.

[0129] Regarding the device in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.

[0130] Fig.10 1 is a block diagram of a device 300 for stress testing data processing according to an exemplary embodiment. For example, the device 300 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0131] Reference Fig.10 , the device 300 may include one or more of the following components: a processing component 302 , a memory 304 , a power component 306 , a multimedia component 308 , an audio component 310 , an input / output (I / O) interface 312 , a sensor component 314 , and a communication component 316 .

[0132] The processing component 302 generally controls the overall operation of the device 300, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 302 may include one or more processors 320 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 302 may include one or more modules to facilitate the interaction between the processing component 302 and other components. For example, the processing component 302 may include a multimedia module to facilitate the interaction between the multimedia component 308 and the processing component 302.

[0133] The memory 304 is configured to store various types of data to support operations on the device 300. Examples of such data include instructions for any application or method operating on the device 300, contact data, phone book data, messages, pictures, videos, etc. The memory 304 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0134] The power component 306 provides power to the various components of the device 300. The power component 306 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the device 300.

[0135] The multimedia component 308 includes a screen that provides an output interface between the device 300 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 308 includes a front camera and / or a rear camera. When the device 300 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0136] The audio component 310 is configured to output and / or input audio signals. For example, the audio component 310 includes a microphone (MIC), and when the device 300 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 304 or sent via the communication component 316. In some embodiments, the audio component 310 also includes a speaker for outputting audio signals.

[0137] I / O interface 312 provides an interface between processing component 302 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.

[0138] The sensor assembly 314 includes one or more sensors for providing various aspects of the status assessment of the device 300. For example, the sensor assembly 314 can detect the open / closed state of the device 300, the relative positioning of components, such as the display and keypad of the device 300, the sensor assembly 314 can also detect the position change of the device 300 or a component of the device 300, the presence or absence of user contact with the device 300, the orientation or acceleration / deceleration of the device 300, and the temperature change of the device 300. The sensor assembly 314 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 314 can also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 314 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0139] The communication component 316 is configured to facilitate wired or wireless communication between the device 300 and other devices. The device 300 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 316 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 316 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0140] In an exemplary embodiment, the apparatus 300 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to perform the above method.

[0141] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 304 including instructions, and the instructions can be executed by the processor 320 of the device 300 to perform the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0142] Fig.11 4 is a block diagram of a device 400 for processing stress test data according to an exemplary embodiment. For example, the device 400 may be provided as a server. Fig.11The apparatus 400 includes a processing component 422, which further includes one or more processors, and a memory resource represented by a memory 432 for storing instructions executable by the processing component 422, such as an application. The application stored in the memory 432 may include one or more modules, each corresponding to a set of instructions. In addition, the processing component 422 is configured to execute instructions to perform the above-mentioned pressure measurement data processing method.

[0143] The device 400 may also include a power supply component 426 configured to perform power management of the device 400, a wired or wireless network interface 450 configured to connect the device 400 to a network, and an input / output (I / O) interface 458. The device 400 may operate based on an operating system stored in the memory 432, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or the like.

[0144] It is to be understood that in the present disclosure, "plurality" refers to two or more than two, and other quantifiers are similar. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. The singular forms "a", "the" and "the" are also intended to include plural forms, unless the context clearly indicates other meanings.

[0145] It is further understood that the terms "first", "second", etc. are used to describe various information, but such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other, and do not indicate a specific order or degree of importance. In fact, the expressions "first", "second", etc. can be used interchangeably. For example, without departing from the scope of the present disclosure, the first information can also be referred to as the second information, and similarly, the second information can also be referred to as the first information.

[0146] It can be further understood that, unless otherwise specified, “connection” includes a direct connection without other components between the two, and also includes an indirect connection with other components between the two.

[0147] It is further understood that, although the operations are described in a specific order in the drawings in the embodiments of the present disclosure, it should not be understood as requiring the operations to be performed in the specific order or serial order shown, or requiring the execution of all the operations shown to obtain the desired results. In certain environments, multitasking and parallel processing may be advantageous.

[0148] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any modifications, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary technical means in the art that are not disclosed in the present disclosure.

[0149] It should be understood that the present disclosure is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the scope of the appended claims.

Claims

1. A stress test data processing method, It is characterized in that Applied to a compressor server, the method comprises: Initialize the global statistics class, which includes multiple types of indicators for performing stress testing tasks; Periodically obtain data of various indicators in the global statistics class; In response to the acquired data of any type of indicators in the global statistics class, the acquired indicator data corresponding to the same type of indicator data are accumulated within the same period to obtain incremental data; Push the incremental data obtained in the same cycle to the stress testing management server.

2. The method according to claim 1, It is characterized in that The initialization of the global statistics class includes: In response to receiving a stress testing task sent by a stress testing management server, determining multiple types of indicators in the global statistics class according to the stress testing task; The stress testing task and the multiple types of indicators corresponding to the stress testing task are allocated to a single machine that executes the task, the single machine is triggered to execute the stress testing task, and initialization indicator data of the multiple types of indicators are generated.

3. The method according to claim 1, It is characterized in that The acquired indicator data corresponding to the same type of indicator data are accumulated in the same period to obtain incremental data, including: Determining a class indicator of the acquired indicator data; In the coroutine corresponding to the execution call of the class indicator, all stress testing tasks that generate the class indicator are respectively accumulated in the same cycle corresponding to the class indicator data; The corresponding indicator class data of all stress testing tasks that generate the class indicator are accumulated and determined as the incremental data of the class indicator in the same period.

4. The method according to claim 1, It is characterized in that The method further comprises: In response to pushing the incremental data to the stress testing management server, the incremental data corresponding to the acquired class indicator in the global statistics class is cleared, and data accumulation is performed again on the acquired indicator data corresponding to the same type of indicator data within the same period.

5. A stress test data processing method, It is characterized in that Applied to a stress test management server, the method includes: Receive incremental data sent by the compressor server, where the incremental data is data accumulated by adding up the same type of indicator data in the same period; Merging the incremental data with the cached indicator data to obtain merged indicator data of the same type; The merged similar indicator data is pushed to the front end.

6. The method according to claim 5, It is characterized in that The method further comprises: Send a stress test task, which is used to determine multiple types of indicators in the global statistics class and to initialize the global statistics class.

7. A stress test data processing device, It is characterized in that Applied to a compressor server, the device comprises: A processing unit, used to initialize a global statistics class, wherein the global statistics class includes multiple types of indicators for performing stress testing tasks; A receiving unit, used for periodically acquiring data of various indicators in the global statistics class; The processing unit is further configured to, in response to the acquired data of any type of indicator in the global statistics class, accumulate the acquired indicator data corresponding to the same type of indicator data within the same period to obtain incremental data; The sending unit is used to push the incremental data obtained in the same cycle to the stress testing management server.

8. A stress test data processing device, It is characterized in that Applied to a stress test management server, the device comprises: A receiving unit, used to receive incremental data sent by the compressor server, wherein the incremental data is data accumulated by adding up the same type of indicator data in the same period; A processing unit, configured to merge the incremental data with the cached indicator data to obtain merged indicator data of the same type; The push unit is used to push the merged similar indicator data to the front end.

9. A stress test data processing device, It is characterized in that include: processor; a memory for storing processor-executable instructions; Wherein, the processor is configured to: execute the stress testing data processing method described in any one of claims 1-4 or 5-6.

10. A storage medium, It is characterized in that The storage medium stores instructions, and when the instructions are executed by a processor in the terminal, the terminal executes the stress testing data processing method described in any one of claims 1-4 or 5-6.