Efficient application performance monitoring and predicting method based on Lonyenne operating system

By using Prometheus and pidstat tools for resource monitoring, and combining the ConvBiGRU model for performance prediction, the problem of insufficient performance monitoring and prediction of the Dragon Lizard operating system in high load scenarios has been solved, and efficient and accurate performance monitoring and prediction have been achieved, improving improve the reliability and stability of the system.

CN119336586AActive Publication Date: 2025-01-21WUXI UNIV
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411885737.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-20
Publication Date
2025-01-21
Estimated Expiration
2044-12-20

AI Technical Summary

Technical Problem

In high load scenarios, the performance monitoring and prediction tools of the Longlizar operating system are not yet mature, resulting in difficulty in data collection, high resource consumption, inaccurate performance prediction and poor scalability, increasing the risk of system failure.

Method used

Use Prometheus and pidstat tools for all-round resource monitoring, combine CNN and BiGRU's ConvBiGRU model for performance data prediction, and design data prediction plug-ins, database plug-ins and plug-in managers, and provide visualization services through APIs and web applications.

Benefits of technology

The efficient prediction of key performance indicators such as CPU and memory, ensuring more than 75%of the prediction accuracy and second -level response speed, supporting real -time early warning and expansion, and suitable for performance monitoring and optimization needs in different scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119336586A_ABST
    Figure CN119336586A_ABST
Patent Text Reader

Abstract

The invention provides a high-efficiency application performance monitoring and predicting method based on a Longenia operating system, and belongs to the technical field of computer performance, the method comprises the following steps: firstly, defining a basic model architecture, carrying out pre-training by utilizing a gwa-t-12-bitrains data set, obtaining a pre-training model, exporting the pre-training model as an onx model, embedding a data prediction plug-in, managing by a plug-in manager, and carrying out data prediction on the onx model by utilizing a gwa-t-12-bitrains data set; developing a data collection plug-in based on pidstat and Prometheus, and obtaining real data of a local application process, on one hand, storing the real data in a time sequence database to facilitate subsequent model training and calling, and on the other hand, after data processing, transmitting the real data to a data prediction plug-in to evaluate a prediction effect so as to further improve a prediction model; finally, a data visualization page is developed, meanwhile, a plug-in manager is improved, a data pipeline function is added, and plug-ins such as data collection and data prediction are integrated; the whole application framework is organized so as to conveniently expand application functions and adapt to monitoring and prediction requirements in different scenes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of computer performance, and in particular, relates to an efficient application performance monitoring and prediction method based on a Dragon Lizard operating system. Background Art

[0002] With the rapid development of information technology, modern computing systems are becoming more and more complex and large. In such a complex environment, ensuring system stability and performance is a huge challenge. Traditional performance monitoring methods usually rely on frequent switching between user mode and kernel mode, which easily leads to additional performance overhead, especially in high-load scenarios. This increases the difficulty of real-time performance monitoring and the risk of system problems.

[0003] As one of the domestic operating systems that has attracted much attention in recent years, Anolis OS is widely used in many fields. In order to ensure its stability and performance in high-load scenarios, a set of efficient performance monitoring and prediction tools is needed to provide timely performance data and trend analysis, helping operation and maintenance personnel to quickly locate system bottlenecks and predict potential performance problems, thereby reducing the risk of failure.

[0004] However, most of the current mainstream performance monitoring tools and methods are aimed at general-purpose operating systems, while there is relatively little research on the adaptation and optimization of domestic operating systems, especially domestic systems such as the Longlizard operating system for enterprise-level applications. The Longlizard operating system is designed for large-scale, high-performance computing scenarios. How to ensure its stability and performance under high-load scenarios is one of the important research topics. In particular, there is currently no mature solution for performance prediction and fault warning under high-load conditions. Although the existing tools are relatively complete in collecting system operation status data, they lack the ability to conduct in-depth analysis and prediction of data.

[0005] Therefore, developing a performance monitoring and predictive analysis framework for the Dragon Lizard operating system has important theoretical and practical significance. This framework can not only monitor the operating status of the system in real time, but also predict performance trends through machine learning models, helping operation and maintenance personnel to discover potential problems in advance and make corresponding adjustments. This tool that combines performance monitoring and data prediction will greatly improve the reliability and stability of the system and provide strong support for the further development of domestic operating systems. Summary of the invention

[0006] The present invention proposes an efficient application performance monitoring and prediction method based on the Dragon Lizard operating system to solve the problems of difficult data collection, high system resource consumption, inaccurate performance prediction and poor scalability, so as to improve the resource utilization of the data center and ensure the service quality of the application.

[0007] The present invention is achieved through the following technical solutions: An efficient application performance monitoring and prediction method based on the Dragon Lizard operating system: The method specifically comprises the following steps: S1, using Prometheus and pidstat tools for all-round resource monitoring and data collection; S2, based on the performance data of the virtual machine, the ConvBiGRU model combining CNN and BiGRU is trained and optimized; S3, design data prediction plug-ins, database plug-ins and plug-in managers to adapt to monitoring and prediction needs in different scenarios; S4 provides visualization services through APIs and web applications, making it easy for users to access and use prediction functions and view application performance monitoring results and prediction data.

[0008] Furthermore, in S1, it specifically includes: S1.1, Tool selection and data collection: In the Dragon Lizard operating system environment, deploy Prometheus and pidstat tools according to the operating system type; Prometheus collects comprehensive system-level performance indicators, sets its data storage rules, query statements, and alarm rules; pidstat collects process-level performance data, determines the scope and frequency of the collection process; S1.2, the collected data is uniformly stored in the local time series database; The database plug-in uses efficient stored procedures to perform insert operations based on predefined database architecture and table structure, while maintaining data indexes to ensure fast query access.

[0009] Furthermore, in S1.1, Prometheus collects container metrics: For Docker containers, Prometheus periodically obtains the number of CPU cores, total frequency MHz, usage MHz, usage percentage, total memory capacity KB, usage KB, disk read throughput KB / s, disk write throughput KB / s, network receive throughput KB / s, and network send throughput KB / s of the container according to preset rules. The data format follows the Prometheus specification and is stored in the specified database via network transmission. pidstat collects process metrics: pidstat collects process ID, CPU user usage, system usage, total usage, memory usage KB, disk read throughput KB / s, and disk write throughput KB / s at a set frequency, and stores them in the system's native format for subsequent processing and conversion.

[0010] Further, S2.1, data set preprocessing: sampling with a timestamp of 300ms, first traverse the data set to remove all Nan values; then merge the scattered data files; then sample the merged data at 1s intervals, where every three data are sampled and averaged for smoothing; finally normalize to a uniform data distribution, generate fastStorage_3, rnd_7_3, rnd_8_3, rnd_9_3 sub-datasets; S2.2, model architecture design: The ConvBiGRU model architecture is selected; it configures a convolution layer at the input of the time series data to capture local features with a specific convolution kernel and step size; then connects to the bidirectional GRU layer to process the time series information according to the gating mechanism and integrate forward and backward dependencies; at the end, it connects to the fully connected layer to map the output dimension to the target performance indicator dimension; S2.3, model training and optimization: The Adam optimizer is used in the model training process, and the learning rate decay strategy is selected to further optimize the convergence speed of the model; the Dropout layer is added to prevent overfitting; combined with the early stopping mechanism, the validation loss is continuously monitored, and the training is terminated early when the validation loss of the model no longer decreases.

[0011] S2.4. After the model training is completed, a model evaluation module is developed to focus on the results of the model under various evaluation indicators and the comparison between the predicted value and the true value. During the model evaluation process, mean square error (MSE), mean absolute error (MAE) and MAPE are used for evaluation. Through these evaluation indicators, the prediction performance of the model on different data sets can be fully understood.

[0012] Furthermore, in S3, The data prediction plug-in includes a docker container performance monitoring plug-in based on Prometheus and a local performance monitoring plug-in based on pidstat; The data prediction plug-in is developed by configuring the pre-trained onnx model. The raw data of a recent period of time is taken from the database, divided into multiple normalized batch unit data formats according to the data characteristics and model input requirements, and pushed to the pre-trained ConvBiGRU model for prediction in batches. The prediction results are then denormalized to obtain the predicted data and transmitted to the database. The database plug-in is a plug-in that connects to the local time series database and implements the addition, deletion, modification and query of data in the database. It inserts the local performance data obtained by the data collection plug-in into the local time series database, then receives the parameters for retrieving data from the data prediction plug-in, obtains the original performance data within a certain time range from the local time series database, and returns it to the data prediction plug-in.

[0013] An electronic device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.

[0014] A computer-readable storage medium is used to store computer instructions, and when the computer instructions are executed by a processor, the steps of the above method are implemented.

[0015] Beneficial effects of the present invention The present invention utilizes tools such as Prometheus and pidstat to perform all-round resource monitoring; the ConvBiGRU model combining CNN and BiGRU is used to realize efficient prediction of key performance indicators such as CPU and memory; a simplified data set scaling method is adopted to ensure a prediction accuracy of more than 75% and a response speed in seconds; a plug-in architecture and a user-friendly visual interface are adopted to support real-time warning and expansion, and it is suitable for performance monitoring and optimization needs in different scenarios.

[0016] The present invention realizes comprehensive performance monitoring: using tools such as Prometheus and pidstat, key performance indicators such as CPU, memory, disk, network, etc. at the operating system level are collected in real time to ensure comprehensive monitoring of various resources.

[0017] An efficient prediction model was built: Based on the collected underlying performance data, a machine learning model that can accurately predict application performance was designed and trained, with an accuracy rate of more than 75%.

[0018] Provides an easy-to-use visualization interface: By developing a data visualization web page, users can intuitively view performance monitoring results and forecast data, and provide real-time warning functions so that users can take timely response measures.

[0019] Support plug-in architecture: The system will adopt a plug-in design to facilitate function expansion and customization in different environments, ensuring adaptation to diverse application scenarios.

[0020] Ensure cross-platform compatibility: The model and system must support Linux systems with different kernel versions, especially to achieve stable performance monitoring and prediction functions on the Dragon Lizard operating system. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 The figure is a flow chart of the method of the present invention.

[0022] Figure 2 The data was extracted after preprocessing to address the difficulties in collecting the dataset.

[0023] Figure 3 It is a schematic diagram of the model of the present invention.

[0024] Figure 4 It is a schematic diagram of the prediction results and original data of the model of the present invention.

[0025] Figure 5 It is the web program page of the present invention.

[0026] Figure 6 Evaluation results of the prediction error of the ConvBiGRU model on different datasets.

[0027] Figure 7 For the present invention, Prometheus monitors Docker container indicators and pidstat monitors process indicators. DETAILED DESCRIPTION

[0028] The technical solutions in the embodiments of the present invention will be described clearly and completely below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0029] The experimental methods used in the following examples are conventional methods unless otherwise specified. The materials, reagents, methods and instruments used are conventional materials, reagents, methods and instruments in the art unless otherwise specified, and can be obtained through commercial channels by those skilled in the art.

[0030] The present invention first defines a basic model architecture, uses the gwa-t-12-bitbrains data set for pre-training, and after obtaining the pre-trained model, exports it as an onnx model and embeds it into a data prediction plug-in, which is managed by a plug-in manager. In addition, a data collection plug-in based on pidstat and Prometheus is developed to obtain the real data of the local application process, which is stored in a time series database on the one hand to facilitate subsequent model training calls, and on the other hand, after data processing, is transmitted to the data prediction plug-in to evaluate the prediction effect, so as to further improve the prediction model. Finally, a data visualization page is developed, and the plug-in manager is improved at the same time, the data pipeline function is added, and plug-ins such as data collection and data prediction are integrated. The entire application framework is organized to facilitate the expansion of application functions and adapt to monitoring and prediction needs in different scenarios.

[0031] like Figure 1 As shown, the present invention proposes an efficient application performance monitoring and prediction method based on the Dragon Lizard operating system. S1, using Prometheus and pidstat tools for all-round resource monitoring and data collection; Prometheus is responsible for collecting comprehensive system-level performance indicators and various performance indicators for Docker containers, thereby realizing performance monitoring at the system and container levels. Pidstat focuses on collecting process-level performance data and monitors the running status of processes by collecting various relevant indicators of the process. The combination of the two realizes all-round performance monitoring from system, container to process levels.

[0032] S1.1, Tool selection and data collection process: In the Dragon Lizard operating system environment, accurately deploy Prometheus and pidstat tools according to the operating system type (Debian / Ubuntu or CentOS / RHEL); Prometheus is carefully configured to collect comprehensive system-level performance indicators and set parameters such as data storage rules, query statements, and alarm rules; Prometheus collects container metrics: For Docker containers, Prometheus periodically obtains the container's CPU core number, total frequency (MHz), usage (MHz), usage percentage, total memory capacity (KB), usage (KB), disk read throughput (KB / s), disk write throughput (KB / s), network receive throughput (KB / s), network send throughput (KB / s) and other indicator data according to preset rules. The data format follows the Prometheus specification and is stored in the specified database via network transmission.

[0033] pidstat focuses on process-level performance data and determines key settings such as the scope and frequency of the collected processes; ensuring that the two work together to achieve full performance data capture.

[0034] pidstat collects process metrics: pidstat collects process ID, CPU user usage, system usage, total usage, memory usage (KB), disk read throughput (KB / s), disk write throughput (KB / s) and other data at a set frequency, and stores them in the system's native format for subsequent processing and conversion; S1.2, the collected data is uniformly stored in the local time series database. The database plug-in uses efficient stored procedures to perform insertion operations based on the predefined database architecture and table structure, while maintaining data indexes to ensure fast query access, ensure data integrity and consistency, and prepare original materials for subsequent analysis.

[0035] S2, based on the performance data of the virtual machine, the ConvBiGRU model combining CNN and BiGRU is trained and optimized; Based on the collected performance data of the virtual machine, the ConvBiGRU model combining CNN and BiGRU is trained and optimized, so that the model has the ability to predict the performance data.

[0036] Based on the gwa-t-12-bitbrains dataset, which contains 1750 VM performance indicators in Bitbrains distributed data centers. (Bitbrains is a service provider specializing in managed hosting and business computing for enterprises. Customers include many major banks (ING), credit card operators (ICS), insurance companies (Aegon), etc. Bitbrains hosts applications used in the solvency field; examples of application vendors include Towers Watson and Algorithmics. These applications are often used for financial reporting and are mainly used at the end of the financial quarter.) Each file contains performance metrics for a VM. The files are organized by trace: fastStorage and Rnd. The first trace, fastStorage, consists of 1,250 VMs connected to fast Storage Area Network (SAN) storage devices. The second trace, Rnd, consists of 500 VMs connected either to fast SAN devices or to much slower Network Attached Storage (NAS) devices. The fastStorage trace contains a higher percentage of application servers and compute nodes than the Rnd trace, due to the higher performance of the storage connected to the fastStorage machines. Conversely, for the Rnd trace, a higher percentage of management machines was observed, which only require lower performance and less frequently accessed storage.

[0037] In the Rnd directory, the files are organized into three subdirectories based on the month in which the metric was recorded. The format of each file is line-based, with each line representing an observation of a performance metric. Each column of a line is separated by ";\t", and the format of each line is (1) Timestamp: the number of milliseconds since 1970-01-01.

[0038] (2) Number of CPU cores: The number of preset virtual CPU cores.

[0039] (3) Provisioned CPU capacity (CPU request): CPU capacity in MHZ, equal to the number of cores x the speed of each core.

[0040] (4) CPU usage: in MHZ.

[0041] (5) CPU usage: expressed as a percentage; (6) Provisioned memory (requested memory): The memory capacity of the VM (in KB).

[0042] (7) Memory usage: Actively used memory in KB.

[0043] (8) Disk read throughput: in KB / s; (9) Disk write throughput: in KB / s; (10) Network receiving throughput: in KB / s; (11) Network transmission throughput: in KB / s; S2.1 Dataset preprocessing: The original data set is the workload performance data of each virtual machine node, and the goal is to predict the application performance data. The most common application performance data is the application's CPU usage and memory usage, as well as the local disk read and write usage. For web applications, there is also network upload and download usage. The general indicators of application performance can also be extracted: (1) CPU usage: expressed as a percentage; (2) Memory usage: in KB; (3) Disk read throughput: in KB / s; (4) Disk write throughput: in KB / s; (5) Network receiving throughput: in KB / s; (6) Network transmission throughput: in KB / s; This is consistent with the characteristics of the original data set. The trajectory of the original data set is sampled with a timestamp of 300ms. First, the data set is traversed to remove all Nan values; then the scattered data files are merged; then the merged data is sampled at 1s intervals (every three data are sampled and averaged) for smoothing; finally, it is normalized to a unified data distribution to generate fastStorage_3, rnd_7_3, rnd_8_3, and rnd_9_3 sub-datasets. Professional algorithms are used to handle the magnitude differences between system and application data to achieve data standardization preprocessing, such as Figure 2 shown.

[0044] S2.2 Model architecture design Figure 3 As shown, Select the ConvBiGRU model architecture. This model is similar to ConvBiLSTM, except that GRU is used instead of LSTM layers. Convolutional layers help extract local features, while GRU processes the overall time series information.

[0045] This structure is more computationally efficient than the LSTM version and also shows good performance in the test. After experimental comparison, the ConvBiGRU model has achieved the best balance between prediction accuracy and training speed, especially in processing time series data of application performance. The ConvBiGRU model has shown good convergence during training and testing.

[0046] It configures a convolutional layer at the input end of the time series data to capture local features with specific convolution kernels and step sizes; then connects to the bidirectional GRU layer to process the time series information according to the gating mechanism and integrate forward and backward dependencies; at the end, it connects to the fully connected layer to map the output dimension to the target performance indicator dimension. The parameters of each layer are fine-tuned according to the characteristics of the data set and the performance goals to build an accurate prediction model framework.

[0047] Within 50 epochs, the training loss of the model gradually decreased and tended to be stable, while the test loss remained stable in a lower range, indicating that the model did not overfit. This shows that the ConvBiGRU model can fit the training data well and also performs well on the test data.

[0048] S2.3, model training and optimization; The Adam optimizer was used in the model training process, and the learning rate decay strategy was selected to further optimize the convergence speed of the model and balance the convergence speed and accuracy. A Dropout layer was added to the model to randomly block neurons based on probability to prevent overfitting; combined with the early stopping mechanism, the verification loss was continuously monitored. Once there was no downward trend for multiple consecutive rounds, the training was terminated to lock the optimal model state and ensure the robustness and generalization of the model.

[0049] Once trained, the model is used to predict the performance of the application in real time and send alerts when potential performance issues are detected.

[0050] S2.4, after the model training is completed, the model evaluation module is developed to focus on the results of the model under various evaluation indicators and the curve comparison between the predicted value and the true value, such as Figure 6 As shown in the figure, a series of evaluation indicators are used in the model evaluation process, including mean square error (MSE), mean absolute error (MAE) and MAPE. Through these evaluation indicators, we can fully understand the prediction performance of the model on different data sets.

[0051] (1) CPU performance evaluation: In terms of CPU cores and CPU usage [%] metrics, the models (rnd_7_3, rnd_8_3, rnd_9_3) on three different datasets have similar performances in terms of MAE and RMSE, indicating that these models are stable in predicting CPU performance.

[0052] The model trained with the fastStorage dataset has the lowest MAE and RMSE on CPU cores, indicating that it has higher prediction accuracy in this metric.

[0053] (2) Memory performance evaluation: In terms of the Memory usage [KB] and Memory capacity provisioned [KB] indicators, the model trained on the rnd_8_3 dataset has a significantly higher RMSE value, indicating that the model on this dataset has a larger error in predicting memory usage.

[0054] The MAE and RMSE of the fastStorage dataset model are relatively low, indicating that the model is more accurate in predicting memory usage.

[0055] (3) Disk and network performance evaluation: The MAPE values ​​for Disk read throughput [KB / s] and Disk write throughput [KB / s] are very high, especially when using the rnd_8_3 dataset, indicating that the model has a large bias in predicting disk performance.

[0056] The predictions of Network received throughput [KB / s] and Network transmitted throughput [KB / s] also show high errors, which may be related to the characteristics of the dataset or the limitations of the model structure.

[0057] (4) Summary: In general, the model's prediction performance on CPU cores, Memory usage, and Disk write throughput is relatively stable. Although there are higher errors in some indicators (such as disk and network related indicators), these differences can be reduced through further model optimization.

[0058] The model trained using the fastStorage dataset shows better stability and accuracy in multiple performance indicators, which may be related to the characteristics of the dataset and the adaptability of the model.

[0059] When reasoning on the entire dataset, the ConvBiGRU model showed good prediction capabilities, especially when dealing with large-scale data. The ConvBiGRU model can effectively predict performance when dealing with complex time series data in real environments, and has high practical value.

[0060] S3, design data prediction plug-ins, database plug-ins and plug-in managers to adapt to monitoring and prediction needs in different scenarios; the data prediction plug-in takes out the raw data of the recent period from the database, pushes it to the pre-trained ConvBiGRU model for prediction after processing, and finally obtains the predicted data and transmits it to the database. That is, this step performs the performance prediction operation and processes and stores the prediction results; Figure 4 Shown is a schematic diagram of the prediction results and original data of the model of the present invention.

[0061] The data prediction plug-in includes a docker container performance monitoring plug-in based on Prometheus and a local performance monitoring plug-in based on pidstat; Figure 7 As shown in the figure, pidstat mainly focuses on the usage of system resources such as CPU, memory, and I / O, and is not designed to monitor network traffic. Therefore, its main purpose is to help users analyze system bottlenecks, especially in terms of CPU and memory resources.

[0062] The data prediction plug-in is developed based on the pre-trained onnx model configuration. It takes out the raw data of a recent period from the database, divides it into multiple normalized batch unit data formats according to the data characteristics and model input requirements, and pushes them in batches to the pre-trained ConvBiGRU model for prediction. The prediction results are then denormalized to obtain the predicted data and transmitted to the database.

[0063] The database plug-in is a plug-in that connects to the local time series database and implements the addition, deletion, modification and query of database data. It inserts the local performance data obtained by the data collection plug-in into the local time series database, and then receives the parameters for retrieving data from the data prediction plug-in, obtains the original performance data within a certain time range from the local time series database, and returns it to the data prediction plug-in.

[0064] The plugin manager allows multiple data collection plugins and multiple data prediction plugins to exist and manage configurations in a unified manner.

[0065] S4, provide services through API and Web applications: develop data visualization web pages and backend API interfaces, so that users can easily access and use prediction functions and view the performance monitoring results and prediction data of the application.

[0066] The ConvBiGRU model processes input data according to its built-in architecture and parameters, and generates prediction results through convolution, GRU and fully connected layer operations. The prediction results restore the true value domain through normalized inverse operations and are transmitted in a standardized format through the data pipeline, providing accurate data basis for subsequent visualization and decision-making responses, and seamlessly connecting to system performance monitoring and management processes.

[0067] like Figure 5 As shown in the figure, the data visualization page is mainly divided into three major sections and five panels. The upper left side is the system overall status display panel, which displays the total performance usage of the current system. When a certain performance usage is too high, it will be marked in red to prompt the user; the lower left side is the configuration panel of the background plug-in system, which can edit the necessary configuration of the initialization plug-in; in the middle is the performance data collection display panel of the two data collection plug-ins developed, which displays the performance data list of each container id or pid collected, and a display button is set on the left side of each data collection page. Clicking this button will display the monitoring chart of each indicator of the corresponding container id or pid. Above the performance display chart on the right is the prediction and error calculation panel, which displays the error of each indicator between the predicted value and the actual value in real time.

[0068] The data visualization page presents a panoramic view of system performance with an intuitive layout. The system overall status panel prominently displays global resource usage and real-time risk monitoring; the plug-in configuration panel flexibly customizes plug-in parameters; the data collection panel presents container and process performance data in detail, and interactive charts analyze details. The prediction and error calculation panel accurately compares the predicted value with the actual value, and triggers an immediate warning when the error exceeds the threshold, helping operation and maintenance personnel to respond to performance fluctuations agilely and ensure stable and efficient operation of the system.

[0069] An electronic device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.

[0070] A computer-readable storage medium is used to store computer instructions, and when the computer instructions are executed by a processor, the steps of the above method are implemented.

[0071] The memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory, ROM, a programmable read-only memory, PROM, an erasable programmable read-only memory, EPROM, an electrically erasable programmable read-only memory, EEPROM, or a flash memory. The volatile memory may be a random access memory, RAM, which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory static RAM, SRAM, dynamic random access memory dynamic RAM, DRAM, synchronous dynamic random access memory synchronous DRAM, SDRAM, double data rate synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM, enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM, synchronous connection dynamic random access memory synchlink DRAM, SLDRAM and direct memory bus random access memory direct rambus RAM, DR RAM. It should be noted that memory of the methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0072] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented by software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center through a wired method such as coaxial cable, optical fiber, digital subscriber line digital subscriber line, DSL or wireless such as infrared, wireless, microwave, etc. to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media integrated. The available medium can be a magnetic medium such as a floppy disk, a hard disk, a tape, an optical medium such as a high-density digital video disc digital video disc, DVD, or a semiconductor medium such as a solid state hard disk solid state disc, SSD, etc.

[0073] In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in a processor or an instruction in the form of software. The steps of the method disclosed in conjunction with the embodiment of the present application can be directly embodied as a hardware processor for execution, or a combination of hardware and software modules in a processor for execution. The software module can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor reads the information in the memory and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it is not described in detail here.

[0074] It should be noted that the processor in the embodiment of the present application can be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiment can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor can be a general-purpose processor, a digital signal processor DSP, an application-specific integrated circuit ASIC, a field programmable gate array FPGA or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware decoding processor to perform, or the hardware and software modules in the decoding processor can be combined to perform. The software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.

[0075] The above is a detailed introduction to the efficient application performance monitoring and prediction method based on the Dragon Lizard operating system proposed in the present invention, and the principles and implementation methods of the present invention are explained. The description of the above embodiments is only used to help understand the method of the present invention and its core idea; at the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present invention.

Claims

1. An efficient application performance monitoring and prediction method based on the Dragon Lizard operating system, characterized in that: The method specifically comprises the following steps: S1, use Prometheus and pidstat tools for resource monitoring and data collection; S2, based on the performance data of the virtual machine, the ConvBiGRU model combining CNN and BiGRU is trained and optimized; S2.1, data set preprocessing: sampling with a timestamp of 300ms, first traverse the data set to remove all Nan values; then merge the scattered data files; then sample the merged data at 1s intervals, where every three data are sampled and averaged for smoothing; finally normalize to a uniform data distribution, generate fastStorage_3, rnd_7_3, rnd_8_3, rnd_9_3 sub-datasets; S2.2, model architecture design: The ConvBiGRU model architecture is selected; it configures a convolution layer at the input end of the time series data to capture local features with convolution kernels and strides; then connects to the bidirectional GRU layer to process the time series information according to the gating mechanism and integrate forward and backward dependencies; at the end, it connects to the fully connected layer to map the output dimension to the target performance indicator dimension; S2.3, model training and optimization: The Adam optimizer is used in the model training process, and the learning rate decay strategy is selected to further optimize the convergence speed of the model; the Dropout layer is added to prevent overfitting; combined with the early stopping mechanism, the validation loss is continuously monitored, and the training is terminated early when the validation loss of the model no longer decreases; S2.4, after the model training is completed, develop a model evaluation module to focus on the results of the model under various evaluation indicators and the comparison between the predicted value and the true value. In the process of model evaluation, mean square error (MSE), mean absolute error (MAE) and MAPE are used for evaluation; through these evaluation indicators, the prediction performance of the model on different data sets can be fully understood; S3, design data prediction plug-ins, database plug-ins and plug-in managers to adapt to monitoring and prediction needs in different scenarios; S4 provides visualization services through APIs and web applications, making it easy for users to access and use prediction functions and view application performance monitoring results and prediction data.

2. The method according to claim 1, characterized in that: In S1, it specifically includes: S1.1, Tool selection and data collection: In the Dragon Lizard operating system environment, deploy Prometheus and pidstat tools according to the operating system type; Prometheus collects comprehensive system-level performance indicators, sets its data storage rules, query statements, and alarm rules; pidstat collects process-level performance data, determines the scope and frequency of the collection process; S1.2, the collected data is uniformly stored in the local time series database; The database plug-in uses stored procedures to perform insert operations based on the predefined database architecture and table structure, while maintaining data indexes to ensure fast query access.

3. The method according to claim 2, characterized in that: In S1.1, Prometheus collects container metrics: For Docker containers, Prometheus periodically obtains the number of CPU cores, total frequency MHz, usage MHz, usage percentage, total memory capacity KB, usage KB, disk read throughput KB / s, disk write throughput KB / s, network receive throughput KB / s, and network send throughput KB / s of the container according to preset rules. The data format follows the Prometheus specification and is stored in the specified database via network transmission. pidstat collects process metrics: pidstat collects process ID, CPU user usage, system usage, total usage, memory usage KB, disk read throughput KB / s, and disk write throughput KB / s at a set frequency, and stores them in the system's native format for subsequent processing and conversion.

4. The method according to claim 3, characterized in that: In S3, The data prediction plug-in includes a docker container performance monitoring plug-in based on Prometheus and a local performance monitoring plug-in based on pidstat; The data prediction plug-in is developed by configuring the pre-trained onnx model. The raw data of a recent period of time is taken from the database, divided into multiple normalized batch unit data formats according to the data characteristics and model input requirements, and pushed to the pre-trained ConvBiGRU model for prediction in batches. The prediction results are then denormalized to obtain the predicted data and transmitted to the database. The database plug-in is a plug-in that connects to the local time series database and implements the addition, deletion, modification and query of data in the database. It inserts the local performance data obtained by the data collection plug-in into the local time series database, then receives the parameters for retrieving data from the data prediction plug-in, obtains the original performance data from the local time series database, and returns it to the data prediction plug-in.

5. An electronic device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 4 are implemented.

6. A computer-readable storage medium for storing computer instructions, characterized in that: When the computer instructions are executed by a processor, the steps of the method according to any one of claims 1 to 4 are implemented.

Citation Information

Patent Citations

  • Prediction type elastic scaling method and system of Kubernetes

    CN115774605A

  • 1200V SiCMOSFET modeling optimization and performance prediction method based on neural network

    CN118627445A

  • Interactive forecast modeling based on visualizations

    US20210390483A1