Application performance analysis method, device and equipment and computer readable storage medium

By setting multiple performance monitoring atoms in the application system, and collecting running data for comprehensive analysis during performance analysis triggering events, the problem of limited coverage in the existing technologies has been solved, and more accurate performance analysis and bottleneck positioning are achieved.

CN119377066APending Publication Date: 2025-01-28CHINA MERCHANTS BANK
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411351873.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-26
Publication Date
2025-01-28

AI Technical Summary

Technical Problem

When performing performance analysis of application systems, the analysis coverage is limited, making it difficult to accurately locate the performance bottlenecks of the entire application system, resulting in low accuracy of performance analysis results.

Method used

Through response performance analysis triggering events, determine the preset performance monitoring analysis plan, use multiple performance monitoring atoms to collect the operation data of the application system, and perform comprehensive performance analysis based on these data to generate reports of the degree of influence.

Benefits of technology

It improves the accuracy of application performance analysis, can more comprehensively locate the performance bottleneck of the application system, and improve the efficiency of performance optimization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119377066A_ABST
    Figure CN119377066A_ABST
Patent Text Reader

Abstract

The invention discloses an application performance analysis method, device and equipment and a computer readable storage medium, and relates to the technical field of data analys.The method comprises the steps that in response to a performance analysis trigger event, a preset performance monitoring analysis plan corresponding to the performance analysis trigger event is determined, the performance monitoring analysis plan comprises a plurality of performance analysis tasks for performing performance analysis on the to-be-analyzed application system; operating data corresponding to each target performance index in the to-be-analyzed application system is collected through performance monitoring atoms bound with each performance analysis task, and one performance monitoring atom is used for monitoring one type of performance indexes of the to-be-analyzed application system; performance analysis is conducted on the to-be-analyzed application system based on the operation data, a comprehensive performance analysis report is obtained, and the content in the comprehensive performance analysis report represents the influence degree of the target performance indexes on the performance of the to-be-analyzed application system. The accuracy of application performance analysis can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data analysis technology, and in particular to an application performance analysis method, device, equipment and computer-readable storage medium. Background Art

[0002] With the continuous development of science and technology, various application systems have become an indispensable part of enterprise operations, service provision and data processing. Among them, efficient and accurate performance analysis of application systems and timely discovery and resolution of performance bottlenecks are of great significance for improving user experience and ensuring stable system operation.

[0003] At present, the main way to perform performance analysis on application systems is to use professional performance analysis tools. This method is highly targeted and professional, but due to its limited analysis coverage and limitation to the performance analysis of a single application, it is difficult to accurately locate the performance bottleneck of the entire application system, resulting in the problem of low accuracy of the performance analysis results obtained by this method.

[0004] Therefore, how to improve the accuracy of application performance analysis is a problem that needs to be solved urgently. Summary of the invention

[0005] The main purpose of this application is to provide an application performance analysis method, device, equipment and computer-readable storage medium, aiming to improve the accuracy of application performance analysis.

[0006] To achieve the above-mentioned object, the present application provides an application performance analysis method, the application performance analysis method comprising: in response to a performance analysis triggering event, determining a preset performance monitoring and analysis plan corresponding to the performance analysis triggering event, wherein the performance monitoring and analysis plan comprises a plurality of performance analysis tasks for performing performance analysis on an application system to be analyzed;

[0007] Collecting the operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a type of performance indicator of the application system to be analyzed;

[0008] A performance analysis is performed on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content in the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

[0009] In one embodiment, before the step of determining, in response to the performance analysis triggering event, that the performance analysis triggering event corresponds to a preset performance monitoring and analysis plan, the method further includes:

[0010] In response to the information input instruction, obtaining topological structure information of the application system to be analyzed;

[0011] Determine, based on the topology information, each target performance indicator to be analyzed for each application node in the application system to be analyzed;

[0012] A performance monitoring and analysis plan for the application system to be analyzed is generated based on each of the target performance indicators.

[0013] In one embodiment, the step of generating a performance monitoring and analysis plan for the application system to be analyzed based on each of the target performance indicators includes:

[0014] Determine a performance analysis task corresponding to each of the target performance indicators, wherein one target performance indicator corresponds to one performance analysis task;

[0015] Based on each of the performance analysis tasks, the topology structure information, and the mapping relationship between the application nodes and the performance analysis tasks, a performance monitoring and analysis plan for the application system to be analyzed is generated.

[0016] In one embodiment, the step of determining the performance analysis tasks corresponding to each of the target performance indicators includes:

[0017] Determine the performance monitoring atoms corresponding to the application nodes based on the target performance indicators;

[0018] A preset target analysis rule corresponding to each target performance indicator is obtained, and based on the performance monitoring atom and the target analysis rule corresponding to each target performance indicator, a performance analysis task corresponding to each target performance indicator is constructed.

[0019] In one embodiment, the step of collecting the operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task includes:

[0020] Determining the execution order of each of the performance analysis tasks based on the execution priority of the performance monitoring atoms bound to each of the performance analysis tasks;

[0021] The operating data corresponding to each target performance indicator in the application system to be analyzed is collected by each performance monitoring atom in accordance with the execution order.

[0022] In one embodiment, the step of performing performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report includes:

[0023] Obtaining target analysis rules in each of the performance analysis tasks, analyzing each of the operation data according to each of the target analysis rules and the execution order, and obtaining a performance analysis report for each of the performance analysis tasks;

[0024] Semantic fusion processing is performed on each of the performance analysis reports to obtain a comprehensive performance analysis report.

[0025] In one embodiment, after the step of performing performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, the method further includes:

[0026] In response to the first query request, outputting the task workflow of each of the performance analysis tasks so that the user can view the execution progress of the performance monitoring and analysis plan;

[0027] In response to the second query request, the comprehensive performance analysis report, each performance analysis report and each operation data are outputted so that the user can view the execution result of the performance monitoring and analysis plan.

[0028] In addition, to achieve the above-mentioned purpose, the present application also provides an application performance analysis device, the application performance analysis device comprising:

[0029] A response module, configured to respond to a performance analysis triggering event and determine a preset performance monitoring and analysis plan corresponding to the performance analysis triggering event, wherein the performance monitoring and analysis plan includes a plurality of performance analysis tasks for performing performance analysis on the application system to be analyzed;

[0030] A data collection module, used for collecting operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a type of performance indicator of the application system to be analyzed;

[0031] The performance analysis module is used to perform performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content in the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

[0032] In addition, to achieve the above-mentioned purpose, the present application also provides a storage medium, which is a computer-readable storage medium, and a program for implementing the application performance analysis method is stored on the computer-readable storage medium. The program for implementing the application performance analysis method is executed by a processor to implement the steps of the application performance analysis method as described above.

[0033] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, including a computer program, which implements the steps of the above-mentioned application performance analysis method when executed by a processor.

[0034] The present application provides an application performance analysis method. The present application determines a preset performance monitoring and analysis plan corresponding to a performance analysis trigger event in response to a performance analysis trigger event, wherein the performance monitoring and analysis plan includes multiple performance analysis tasks for performing performance analysis on an application system to be analyzed, and collects operating data of the application system to be analyzed through performance monitoring atoms bound to each performance analysis task, wherein a performance monitoring atom is used to monitor a class of performance indicators of the application system to be analyzed, and then performs performance analysis on the application system to be analyzed based on each operating data to obtain a comprehensive performance analysis report, wherein the content of the comprehensive performance analysis report characterizes the degree of influence of each target performance indicator on the performance of the application system to be analyzed.

[0035] In summary, compared to traditional professional performance analysis tools that focus on performance analysis of a single application and are unable to accurately locate performance bottlenecks of the entire system, the present application atomizes application performance analysis and sets up multiple performance monitoring atoms for monitoring various performance indicators in the application system to be analyzed. When a performance analysis trigger event occurs, the system operation data is collected through each performance monitoring atom in the performance monitoring and analysis plan, and the performance analysis of the entire application system is performed based on the collected system operation data, and a comprehensive performance analysis report is generated, which is not limited to the performance analysis of a single application, thereby solving the problem of low analysis accuracy of professional performance analysis tools, that is, improving the accuracy of the performance analysis results. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0037] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0038] Figure 1 This is a flow chart of the first embodiment of the application performance analysis method of the present application;

[0039] Figure 2 A schematic diagram of atomic division of performance monitoring involved in an embodiment of the application performance analysis method of the present application;

[0040] Figure 3This is a schematic diagram of a task workflow engine framework involved in an embodiment of the application performance analysis method of the present application;

[0041] Figure 4 A schematic diagram of the basic logic execution unit architecture involved in an embodiment of the application performance analysis method of the present application;

[0042] Figure 5 This is a functional block diagram of a performance analysis system involved in an embodiment of the application performance analysis method of the present application;

[0043] Figure 6 A schematic diagram of the access layer operation process involved in an embodiment of the application performance analysis method of the present application;

[0044] Figure 7 A schematic diagram of the execution layer operation process involved in an embodiment of the application performance analysis method of the present application;

[0045] Figure 8 A schematic diagram of a task workflow topology structure involved in an embodiment of the application performance analysis method of the present application;

[0046] Fig. 9 This is a schematic diagram of the module structure of the performance analysis device used in this application;

[0047] Fig.10 Schematic diagram of the device structure of the hardware operating environment involved in the application performance analysis method in the embodiment of the present application.

[0048] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0049] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.

[0050] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0051] The main solution of the present application is: in response to a performance analysis triggering event, determining a preset performance monitoring and analysis plan corresponding to the performance analysis triggering event, wherein the performance monitoring and analysis plan includes a plurality of performance analysis tasks for performing performance analysis on the application system to be analyzed; collecting operation data corresponding to each target performance indicator in the application system to be analyzed through performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a class of performance indicators of the application system to be analyzed; performing performance analysis on the application system to be analyzed based on each of the operation data to obtain a comprehensive performance analysis report, wherein the content in the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

[0052] At present, the main way to perform performance analysis on application systems is to use professional performance analysis tools. This method is highly targeted and professional, but due to its limited analysis coverage and limitation to the performance analysis of a single application, it is difficult to accurately locate the performance bottleneck of the entire application system, resulting in the problem of low accuracy of the performance analysis results obtained by this method.

[0053] Compared with traditional professional performance analysis tools that focus on performance analysis of a single application and are unable to accurately locate performance bottlenecks of the entire application system, the present application atomizes application performance analysis and sets up multiple performance monitoring atoms for monitoring various performance indicators in the application system to be analyzed. When a performance analysis trigger event occurs, the system operation data is collected through each performance monitoring atom in the performance monitoring and analysis plan, and the performance analysis of the entire application system is performed based on the collected system operation data, and a comprehensive performance analysis report is generated, which is not limited to the performance analysis of a single application. This solves the problem of low analysis accuracy in professional performance analysis tools, that is, improves the accuracy of performance analysis results.

[0054] In addition, there are currently two commonly used application performance analysis methods. The first is to run professional performance analysis tools and combine expert experience for analysis. The second is to use continuous performance analysis tools to perform all-weather application performance testing. The shortcomings of the first method include: strong professionalism and a high threshold for tool use; the interpretation of analysis results is not intuitive enough. The analysis report given by the tool is usually a large amount of raw data and icons, lacking the necessary interpretation instructions, and it is not easy to quickly locate performance bottlenecks; the analysis coverage is limited. Business application systems often contain multiple call links. The performance analysis of a single application often finds it difficult to find the performance bottleneck of the entire system; limited to post-analysis, most traditional tools are offline analysis after the application is running, and the real-time monitoring and early warning and online tuning capabilities are weak. It is often difficult to save the fault site when the container environment fails, which makes it impossible to carry out performance analysis. Thus, compared with the first performance analysis method mentioned above, the present application automatically executes the performance monitoring and analysis plan when a performance analysis trigger event is detected. That is, the application performance analysis method provided by the present application has a low threshold for use and is easy to use; the comprehensive performance analysis report provided by the present application characterizes the degree of influence of various performance indicators on system performance, that is, the analysis results are more intuitive and performance bottlenecks can be quickly located; the present application atomizes application performance analysis and sets up multiple performance monitoring atoms for monitoring various performance indicators in the application system to be analyzed, so as to perform performance analysis on the entire application system based on the system operation data collected by each performance monitoring atom, rather than being limited to the performance analysis of a single application, thereby solving the problem of low analysis accuracy existing in professional performance analysis tools; and the present application automatically executes the performance monitoring and analysis plan based on the performance analysis trigger event, so as to realize performance analysis while the application system is running, rather than being limited to post-analysis.

[0055] The shortcomings of the second performance analysis method include: the application density of container environment nodes is high, and the consumption of performance analysis resources (CPU, network) of the connected host increases significantly, which in turn affects the throughput of the business system; there are many types of applications in container environment nodes (C / C++, Java, Python, Go, etc.), and simple sampling analysis is not professional enough to locate the root cause of the problem; however, if a full-range performance analysis is performed on all application instances on the node at the same time, system resources will be over-consumed; the access cost of the continuous performance analysis system is high, and massive monitoring data will consume a large amount of additional storage and analysis resources. However, the continuous performance analysis data only generates value before and after the application fails. The high cost investment and uncertain benefits make it difficult for the continuous performance analysis system to be implemented in private cloud scenarios; the analysis report tends to be based on data reports and link topology, and the report lacks professionalism. Operation and maintenance personnel cannot quickly locate application performance bottlenecks and root causes of failures from the report. Compared with the second performance analysis method mentioned above, the present application executes the performance analysis steps when a performance analysis trigger event is monitored, thereby avoiding the waste of resources due to round-the-clock performance analysis, thereby affecting the throughput of the business application system, and avoiding the problem of inaccurate root cause location due to low sampling rate; and the present application adopts the technology of atomization of performance monitoring tasks to realize the performance analysis of the entire application system to be analyzed, and generate a comprehensive performance analysis report. Operation and maintenance personnel can quickly locate application performance bottlenecks and root causes of failures from the comprehensive performance analysis report.

[0056] It should be noted that the execution subject of the method in each embodiment of the application performance analysis method of the present application can be a performance analysis system, or a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an application performance analysis device capable of realizing the above functions, etc., and this embodiment does not specifically limit this. The following takes the performance analysis system as the execution subject as an example to illustrate this embodiment and the following embodiments.

[0057] Based on this, this application proposes an application performance analysis method of the first embodiment, please refer to Figure 1 The application performance analysis method includes steps S10 to S30:

[0058] Step S10, in response to a performance analysis triggering event, determining a preset performance monitoring and analysis plan corresponding to the performance analysis triggering event, wherein the performance monitoring and analysis plan includes a plurality of performance analysis tasks for performing performance analysis on the application system to be analyzed;

[0059] It should be noted that the performance analysis trigger rules are pre-set, and the performance analysis trigger rules include but are not limited to timed triggers, API (Application Programming Interface) calls, K8s events, Prometheus alarms, Kafka messages, etc. For example, when the performance analysis trigger rule is a timed trigger, the performance analysis trigger event is set to be triggered at the first moment of each day. The performance analysis system of the present application includes an execution layer, and the execution layer includes a trigger component. The trigger component is used to run an event listener, listen to performance analysis trigger events, and read and parse preset performance analysis trigger rules to trigger the execution of the performance monitoring analysis plan bound to the performance analysis trigger rule when the performance analysis trigger event occurs. It should be understood that the performance analysis trigger event is used to trigger the execution of the performance monitoring analysis plan. A performance monitoring analysis plan can be used to complete the performance problem analysis of the entire application system.

[0060] After monitoring the performance analysis trigger event, in response to the performance analysis trigger event, determine that the performance analysis trigger event corresponds to a preset performance monitoring and analysis plan, wherein the performance monitoring and analysis plan includes multiple performance analysis tasks for performing performance analysis on the application system to be analyzed. It should be understood that the performance analysis task is a basic logic execution unit including a performance monitoring atom and a data analysis task.

[0061] In one feasible implementation, the trigger of the execution layer starts the RPC (Remote Procedure Call) API service and the listener service to listen to trigger events, such as timed events, API call events, K8s events, Prometheus alarm events, Kafka message events, etc.; then checks whether the current performance analysis trigger event hits the trigger rule. If it is checked that the current performance analysis trigger event hits the trigger rule, then in response to the performance analysis trigger event, a gRPC call is sent to the task workflow engine through the trigger, and the performance monitoring analysis plan bound to the trigger rule is executed.

[0062] Step S20, collecting operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a type of performance indicator of the application system to be analyzed;

[0063] It should be noted that the performance monitoring atom is used to monitor a class of performance indicators of the application system to be analyzed, and the function of each performance monitoring atom is single and independent, that is, each performance monitoring atom is responsible for monitoring and collecting specific types of data. The performance monitoring atom determines the monitoring data and analysis report that can be obtained when the performance monitoring analysis plan is executed. The performance monitoring atom code is implemented by using professional tools such as eBPF (extended Berkeley Packet Filter) and perf (Performance Tools) to collect performance data from the application and output it to the corresponding storage device. Each performance monitoring atom is bound to a performance analysis task to generate a professional analysis report. In addition, users can adjust the execution weight and basic scoring factor of the performance monitoring atom according to the accuracy of the performance analysis report, thereby optimizing the performance monitoring analysis task workflow, improving the accuracy of the analysis and quickly locating performance bottlenecks and problems.

[0064] For example, Figure 2The figure shows a schematic diagram of the division of performance monitoring atoms. Performance monitoring atoms include but are not limited to seven categories, namely, CPU (Central Processing Unit) category performance monitoring atoms, GPU (Graphic Processing Unit) category performance monitoring atoms, memory category performance monitoring atoms, disk category performance monitoring atoms, network category performance monitoring atoms, thread and lock category performance monitoring atoms, thread and lock category performance monitoring atoms and specific business category performance monitoring atoms. Among them, CPU category performance monitoring atoms include but are not limited to CPU usage atoms, CPU context switch overhead statistics atoms, user state function execution times and overhead atoms, kernel state function execution times and overhead atoms, etc.; GPU category performance monitoring atoms include but are not limited to GPU usage atoms, video memory usage monitoring atoms, video memory bandwidth analysis atoms, rendering pipeline analysis atoms, kernel analysis atoms, etc.; memory category performance monitoring atoms include but are not limited to memory usage atoms, function memory analysis atoms, function stack analysis atoms, Go memory analysis atoms, Jvm memory analysis atoms, etc.; disk category performance monitoring atoms include but are not limited to disk usage atoms, disk IO analysis atoms, function disk read and write times and overhead atoms, etc.; network category performance monitoring atoms include but are not limited to DNS (Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name Domain Name The performance monitoring atoms of the following types include: name system (Domain Name System) monitoring atoms, TCP (Transmission Control Protocol) monitoring atoms, UDP (User Datagram Protocol) monitoring atoms, TraceID-based HTTP monitoring atoms, etc.; thread and lock category performance monitoring atoms include but are not limited to lock contention times and time overhead statistical atoms, lock holding time and waiting time statistical atoms, deadlock detection atoms; specific business category performance monitoring atoms include but are not limited to UI interaction response monitoring atoms, UI first screen rendering time monitoring atoms, DOM (Document Object Model) monitoring atoms, SQL slow query monitoring atoms, JVM (Java Virtual Machine) configuration analysis atoms, Java GC (Java Garbage Collection) analysis atoms, etc.

[0065] The operation data corresponding to the performance index (hereinafter referred to as the target performance index for distinction) in the application system to be analyzed, ie, the monitoring data, is collected through a single performance monitoring atom bound to each performance analysis task.

[0066] In this way, the embodiment of the present application atomizes the performance monitoring task, and each performance monitoring atom is responsible for specific data collection, so that the performance data collection is more focused, easy to debug and optimize. Moreover, each performance monitoring atom corresponds to a piece of code logic in the executor, and these codes are independent of each other, which is convenient for development, integration and expansion.

[0067] In this embodiment, the step S20 may include:

[0068] Step S201, determining the execution order of each of the performance analysis tasks based on the execution priority of the performance monitoring atoms bound to each of the performance analysis tasks;

[0069] It should be noted that the execution weight of each performance monitoring atom is preset, and low-weight tasks are skipped when resources are tight. The higher the execution weight, the higher the execution priority of the performance monitoring atom, and the execution priority of each performance monitoring atom is the execution priority of the performance analysis task bound to the performance monitoring atom.

[0070] The execution order of each performance analysis task is determined based on the execution priority of the performance monitoring atom bound to each performance analysis task. Specifically, each performance analysis task is arranged in descending order of execution priority.

[0071] Step S202: collecting operation data corresponding to each target performance indicator in the application system to be analyzed through each performance monitoring atom in accordance with the execution order.

[0072] The data collection operation is performed by each performance monitoring atom according to the above execution order, that is, each performance monitoring atom is scheduled to collect the operation data corresponding to each target performance indicator in the system to be analyzed in series or in parallel according to the execution order.

[0073] For example, Figure 3The figure shows a schematic diagram of the task workflow engine framework. The task workflow engine in the performance analysis system of the present application includes but is not limited to the following functions: gRPC / HTTP service, task definition unit, workflow designer, task scheduler, task execution engine, task monitoring and management, and data storage, wherein the gRPC / HTTP service is used to provide a RestfulAPI interface, such as a trigger interface, which can trigger the execution of a specific task workflow; the task definition module is used to define the name, description, input parameters, output results, execution logic, etc. of each task. The execution logic can be a piece of code, a script or an external program, which is used to implement the specific functions of the task and support the definition of dependencies between tasks. For example, a task can rely on the output of another task as input. The task definition can be versioned to track and manage the change history of the task; the workflow designer is used to support the control flow structures of the workflow such as serial, parallel, conditional branching and looping, provide workflow preview and verification functions to check the correctness and completeness of the workflow, and the designed workflow can be saved and deployed to the task scheduler; the task scheduler is used to plan the task execution, including the execution order of the tasks, The task execution engine is used to receive tasks assigned by the task scheduler, execute tasks on designated execution nodes, and support concurrent and distributed execution to improve the efficiency and scalability of task execution. Task monitoring and management are used to provide real-time monitoring of task execution status, progress, and results, so that users can understand the execution of workflows. Task management operations such as pause, resume, and terminate tasks can be supported to meet special needs during execution. Task execution log query and analysis functions are provided to enable users to analyze and optimize workflow performance. Task execution results storage and export are supported for subsequent data analysis and application. Alarm and notification rules for task execution can be set to timely discover and handle execution anomalies. Data storage is used to provide persistent storage of workflow definitions, task configurations, execution logs, and results, and supports multiple data storage methods, such as relational databases, NoSQL databases, and file systems. In addition, the workflow engine can adapt to container clusters and traditional virtual machine environments. Task execution can be gRPC / http calls or custom functions. Custom functions can track and record the execution status and results of sub-workflows. In a container environment, the executor is deployed in DaemonSet and in host network mode; in a virtual machine environment, the executor is deployed in Systemd service mode and process resource usage is limited through Cgroup.

[0074] Thus, the embodiment of the present application modularizes the functions of workflow definition, design, scheduling, execution and monitoring, and provides a unified data storage and API interface. Users can define and design workflows through the task definition module and workflow designer, the task scheduler is responsible for the scheduling and allocation of tasks, the task execution engine is responsible for the execution of tasks, and the task monitoring and management module provides the function of real-time monitoring and management of tasks. The entire system persists the relevant data of workflows and tasks through data storage, and provides it to other systems for integration and calling through the API interface.

[0075] Step S30, performing performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content of the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

[0076] Based on the operation data collected by each performance monitoring atom, the application system to be analyzed is subjected to performance analysis, and an analysis report representing the overall performance analysis result of the application system to be analyzed is obtained (hereinafter referred to as a comprehensive performance analysis report for distinction). It should be noted that the content of the comprehensive performance analysis report represents the degree of influence of each target performance indicator in the application system to be analyzed on the performance of the application system to be analyzed, so as to show the user a more intuitive analysis result.

[0077] In this embodiment, the step S30 may include:

[0078] Step S301, obtaining the target analysis rules in each performance analysis task, analyzing each of the operation data according to each of the target analysis rules and the execution order, and obtaining a performance analysis report for each of the performance analysis tasks;

[0079] It should be noted that analysis rules for performing data analysis on the operating data corresponding to each target performance indicator are pre-set (hereinafter referred to as target analysis rules for distinction). The operation of performing data analysis based on the target analysis rules corresponding to a single performance analysis task is regarded as a data analysis task, and the data analysis task is executed to obtain a performance analysis report of the performance analysis task.

[0080] Obtain the target analysis rules in each performance analysis task, perform data analysis operations in accordance with the target analysis rules of each performance analysis task in the execution order of each performance analysis task, and obtain a performance analysis report for each performance analysis task.

[0081] Step S302: perform semantic fusion processing on each of the performance analysis reports to obtain a comprehensive performance analysis report.

[0082] After obtaining the performance analysis reports of each performance analysis task, semantic fusion processing is performed on each performance analysis report to integrate and generate a comprehensive performance analysis report.

[0083] In one feasible implementation, the task workflow engine in the performance analysis system reads and parses the workflow information from the database, and automatically advances the execution of the task according to the predefined process model, and records the task progress and status to the database so that the access layer can view the execution of the plan. Among them, the task can be a specific application performance monitoring and analysis atomic task, or it can be a sub-workflow task. The performance monitoring atomic task is executed by the executor in the performance analysis system, and the corresponding data is obtained and stored in Kafka+ClickHouse storage. Then, the corresponding data of the performance monitoring atom is obtained through the analyzer in the performance analysis system, the data analysis task is executed, and the performance analysis report corresponding to the performance analysis task is generated and uploaded. Finally, the analyzer obtains the analysis report of all performance monitoring atoms in the performance monitoring analysis plan, and generates an aggregate report based on the LLM (LargeLanguage Model) algorithm.

[0084] For example, a performance monitoring atom (ie, a performance monitoring task) and a data analysis task corresponding to the performance monitoring atom are designed as a basic logic execution unit in a task workflow. Specifically, Figure 4The schematic diagram of the basic logic execution unit architecture shows that the data collection operation is performed through the performance monitoring atom, and the collected operation data is stored in the data storage area. Then the data analysis task is performed, that is, the operation data is obtained from the data storage area, and the data is analyzed according to the preset analysis rules to obtain the performance analysis report, and then the performance analysis report is saved to the object storage area. In this way, each performance monitoring atom and data analysis task can be developed and tested as an execution unit, which can improve the accuracy and efficiency of the analysis and is easy to access the task workflow engine. In addition, the basic logic execution unit in the task workflow is defined as a performance analysis task in the task workflow. Dependencies can be defined between performance analysis tasks to form an itemized acyclic graph. It contains the following parameters and properties to define its behavior and execution environment: Name, a unique identifier for executing a task, used for reference in a workflow; Template, if the task is based on a template, you need to specify the name of the template or directly embed the template definition; Inputs and Outputs, artifacts specify files or data received from upstream tasks or passed to downstream tasks, parameters are variable values ​​passed to the template, which can be used to dynamically configure tasks; Dependencies, specifying which other tasks the task depends on for successful completion; RetryStrategy egy), defines whether to retry after a task fails; parallelism and completion policy (parallelism and completionPolicy), control parallel execution strategy and completion conditions; execution strategy (lifecycle / hook), special execution timing, such as pre-processing (preHook) and post-processing (postHook) tasks; execution unit (ExecutionUnit), can set container, gRPC / http call, preset function as the execution unit of the task; execution weight (ExecutionWeight), can set the task execution weight, low-weight tasks will be skipped when resources are tight.

[0085] Embodiments of the present application This application atomizes application performance analysis, sets up multiple performance monitoring atoms for monitoring various performance indicators in the application system to be analyzed, and when a performance analysis trigger event occurs, collects system operation data through each performance monitoring atom in the performance monitoring analysis plan, and performs performance analysis on the entire application system based on the collected system operation data, and generates a comprehensive performance analysis report, which is not limited to the performance analysis of a single application, thereby solving the problem of low analysis accuracy of professional performance analysis tools, that is, improving the accuracy of performance analysis results. In summary, the present application provides a more automated and intelligent application performance analysis method and system, which can adapt to the dynamic characteristics of the container environment and is compatible with the traditional deployment method of virtual machines, provides real-time and continuous performance monitoring and professional analysis capabilities, and has the functions of automatic discovery, automatic collection, and intelligent analysis.

[0086] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the first embodiment can be referred to the above description, and will not be described in detail later. On this basis, before the step S10, the application performance analysis method further includes:

[0087] Step A10, in response to the information input instruction, obtaining the topological structure information of the application system to be analyzed;

[0088] Step A20, determining each target performance indicator to be analyzed for each application node in the application system to be analyzed based on the topology structure information;

[0089] Step A30: generating a performance monitoring and analysis plan for the application system to be analyzed based on each of the target performance indicators.

[0090] It should be noted that the performance analysis system of the present application includes a platform portal, and the user can log in to the platform portal and manually trigger the information entry instruction. After receiving the information entry instruction, the performance analysis system obtains the topological structure information of the application system to be analyzed. Among them, the topological structure information includes but is not limited to application information, middleware information and database information, and each application in the application system is regarded as a target node to be analyzed, that is, the above-mentioned application node. Based on the topological structure information, the target performance indicators to be analyzed in each application node in the application system to be analyzed are determined. It should be understood that an application node can be bound to several performance monitoring atoms or atomic sets. Then, based on each target performance indicator, a performance monitoring and analysis plan for the application system to be analyzed is generated.

[0091] For example, Figure 5 The figure shows a functional block diagram of the performance analysis system. The performance analysis system of the present application includes an access layer and an execution layer, wherein the access layer includes a system management portal, a management core module and a data storage module, and the execution layer includes triggers, a task workflow engine, an executor and an analyzer.

[0092] The system management portal includes but is not limited to the application system topology acquisition unit, monitoring and analysis plan management unit, trigger rule management unit, task workflow management unit, performance monitoring atom management unit, deployment environment management unit, analysis report management unit and atom feedback management unit. The system topology acquisition unit is mainly used to enter the topology structure and application information of the application system (including application, middleware, database, etc.). Each application is a separate configurable node, and each node can be bound to a series of application performance monitoring atoms according to requirements; the monitoring and analysis plan management unit is used to convert the application system topology structure and related information into a performance monitoring and analysis plan, which contains the target application information and can configure and adjust the parameters of the application performance monitoring atoms bound to the application. In addition, it needs to be explained Yes, a performance monitoring and analysis plan can be associated with multiple task workflows, and the execution status and analysis reports of historical task workflows can be viewed; the trigger rule management unit is used to manage trigger rules, mainly including: timed triggers, API calls, K8s events, Prometheus alarms, Kafka messages, etc. In addition, it should be noted that a trigger rule can be bound to one or more performance monitoring and analysis plans. The trigger reads the trigger rule and triggers the execution of the new monitoring and analysis plan according to specific conditions; the task workflow management unit is used to view the execution status and analysis reports of task workflows within the project; the monitoring and analysis atom management unit is used to enter and manage the information of performance monitoring atoms; the deployment environment management unit is used to manage access environment information, including container clusters and virtual machines. The accessed cluster or virtual machine can execute performance monitoring tasks to obtain application performance data; the analysis report management unit is used to display aggregate analysis reports, performance monitoring atom analysis reports, and raw data. The performance monitoring atom analysis reports are sorted according to the impact score, where 0 means that the content monitored by the current performance monitoring atom does not affect application performance. The higher the score, the greater the impact. This allows users to intuitively discover performance bottlenecks; the atomic feedback management unit is used to manage the execution weights and basic scoring factors of performance monitoring atoms adjusted by users based on the accuracy of performance analysis reports, thereby optimizing the performance monitoring and analysis task workflow, improving the accuracy of analysis and quickly locating performance bottlenecks and problems.

[0093] The core management modules include but are not limited to API services, permission management units, data management units and configuration management units. Among them, API services mainly provide API call interfaces for the management portal module, which include interfaces such as permission management, data management and configuration management; the permission management unit mainly restricts users to access only data and functions related to their work, and prevents sensitive information from being leaked to unauthorized personnel; the data management unit mainly stores the information entered into the management portal module into the database, maintains database forms, and cleans and converts the data as needed, and renders the performance monitoring and analysis plan into the data format required by the task workflow engine; the configuration management unit mainly manages the configuration information of the entire system. The configuration can come from files or configuration management services, such as consul, nacos, zookeeper, etc.

[0094] The data storage module includes but is not limited to relational databases, indicator data storage databases and object storage databases. Among them, relational databases, such as MySQL, PostgreSQL, etc., are mainly used to store application system topology and information, application node information and its bound application performance monitoring atom information, performance monitoring and analysis plan information, trigger rule information, task workflow information, performance monitoring and analysis atom related information, etc.; indicator data storage databases, such as: ClickHouse, InfluxDB, etc., and use Kafka as a real-time data receiving and buffering layer, regularly write data in Kafka into ClickHouse in batches for long-term storage, and perform complex data analysis and query in ClickHouse; object storage, such as: Minio, S3, etc., is used to store application performance analysis reports.

[0095] In addition, the trigger of the execution layer is mainly used to run the event source listener to listen to the trigger event, read and parse the trigger rule, and execute the performance monitoring and analysis plan bound to the trigger rule when the event occurs. The task workflow engine of the execution layer is mainly used to: read and parse the workflow from the database to obtain the information and attributes of the task to be executed; automatically promote the execution of tasks according to the predefined process model, including the creation, allocation, execution and status change of tasks, to ensure that the process proceeds smoothly according to the established rules; monitoring and auditing functions, real-time monitoring of the status and progress of process instances, and providing detailed process tracking and audit logs; multi-task scheduling and scheduling functions to ensure the execution of performance monitoring atomic tasks and performance analysis tasks. The executor of the execution layer mainly includes the following functions: gRPC API service, used to accept the creation and result query requests of the atomic task of performance monitoring from the task workflow engine; gRPC API service, used to accept the creation and result query requests of the atomic task of performance monitoring from the task workflow engine; control the executor resource usage through the Cgroup mechanism. The analyzer of the execution layer mainly includes the following functions: gRPC API service, which is used to accept the creation and result query requests of performance analysis tasks from the task workflow engine; query the performance monitoring data according to the performance monitoring atom information and generate the corresponding analysis report; generate an aggregate report based on the analysis reports of all performance monitoring atoms.

[0096] In this embodiment, the step A30 may include:

[0097] Step A301, determining the performance analysis tasks corresponding to the target performance indicators, wherein one target performance indicator corresponds to one performance analysis task;

[0098] It should be noted that one target performance indicator corresponds to one performance monitoring atom, and one performance monitoring atom and the data analysis task corresponding to the performance monitoring atom constitute a performance analysis task.

[0099] In this embodiment, step A301 may include:

[0100] Step A3011, determining the performance monitoring atoms corresponding to the application nodes based on the target performance indicators;

[0101] Step A3012, obtaining preset target analysis rules corresponding to each target performance indicator, and constructing a performance analysis task corresponding to each target performance indicator based on the performance monitoring atom and the target analysis rules corresponding to each target performance indicator.

[0102] Based on each target performance indicator, determine each performance monitoring atom corresponding to each application node in the application system to be analyzed, that is, one application node corresponds to multiple performance monitoring atoms, and then obtain the preset target analysis rules corresponding to each target performance indicator, and based on the performance monitoring atoms and target analysis rules corresponding to each type of target performance indicator, construct the performance analysis task corresponding to each type of target performance indicator. It should be understood that the execution process of the performance analysis task is to first collect monitoring data through performance monitoring atoms, and then analyze the collected health data according to the preset target analysis rules, and finally obtain an analysis report.

[0103] Step A302: Generate a performance monitoring and analysis plan for the application system to be analyzed based on each of the performance analysis tasks, the topology structure information, and the mapping relationship between the application nodes and the performance analysis tasks.

[0104] After constructing the performance analysis tasks for each application node, the system topology structure bound to the performance monitoring atom is obtained, and the performance monitoring analysis plan of the application system to be analyzed is generated based on the system topology structure. Among them, the system topology structure bound to the performance monitoring atom contains each performance analysis task, topology information and the mapping relationship between the application node and the performance analysis task. In addition, it should be noted that one plan can be used to complete the performance problem analysis of the entire system, and the plan will be used to generate the performance monitoring analysis task workflow.

[0105] In one possible implementation, if Figure 6 The figure shows the operation process of the access layer. The main operation process of the access layer of the performance analysis system is as follows: input the topological structure information of the application system to be analyzed (including application information, middleware information and database information, etc.); bind a series of performance monitoring atoms to each application node; generate a performance monitoring analysis plan based on the system topology structure bound to the performance monitoring atoms; configure the parameters of each performance monitoring analysis atom according to the performance analysis requirements; configure the trigger rules and bind them to the performance monitoring analysis plan. The trigger rules can be used to trigger the execution of the plan. One trigger rule can correspond to multiple plans; enable the performance monitoring analysis plan, at which time the plan will generate workflow data that can be recognized by the task workflow engine; if the performance monitoring analysis plan is triggered, the execution of the plan can be viewed through the platform portal. A plan can correspond to multiple historical workflows, and a workflow corresponds to one execution of the plan; if the performance monitoring analysis plan is triggered and the workflow is executed correctly, the performance analysis report of the application system can be viewed through the platform portal.

[0106] In another possible implementation, if Figure 7The figure shows a schematic diagram of the execution layer operation process. The main operation process of the access layer of the performance analysis system is: the listener is started by the main initiator to monitor whether a performance analysis trigger event occurs; if so, the performance monitoring analysis plan bound to the trigger rule hit by the performance analysis trigger event is triggered to execute; the task workflow engine reads and parses the workflow information from the database; the task workflow engine automatically promotes the execution of tasks according to the predefined process model; the executor executes the performance monitoring atomic task, obtains the corresponding data and stores it in Kafka+ClickHouse storage; the analyzer obtains the corresponding data of the performance monitoring atom, executes the analysis task, generates and uploads the analysis report of the performance monitoring atom; the analyzer obtains the analysis reports of all performance monitoring atoms in the plan, and generates an aggregate report (i.e., a comprehensive analysis report) based on the LLM algorithm.

[0107] In this way, the embodiment of the present application collects and analyzes data for specific services and systems and obtains detailed and targeted analysis reports by pre-formulating a performance monitoring and analysis plan, thereby simplifying the performance analysis process, lowering the threshold for use, and improving performance optimization efficiency. And by designing an atomic division method for application performance monitoring and a binding method for corresponding analysis tasks, it is ensured that each performance monitoring atom has a corresponding analysis result and report, thereby improving the accuracy and professionalism of the performance analysis report.

[0108] Based on the first embodiment and / or the second embodiment of the present application, in the third embodiment of the present application, the same or similar contents as those in the first embodiment can be referred to the above description, and will not be described in detail later. On this basis, after the step S30, the application performance analysis method further includes:

[0109] Step B10, in response to the first query request, outputting the task workflow of each performance analysis task, so that the user can view the execution progress of the performance monitoring and analysis plan;

[0110] Step B20, in response to the second query request, output the comprehensive performance analysis report, each performance analysis report and each operation data, so that the user can view the execution result of the performance monitoring and analysis plan.

[0111] It should be noted that the user can trigger a request for querying the execution status of the performance monitoring and analysis plan based on the user interface (hereinafter referred to as the first query request for distinction), and can also trigger a request for querying the plan execution results based on the user interface (hereinafter referred to as the second query request for distinction).

[0112] After receiving the first query request, in response to the first query request, the task workflow of each performance analysis task is output so that the user can view the plan execution progress; after receiving the second query request, in response to the second query request, the aggregated performance analysis report, each performance analysis report and the collected operation data are output so that the user can view the plan execution results.

[0113] For example, Figure 8 The figure shows a schematic diagram of the task workflow topology structure. After the task starts, the performance analysis tasks in application 1 and application 2 in the application system to be analyzed are executed, and each performance analysis task includes a performance monitoring atom and an atomic analysis task (i.e., the above-mentioned data analysis task). Application 1 includes CPU analysis task 1, CPU analysis task 2, CPU analysis task 3, memory analysis task 4, memory analysis task 5, and network analysis task 6 to be executed, and application 3 includes network analysis task 7. CPU analysis task 1, CPU analysis task 2, memory analysis task 4, network analysis task 6, and network analysis task 7 are processed in parallel, CPU analysis task 1 and CPU analysis task 3 are processed in series, and memory analysis task 4 and memory analysis task 5 are processed in series. The analysis reports of CPU analysis task 1, CPU analysis task 2, and CPU analysis task 3 are aggregated and analyzed to generate a first aggregated report, the analysis reports of memory analysis task 4 and memory analysis task 5 are aggregated and analyzed to generate a second aggregated report, and the analysis reports of network analysis task 6 and network analysis task 7 are aggregated and analyzed to generate a third aggregated report. The above-mentioned aggregated analysis refers to the semantic fusion processing based on the LLM algorithm. In addition, it should be noted that a task workflow can configure performance monitoring and analysis tasks for multiple targets, and there is an execution order between tasks. After a specific type of analysis task (CPU, memory, network, etc.) is completed, an aggregate analysis task can be configured. The aggregate task can perform joint analysis across types and applications, which has a good effect on the performance bottleneck analysis of the load system.

[0114] Thus, the embodiment of the present application designs a task scheduling engine and feedback mechanism based on DAG (Directed Acyclic Graph) workflow, arranges and schedules all performance monitoring atomic tasks and corresponding analysis tasks under the entire performance monitoring and analysis plan, records the execution progress, status, dependencies, etc. of all atomic tasks in the performance monitoring and analysis plan, completes the performance monitoring and analysis tasks under the specified resource usage, and automatically optimizes the task workflow according to user feedback, so that users can view the plan execution progress in real time. In other words, the embodiment of the present application realizes the improvement of the accuracy of application performance analysis with less resource investment, that is, compared with the method of all-weather performance collection for application performance analysis, the embodiment of the present application is based on the DAG task scheduling algorithm in the scenario of intensive application deployment, schedules performance monitoring and analysis atoms, so as to realize the function of "on-demand" scheduling and executing analysis tasks, thereby saving resource usage and improving feasibility.

[0115] The present application also provides an application performance analysis device. Fig. 9 , the application performance analysis device comprises:

[0116] A response module 10 is used to respond to a performance analysis triggering event and determine a preset performance monitoring and analysis plan corresponding to the performance analysis triggering event, wherein the performance monitoring and analysis plan includes a plurality of performance analysis tasks for performing performance analysis on the application system to be analyzed;

[0117] The data collection module 20 is used to collect the operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a type of performance indicator of the application system to be analyzed;

[0118] The performance analysis module 30 is used to perform performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content of the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

[0119] Optionally, the application performance analysis device further includes a plan construction module, and the plan construction module is used to:

[0120] In response to the information input instruction, obtaining topological structure information of the application system to be analyzed;

[0121] Determine, based on the topology information, each target performance indicator to be analyzed for each application node in the application system to be analyzed;

[0122] A performance monitoring and analysis plan for the application system to be analyzed is generated based on each of the target performance indicators.

[0123] Optionally, the plan building module is further used to:

[0124] Determine a performance analysis task corresponding to each of the target performance indicators, wherein one target performance indicator corresponds to one performance analysis task;

[0125] Based on each of the performance analysis tasks, the topology structure information, and the mapping relationship between the application nodes and the performance analysis tasks, a performance monitoring and analysis plan for the application system to be analyzed is generated.

[0126] Optionally, the plan building module is further used to:

[0127] Determine the performance monitoring atoms corresponding to the application nodes based on the target performance indicators;

[0128] A preset target analysis rule corresponding to each target performance indicator is obtained, and a performance analysis task corresponding to each target performance indicator is constructed based on the performance monitoring atom and the target analysis rule corresponding to each target performance indicator.

[0129] Optionally, the data acquisition module 20 is further used for:

[0130] Determining the execution order of each of the performance analysis tasks based on the execution priority of the performance monitoring atoms bound to each of the performance analysis tasks;

[0131] The operating data corresponding to each target performance indicator in the application system to be analyzed is collected by each performance monitoring atom in accordance with the execution order.

[0132] Optionally, the performance analysis module 30 is further used for:

[0133] Obtaining target analysis rules in each of the performance analysis tasks, analyzing each of the operation data according to each of the target analysis rules and the execution order, and obtaining a performance analysis report for each of the performance analysis tasks;

[0134] Semantic fusion processing is performed on each of the performance analysis reports to obtain a comprehensive performance analysis report.

[0135] Optionally, the application performance analysis device further includes a query module, and the query module is used to:

[0136] In response to the first query request, outputting the task workflow of each of the performance analysis tasks so that the user can view the execution progress of the performance monitoring and analysis plan;

[0137] In response to the second query request, the comprehensive performance analysis report, each performance analysis report and each operation data are outputted so that the user can view the execution result of the performance monitoring and analysis plan.

[0138] The application performance analysis device provided in the embodiment of the present application adopts the application performance analysis method in the above embodiment, which can solve the technical problem of how to improve the accuracy of application performance analysis. Compared with the prior art, the beneficial effects of the application performance analysis device provided in the embodiment of the present application are the same as the beneficial effects of the application performance analysis method provided in the above embodiment, and other technical features in the application performance analysis device are the same as the features disclosed in the above embodiment method, which will not be repeated here.

[0139] The present application provides an application performance analysis device, which includes: at least one processor; and a memory that is communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the application performance analysis method in the above-mentioned embodiment 1.

[0140] Reference below Fig.10 , which shows a schematic diagram of the structure of an application performance analysis device suitable for implementing an embodiment of the present application. The application performance analysis device in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Fig.10 The application performance analysis device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0141] like Fig.10As shown, the application performance analysis device may include a processing device 1001 (e.g., a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of the application performance analysis device are also stored. The processing device 1001, ROM1002, and RAM1004 are connected to each other through a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Generally, the following systems can be connected to the I / O interface 1006: an input device 1007 including, for example, a touch screen, a touch pad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD: Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the application performance analysis device to communicate with other devices wirelessly or by wire to exchange data. Although the figure shows an application performance analysis device with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems can be implemented or provided instead.

[0142] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.

[0143] The application performance analysis device provided by the present application adopts the application performance analysis method in the above embodiment, which can solve the technical problem of how to improve the accuracy of application performance analysis. Compared with the prior art, the beneficial effects of the application performance analysis device provided by the present application are the same as the beneficial effects of the application performance analysis method provided by the above embodiment, and other technical features in the application performance analysis device are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.

[0144] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0145] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

[0146] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, wherein the computer-readable program instructions are used to execute the application performance analysis method in the above-mentioned embodiment.

[0147] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.

[0148] The computer-readable storage medium may be included in the application performance analysis device; or may exist independently without being assembled into the application performance analysis device.

[0149] The above-mentioned computer-readable storage medium carries one or more programs. When the above-mentioned one or more programs are executed by the application performance analysis device, the application performance analysis device: responds to a performance analysis trigger event, determines that the performance analysis trigger event corresponds to a preset performance monitoring and analysis plan, wherein the performance monitoring and analysis plan includes multiple performance analysis tasks for performing performance analysis on the application system to be analyzed; collects operating data corresponding to each target performance indicator in the application system to be analyzed through performance monitoring atoms bound to each of the performance analysis tasks, wherein a performance monitoring atom is used to monitor a class of performance indicators of the application system to be analyzed; performs performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content in the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

[0150] Computer program code for performing the operations of the present application may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0151] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0152] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.

[0153] The readable storage medium provided in the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned application performance analysis method, and can solve the technical problem of how to improve the accuracy of application performance analysis. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in the present application are the same as the beneficial effects of the application performance analysis method provided in the above-mentioned embodiment, and will not be elaborated here.

[0154] An embodiment of the present application provides a computer program product, including a computer program, which implements the steps of the above-mentioned application performance analysis method when executed by a processor.

[0155] The computer program product provided in this application can improve the accuracy of application performance analysis. Compared with the prior art, the beneficial effects of the computer program product provided in the embodiment of this application are the same as the beneficial effects of the application performance analysis method provided in the above embodiment, which will not be described in detail here.

[0156] The above are only preferred embodiments of the present application, and are not intended to limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent processing scope of the present application.

Claims

1. A method for analyzing application performance, characterized in that: The application performance analysis method comprises: In response to a performance analysis triggering event, determining that the performance analysis triggering event corresponds to a preset performance monitoring and analysis plan, wherein the performance monitoring and analysis plan includes a plurality of performance analysis tasks for performing performance analysis on the application system to be analyzed; Collecting the operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a type of performance indicator of the application system to be analyzed; A performance analysis is performed on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content in the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

2. The method according to claim 1, characterized in that Before the step of determining, in response to the performance analysis triggering event, that the performance analysis triggering event corresponds to a preset performance monitoring and analysis plan, the method further includes: In response to the information input instruction, obtaining topological structure information of the application system to be analyzed; Determine, based on the topology information, each target performance indicator to be analyzed for each application node in the application system to be analyzed; A performance monitoring and analysis plan for the application system to be analyzed is generated based on each of the target performance indicators.

3. The method according to claim 2, characterized in that The step of generating a performance monitoring and analysis plan for the application system to be analyzed based on each of the target performance indicators includes: Determine a performance analysis task corresponding to each of the target performance indicators, wherein one target performance indicator corresponds to one performance analysis task; Based on each of the performance analysis tasks, the topology structure information, and the mapping relationship between the application nodes and the performance analysis tasks, a performance monitoring and analysis plan for the application system to be analyzed is generated.

4. The method according to claim 3, characterized in that The step of determining the performance analysis tasks corresponding to each of the target performance indicators comprises: Determine the performance monitoring atoms corresponding to the application nodes based on the target performance indicators; A preset target analysis rule corresponding to each target performance indicator is obtained, and based on the performance monitoring atom and the target analysis rule corresponding to each target performance indicator, a performance analysis task corresponding to each target performance indicator is constructed.

5. The method according to claim 1, characterized in that The step of collecting the operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task includes: Determining the execution order of each of the performance analysis tasks based on the execution priority of the performance monitoring atoms bound to each of the performance analysis tasks; The operating data corresponding to each target performance indicator in the application system to be analyzed is collected by each performance monitoring atom in accordance with the execution order.

6. The method according to claim 5, characterized in that The step of performing performance analysis on the application system to be analyzed based on each of the operation data to obtain a comprehensive performance analysis report includes: Obtaining target analysis rules in each of the performance analysis tasks, analyzing each of the operation data according to each of the target analysis rules and the execution order, and obtaining a performance analysis report for each of the performance analysis tasks; Semantic fusion processing is performed on each of the performance analysis reports to obtain a comprehensive performance analysis report.

7. The method according to any one of claims 1 to 6, characterized in that After the step of performing performance analysis on the application system to be analyzed based on each of the operation data to obtain a comprehensive performance analysis report, the method further includes: In response to the first query request, outputting the task workflow of each of the performance analysis tasks so that the user can view the execution progress of the performance monitoring and analysis plan; In response to the second query request, the comprehensive performance analysis report, each performance analysis report and each operation data are outputted so that the user can view the execution result of the performance monitoring and analysis plan.

8. An application performance analysis device, characterized in that: The application performance analysis device comprises: A response module, configured to respond to a performance analysis triggering event and determine a preset performance monitoring and analysis plan corresponding to the performance analysis triggering event, wherein the performance monitoring and analysis plan includes a plurality of performance analysis tasks for performing performance analysis on the application system to be analyzed; A data collection module, used to collect operation data corresponding to each target performance indicator in the application system to be analyzed through the performance monitoring atoms bound to each performance analysis task, wherein one performance monitoring atom is used to monitor a type of performance indicator of the application system to be analyzed; The performance analysis module is used to perform performance analysis on the application system to be analyzed based on each of the operating data to obtain a comprehensive performance analysis report, wherein the content in the comprehensive performance analysis report represents the degree of influence of each of the target performance indicators on the performance of the application system to be analyzed.

9. An application performance analysis device, characterized in that: The application performance analysis device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the application performance analysis method according to any one of claims 1 to 7.

10. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the computer-readable storage medium. When the computer program is executed by a processor, the steps of the application performance analysis method according to any one of claims 1 to 7 are implemented.

Citation Information

Cited By

  • Program performance analysis method and device and storage medium

    CN119645814A

  • Multi-level resource isolation and concurrency management method for autonomous driving model evaluation

    CN119781988A