Performance analysis method, device, system, equipment, medium and program product

By acquiring and analyzing user interaction behavior data, combined with performance problem classification and prediction models, a more comprehensive performance analysis is provided, which solves the problem in the existing technology of relying on static indicators that cannot fully reflect the performance status, and achieves more accurate and efficient performance optimization. .

CN119311542APending Publication Date: 2025-01-14SHANGHAI BILIBILI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411374317.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-27
Publication Date
2025-01-14

AI Technical Summary

Technical Problem

Existing front-end performance analysis tools mainly rely on static metrics and cannot fully reflect the performance status of websites or web applications, resulting in limited optimization results.

Method used

By obtaining interactive behavior data generated by users browsing pages, performance data is generated, and performance problem classification models and prediction models are used to classify and predict performance problems, providing a more comprehensive performance analysis.

Benefits of technology

It achieves accurate classification and prediction of website or web application performance problems, improves the efficiency and accuracy of performance optimization, and reduces labor costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119311542A_ABST
    Figure CN119311542A_ABST
Patent Text Reader

Abstract

The invention provides a performance analysis method, device and system, equipment, a medium and a program product. A specific implementation mode of the performance analysis method in the application comprises the following steps: obtaining interaction behavior data generated by browsing a page by a user; and generating performance data of the page based on the interaction behavior data. According to the implementation mode, static performance indexes such as page loading and the like are considered, and the influence of user interaction behaviors is also considered, so that the real performance condition of a website or Web application can be comprehensively reflected.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a performance analysis method, device, system, equipment, medium and program product. Background Art

[0002] Front-end performance analysis refers to the process of evaluating and optimizing the loading speed, rendering efficiency, and interactive responsiveness of a website or web application in a user's browser. It aims to ensure that the website or web application can respond quickly to user operations and provide users with a smooth and delay-free experience. By improving the overall performance of the website or web application, user satisfaction can be improved.

[0003] Currently, front-end performance analysis tools mainly focus on static indicators such as page loading time, resource loading efficiency, etc. These indicators are crucial in evaluating the performance of the page when it is first loaded. Summary of the invention

[0004] Multiple aspects of the present application provide a performance analysis method, apparatus, system, device, medium and program product to solve the problem that using static indicators to reflect the performance status of a website or Web application is too one-sided.

[0005] One aspect of the present application provides a method for training a performance problem classification model, comprising: obtaining sample interaction behavior data generated by a sample user browsing a sample page, and a sample performance problem label of the sample page; generating sample performance data of the sample page based on the sample interaction behavior data; taking the sample interaction behavior data and the sample performance data as input, and the sample performance problem label as the expected output, to train a performance problem classification model.

[0006] Another aspect of the present application provides a performance problem prediction model training method, comprising: obtaining sample interaction behavior data generated by a sample user browsing a sample page in a first time period, and a sample performance problem label of the sample page in a second time period, wherein the second time period is after the first time period; generating sample performance data of the sample page based on the sample interaction behavior data; taking the sample interaction behavior data and the sample performance data as input, and taking the sample performance problem label as expected output, to train a performance problem prediction model.

[0007] Another aspect of the present application provides a performance analysis method, comprising: obtaining interactive behavior data generated by a user browsing a page; and generating performance data of the page based on the interactive behavior data.

[0008] Another aspect of the present application provides a method for capturing interactive behavior data, comprising: based on a pre-deployed script, capturing interactive behavior data generated by a user browsing a page; and sending the interactive behavior data to a server.

[0009] Another aspect of the present application provides a performance problem classification model training device, including: an acquisition module, configured to acquire sample interaction behavior data generated by sample users browsing sample pages, and sample performance problem labels of the sample pages; a generation module, configured to generate sample performance data of the sample pages based on the sample interaction behavior data; and a training module, configured to take the sample interaction behavior data and the sample performance data as input, and the sample performance problem labels as expected output, to train a performance problem classification model.

[0010] Another aspect of the present application provides a performance problem prediction model training device, including: an acquisition module, configured to acquire sample interaction behavior data generated by a sample user browsing a sample page within a first time period, and a sample performance problem label of the sample page within a second time period, wherein the second time period is after the first time period; a generation module, configured to generate sample performance data of the sample page based on the sample interaction behavior data; and a training module, configured to take the sample interaction behavior data and the sample performance data as input, and the sample performance problem label as an expected output, to train a performance problem prediction model.

[0011] Another aspect of the present application provides a performance analysis device, including: an interactive behavior data acquisition module, configured to acquire interactive behavior data generated by a user browsing a page; and a performance data generation module, configured to generate performance data of the page based on the interactive behavior data.

[0012] Another aspect of the present application provides an interactive behavior data capturing device, comprising: a capturing module, configured to capture interactive behavior data generated by a user browsing a page based on a pre-deployed script; and a sending module, configured to send the interactive behavior data to a server.

[0013] Another aspect of the present application provides a performance analysis system, including: a client and a server; the client is used to capture the interactive behavior data generated by users browsing pages based on a pre-deployed script, and send it to the server; the server is used to generate performance data of the page based on the interactive behavior data.

[0014] Another aspect of the present application provides an electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable 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 performance problem classification model training method or the performance problem prediction model training method or the performance analysis method or the interactive behavior data capture method as described above.

[0015] In another aspect of the present application, a computer-readable storage medium is provided, on which computer program instructions are stored, and the computer program instructions can be executed by a processor to implement the performance problem classification model training method or performance problem prediction model training method or performance analysis method or interactive behavior data capture method as described above.

[0016] In another aspect of the present application, a computer program product is provided, including a computer program, which, when executed by a processor, implements the performance problem classification model training method or performance problem prediction model training method or performance analysis method or interactive behavior data capture method as described above.

[0017] In the solution provided in the embodiment of the present application, a performance problem classification model is trained through a performance problem classification model training method. The performance problem classification model can be used to classify performance problems of pages in a website or Web application, thereby assisting developers in locating and optimizing performance problems of pages, improving locating efficiency, and reducing labor costs.

[0018] In the solution provided by the embodiment of the present application, a performance problem prediction model is trained through a performance problem prediction model training method. The performance problem prediction model can predict future performance problems of a page based on the historical data of the page, and can be used to predict future performance problems of pages in a website or Web application, thereby assisting developers to locate and optimize performance problems of the page in advance, which not only improves the location efficiency and reduces labor costs, but also can optimize the page in advance and improve the user experience of the website or Web application.

[0019] In the solution provided in the embodiment of the present application, the performance of the page is analyzed based on the interactive behavior data through a performance analysis method, which not only takes into account static performance indicators such as page loading, but also takes into account the impact of user interactive behavior, thereby being able to fully reflect the actual performance status of the website or Web application.

[0020] In the solution provided in the embodiment of the present application, a script is deployed on the client through an interactive behavior data capture method to capture data generated by users performing various interactive behaviors when browsing pages. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] In order to more clearly illustrate the technical solutions in the embodiments of the present application, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0022] Other features, objects and advantages of the present application will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings:

[0023] Figure 1 A processing flow chart of an embodiment of a performance problem classification model training method provided in the present application;

[0024] Figure 2 A processing flow chart of an embodiment of a performance problem prediction model training method provided by the present application;

[0025] Figure 3 A processing flow chart of an embodiment of the performance analysis method provided by the present application;

[0026] Figure 4 A processing flow chart of another embodiment of the performance analysis method provided by the present application;

[0027] Figure 5 A processing flow chart of an embodiment of the interactive behavior data capturing method provided by the present application;

[0028] Figure 6 A schematic diagram of the structure of an embodiment of a performance problem classification model training device provided by the present application;

[0029] Figure 7 A schematic diagram of the structure of an embodiment of a performance problem prediction model training device provided by the present application;

[0030] Figure 8 A schematic diagram of the structure of an embodiment of a performance analysis device provided by the present application;

[0031] Fig. 9 A schematic diagram of the structure of an embodiment of the interactive data capturing device provided by the present application;

[0032] Fig.10 An interactive timing diagram of an embodiment of the performance analysis system provided by the present application;

[0033] Fig.11 A schematic diagram of the structure of a device suitable for implementing the solution in the embodiment of the present application;

[0034] The same or similar reference numerals in the drawings represent the same or similar components. DETAILED DESCRIPTION

[0035] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0036] In a typical configuration of the present application, the terminal and the equipment of the service network each include one or more processors (CPU), input / output interface, network interface and memory.

[0037] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0038] Computer readable media include permanent and non-permanent, removable and non-removable media, and can be implemented by any method or technology to store information. Information can be computer program instructions, data structures, modules of programs or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.

[0039] The embodiment of the present application provides a performance problem classification model training method, first obtaining sample interaction behavior data generated by sample users browsing sample pages, and sample performance problem labels of sample pages; then generating sample performance data of sample pages based on the sample interaction behavior data; finally, taking the sample interaction behavior data and sample performance data as input, and taking the sample performance problem labels as expected output, training to obtain a performance problem prediction model. The performance problem classification model can be used to classify performance problems of pages in websites or Web applications, thereby assisting developers in locating and optimizing performance problems of pages, improving location efficiency, and reducing labor costs.

[0040] The embodiment of the present application provides a performance problem prediction model training method, first obtaining sample interaction behavior data generated by sample users browsing sample pages in a first time period, and sample performance problem labels of sample pages in a second time period; then generating sample performance data of sample pages in the first time period based on the sample interaction behavior data in the first time period; finally, taking the sample interaction behavior data and sample performance data in the first time period as input, and taking the sample performance problem labels in the second time period as expected output, a performance problem prediction model is trained. The performance problem prediction model can predict future performance problems of a page based on the historical data of the page, and can be used to predict future performance problems of pages in a website or Web application, thereby assisting developers in locating and optimizing performance problems of pages in advance, which not only improves positioning efficiency and reduces labor costs, but also optimizes pages in advance and improves the user experience of websites or Web applications.

[0041] The embodiment of the present application provides a performance analysis method, which first obtains the interactive behavior data generated by the user browsing the page; then generates the performance data of the page based on the interactive behavior data. The performance analysis method not only considers static performance indicators such as page loading, but also considers the impact of user interactive behavior, so as to fully reflect the real performance status of the website or Web application.

[0042] The embodiment of the present application provides a method for capturing interactive behavior data, firstly based on a pre-deployed script, capturing interactive behavior data generated by a user browsing a page; then sending the interactive behavior data to a server. Through the interactive behavior data capturing method, by deploying a script on a client, data generated by a user performing various interactive behaviors while browsing a page can be captured.

[0043] In actual scenarios, the execution subject of the above method can be a user device, or a network device, or a device formed by integrating a user device and a network device through a network, or an application running on the above device. The user device includes but is not limited to various terminal devices such as computers, mobile phones, tablets, smart watches, and bracelets. The network device includes but is not limited to network hosts, single network servers, multiple network server sets, or computer sets based on cloud computing. Here, the cloud is composed of a large number of hosts or network servers based on cloud computing (Cloud Computing), where cloud computing is a type of distributed computing, a virtual computer composed of a group of loosely coupled computer sets.

[0044] Figure 1 The processing flow 100 of an embodiment of the performance problem classification model training method provided by the present application is shown, and the method at least includes the following processing steps:

[0045] Step S101, obtaining sample interaction behavior data generated by sample users browsing sample pages, and sample performance problem tags of the sample pages.

[0046] In this embodiment, the execution subject of the performance problem classification model training method can obtain sample interaction behavior data generated by sample users browsing sample pages, as well as sample performance problem labels of sample pages.

[0047] The sample page may be a page in any website or web application. The sample user may be any user who browses the sample page. The sample interaction behavior data may be interaction behavior data generated by the sample user performing various interaction behaviors when browsing the sample page. The interaction behavior may include but is not limited to click, scroll, page loading, etc. The interaction behavior data may include but is not limited to the interaction behavior, the occurrence timestamp of the interaction behavior, DOM (Document Object Model) element information and context data related to the interaction behavior, interaction behavior heat map, page access path, etc.

[0048] Usually, the front-end programming language JavaScript can be used to monitor various interactive behaviors of sample users when browsing sample pages.

[0049] Event listeners can be deployed based on JavaScript to track user interactions. Listeners can cover various interactions that users may perform, including but not limited to clicks, scrolling, page loading, etc. Through the DOM event flow mechanism, listeners can also respond instantly when users perform various interactions, thereby ensuring the real-time and accuracy of data capture.

[0050] In addition, when monitoring interactive behaviors, JavaScript can also be used to record the time when the interactive behaviors occur as well as the page elements and data related to them.

[0051] When monitoring interactive behaviors, JavaScript scripts can also record the precise timestamp of the interactive behaviors, which can usually reach the millisecond level of accuracy. At the same time, JavaScript scripts can also collect DOM element information and context data related to the interactive behaviors. These data may include but are not limited to the element ID, class name, location coordinates, and any related user input or status information that triggers the interactive behaviors to ensure the integrity of the interactive behavior data records.

[0052] Among them, the sample performance problem label can be used to mark the performance problems of the sample page. Usually, in order to ensure the quality of the training sample, professional technicians can analyze the performance problems of the sample page to ensure the accuracy of the sample performance problem label. Of course, other machine learning models can also be used to analyze the performance problems of the sample page, which is not limited here.

[0053] In addition, in order to ensure the quality of training samples, the sample interaction behavior data may be cleaned, for example, by removing sample interaction behavior data with outliers.

[0054] Step S102: Generate sample performance data of the sample page based on the sample interaction behavior data.

[0055] In this embodiment, the execution entity may generate sample performance data of the sample page based on the sample interaction behavior data.

[0056] The sample performance data may include but are not limited to sample performance indicators, the relationship between sample interaction behavior data and sample performance indicators, etc. The sample performance indicators may include but are not limited to sample page response time, sample interaction delay time, sample resource loading time, etc. The relationship between sample interaction behavior data and sample performance indicators may be, for example, the relationship between the number of sample page clicks and the sample page response time.

[0057] In some embodiments, the sample interaction behavior data is analyzed using a preset analysis algorithm to generate sample performance indicators, including but not limited to at least one of the following:

[0058] First, the difference between the sample page request initiation time and the sample page rendering start time is calculated to obtain the sample page response time.

[0059] The sample interaction behavior data may include the sample page request initiation time and the sample page rendering start time. The sample page response time may be used to record the time difference from when the sample user initiates a request for the sample page to when the sample page starts rendering.

[0060] Second, the difference between the sample interaction behavior execution time and the sample system response time is calculated to obtain the sample interaction delay time.

[0061] The sample interaction behavior data may include the sample interaction behavior execution time and the sample system response time. The sample interaction delay time may be used to record the time difference from capturing the sample user's interaction behavior (such as clicking) to the sample system response (such as the appearance of a pop-up window).

[0062] Third, the difference between the sample resource loading completion time and the sample resource loading start time is calculated to obtain the sample resource loading time.

[0063] The sample interaction behavior data may include sample resource loading completion time and sample resource loading start time. The sample resource loading time may be used to record the loading completion time of various resources (such as CSS (Cascading Style Sheets), JS (JavaScript), images, etc.).

[0064] In some embodiments, based on the calculated sample performance indicators, a preset analysis model may be used to analyze the relationship between the sample interaction behavior data and the sample performance indicators.

[0065] Generally, through association analysis, the relationship between the interactive behavior of sample users (such as clicks, scrolling) and sample performance indicators (such as page loading time) can be analyzed. Through regression analysis, the impact of the interactive behavior of sample users on sample performance indicators can be predicted. For example, the number of sample page clicks and the sample page response time are input into a linear regression model to obtain the relationship between the number of sample page clicks and the sample page response time. Among them, the sample interactive behavior data may include the number of sample page clicks. The sample performance indicators may include the sample page response time.

[0066] Step S103, taking the sample interaction behavior data and the sample performance data as input, and taking the sample performance problem label as the expected output, to train and obtain a performance problem classification model.

[0067] In this embodiment, the execution entity may take sample interaction behavior data and sample performance data as input, and sample performance problem labels as expected outputs, to train and obtain a performance problem classification model.

[0068] Typically, sample interaction behavior data, sample performance data, and sample performance problem labels can form training samples, and supervised training is performed on the machine learning model to obtain a performance problem classification model. The performance problem classification model can be used to classify performance problems of pages in a website or web application.

[0069] In some embodiments, a performance problem classification model can be obtained by using training samples to perform supervised training on the random forest classification model. First, the sample interaction behavior data and the sample performance data are input into the random forest classification model to obtain the sample performance problems of the sample page. Then, based on the sample performance problems and the sample performance problem labels, the loss value can be calculated. Among them, the loss value can be used to characterize the difference between the sample performance problems and the sample performance problem labels. Finally, based on the loss value, the parameters of the random forest classification model are continuously adjusted until the loss value meets the preset target, the model converges, and the performance problem classification model is obtained. Among them, random forest is an integrated algorithm that combines multiple weak classifiers, and the final result is obtained by voting or taking the average, so that the result of the overall model has higher accuracy and generalization performance. "Random" makes the algorithm resistant to overfitting, and "forest" makes the algorithm more accurate.

[0070] The embodiment of the present application provides a performance problem classification model training method. The trained performance problem classification model can be used to classify performance problems of pages in websites or Web applications, thereby assisting developers in locating and optimizing performance problems of pages, improving positioning efficiency, and reducing labor costs.

[0071] Figure 2 The processing flow 200 of an embodiment of the performance problem prediction model training method provided by the present application is shown, and the method at least includes the following processing steps:

[0072] Step S201, obtaining sample interaction behavior data generated by sample users browsing sample pages in a first time period, and sample performance problem tags of the sample pages in a second time period.

[0073] In this embodiment, the execution subject of the performance problem prediction model training method can obtain sample interaction behavior data generated by sample users browsing sample pages in a first time period, and sample performance problem labels of the sample pages in a second time period.

[0074] The sample page may be a page in any website or web application. The sample user may be any user who browses the sample page. The sample interaction behavior data may be interaction behavior data generated by the sample user performing various interaction behaviors when browsing the sample page in the first time period. The interaction behavior may include but is not limited to click, scroll, page load, etc. The interaction behavior data may include but is not limited to the interaction behavior, the occurrence timestamp of the interaction behavior, the DOM element information and context data related to the interaction behavior, the interaction behavior heat map, the page access path, etc.

[0075] Usually, the front-end programming language JavaScript can be used to monitor various interactive behaviors of sample users when browsing sample pages.

[0076] Event listeners can be deployed based on JavaScript to track user interactions. Listeners can cover various interactions that users may perform, including but not limited to clicks, scrolling, page loading, etc. Through the DOM event flow mechanism, listeners can also respond instantly when users perform various interactions, thereby ensuring the real-time and accuracy of data capture.

[0077] In addition, when monitoring interactive behaviors, JavaScript can also be used to record the time when the interactive behaviors occur as well as the page elements and data related to them.

[0078] When monitoring interactive behaviors, JavaScript scripts can also record the precise timestamp of the interactive behaviors, which can usually reach the millisecond level of accuracy. At the same time, JavaScript scripts can also collect DOM element information and context data related to the interactive behaviors. These data may include but are not limited to the element ID, class name, location coordinates, and any related user input or status information that triggers the interactive behaviors to ensure the integrity of the interactive behavior data records.

[0079] The sample performance problem label can be used to mark the performance problem of the sample page in the second time period. Usually, in order to ensure the quality of the training sample, professional technicians can analyze the performance problem of the sample page to ensure the accuracy of the sample performance problem label. Of course, other machine learning models can also be used to analyze the performance problem of the sample page, which is not limited here.

[0080] In addition, in order to ensure the quality of training samples, the sample interaction behavior data may be cleaned, for example, by removing sample interaction behavior data with outliers.

[0081] Step S202: Generate sample performance data of the sample page based on the sample interaction behavior data.

[0082] In this embodiment, the execution entity may generate sample performance data of the sample page based on the sample interaction behavior data.

[0083] The sample performance data may include but are not limited to sample performance indicators, the relationship between sample interaction behavior data and sample performance indicators, etc. The sample performance indicators may include but are not limited to sample page response time, sample interaction delay time, sample resource loading time, etc. The relationship between sample interaction behavior data and sample performance indicators may be, for example, the relationship between the number of sample page clicks and the sample page response time.

[0084] In some embodiments, the sample interaction behavior data is analyzed using a preset analysis algorithm to generate sample performance indicators, including but not limited to at least one of the following:

[0085] First, the difference between the sample page request initiation time and the sample page rendering start time is calculated to obtain the sample page response time.

[0086] The sample interaction behavior data may include the sample page request initiation time and the sample page rendering start time. The sample page response time may be used to record the time difference from when the sample user initiates a request for the sample page to when the sample page starts rendering.

[0087] Second, the difference between the sample interaction behavior execution time and the sample system response time is calculated to obtain the sample interaction delay time.

[0088] The sample interaction behavior data may include the sample interaction behavior execution time and the sample system response time. The sample interaction delay time may be used to record the time difference from capturing the sample user's interaction behavior (such as clicking) to the sample system response (such as the appearance of a pop-up window).

[0089] Third, the difference between the sample resource loading completion time and the sample resource loading start time is calculated to obtain the sample resource loading time.

[0090] The sample interaction behavior data may include the sample resource loading completion time and the sample resource loading start time. The sample resource loading time may be used to record the loading completion time of various resources (such as CSS, JS, pictures, etc.).

[0091] In some embodiments, based on the calculated sample performance indicators, a preset analysis model may be used to analyze the relationship between the sample interaction behavior data and the sample performance indicators.

[0092] Generally, through association analysis, the relationship between the interactive behavior of sample users (such as clicks, scrolling) and sample performance indicators (such as page loading time) can be analyzed. Through regression analysis, the impact of the interactive behavior of sample users on sample performance indicators can be predicted. For example, the number of sample page clicks and the sample page response time are input into a linear regression model to obtain the relationship between the number of sample page clicks and the sample page response time. Among them, the sample interactive behavior data may include the number of sample page clicks. The sample performance indicators may include the sample page response time.

[0093] Step S203, taking the sample interaction behavior data and the sample performance data as input, and taking the sample performance problem label as the expected output, to train and obtain a performance problem prediction model.

[0094] In this embodiment, the execution entity may use the sample interaction behavior data and sample performance data within the first time period as input, and the sample performance problem label within the second time period as the expected output, to train and obtain a performance problem prediction model.

[0095] Typically, the sample interaction behavior data and sample performance data in the first time period, and the sample performance problem labels in the second time period can form training samples, and supervised training is performed on the machine learning model to obtain a performance problem prediction model. The second time period is after the first time period, so that the performance problem prediction model can predict future performance problems of the page based on the historical data of the page, thereby realizing early prediction of performance problems of the page in the website or Web application, so as to facilitate early optimization.

[0096] In some embodiments, a performance problem prediction model can be obtained by using training samples to perform supervised training on a machine learning model (such as a random forest classification model). First, the sample interaction behavior data and sample performance data in the first time period are input into the machine learning model to predict the sample performance problems of the sample page in the second time period. Then, based on the sample performance problems and sample performance problem labels, the loss value can be calculated. Among them, the loss value can be used to characterize the difference between the sample performance problems and the sample performance problem labels. Finally, based on the loss value, the parameters of the machine learning model are continuously adjusted until the loss value meets the preset target, the model converges, and the performance problem prediction model is obtained.

[0097] The embodiment of the present application provides a performance problem prediction model training method. The trained performance problem prediction model can predict future performance problems of a page based on the historical data of the page, and can be used to predict future performance problems of pages in a website or Web application, thereby assisting developers to locate and optimize performance problems of the page in advance, which not only improves positioning efficiency and reduces labor costs, but also can optimize the page in advance and improve the user experience of the website or Web application.

[0098] Figure 3 The processing flow 300 of an embodiment of the performance analysis method provided by the present application is shown, and the method at least includes the following processing steps:

[0099] Step S301, obtaining interactive behavior data generated by a user browsing a page.

[0100] In this embodiment, the execution subject of the performance analysis method can obtain the interactive behavior data generated by the user browsing the page.

[0101] The page may be a page on a website or web application that needs to be performance analyzed. The user may be any user who browses the page. The interactive behavior data may be data generated by the user performing various interactive behaviors when browsing the page. The interactive behavior may include but is not limited to clicks, scrolling, page loading, etc. The interactive behavior data may include but is not limited to interactive behaviors, timestamps of occurrence of interactive behaviors, DOM element information and context data related to interactive behaviors, interactive behavior heat maps, page access paths, etc.

[0102] Usually, the front-end programming language JavaScript can be used to monitor various interactive behaviors of users when browsing the page.

[0103] Event listeners can be deployed based on JavaScript to track user interactions. Listeners can cover various interactions that users may perform, including but not limited to clicks, scrolling, page loading, etc. Through the DOM event flow mechanism, listeners can also respond instantly when users perform various interactions, thereby ensuring the real-time and accuracy of data capture.

[0104] In addition, when monitoring interactive behaviors, JavaScript can also be used to record the time when the interactive behaviors occur as well as the page elements and data related to them.

[0105] When monitoring interactive behaviors, JavaScript scripts can also record the precise timestamp of the interactive behaviors, which can usually reach the millisecond level of accuracy. At the same time, JavaScript scripts can also collect DOM element information and context data related to the interactive behaviors. These data may include but are not limited to the element ID, class name, location coordinates, and any related user input or status information that triggers the interactive behaviors to ensure the integrity of the interactive behavior data records.

[0106] Typically, JavaScript scripts are deployed on the client to capture interactive behavior data. The client can send the captured interactive behavior data to the server for analysis. For example, the client can send the interactive behavior data to the server asynchronously through an AJAX request. Among them, AJAX technology allows data to be sent and received without reloading the entire page, thereby ensuring efficient data transmission and continuity of user experience.

[0107] In addition, in order to ensure the accuracy of performance analysis, the interactive behavior data can also be cleaned, for example, by removing interactive behavior data with outliers.

[0108] Step S302: Generate performance data of the page based on the interaction behavior data.

[0109] In this embodiment, the execution entity may generate performance data of the page based on the interaction behavior data.

[0110] The performance data may include but are not limited to performance indicators, the relationship between interactive behavior data and performance indicators, etc. Performance indicators may include but are not limited to page response time, interactive delay time, resource loading time, etc. The relationship between interactive behavior data and performance indicators may be, for example, the relationship between page click counts and page response time.

[0111] In some embodiments, the interaction behavior data is analyzed using a preset analysis algorithm to generate performance indicators, including but not limited to at least one of the following:

[0112] First, calculate the difference between the time when the page request is initiated and the time when the page rendering starts to get the page response time.

[0113] The interactive behavior data may include the page request initiation time and the page rendering start time. The page response time may be used to record the time difference from when the user initiates the page request to when the page starts rendering.

[0114] The page response time can be calculated based on JavaScript as follows:

[0115] ```javascript

[0116] / / Calculate page response time

[0117] const responseTime=

[0118] window.performance.timing.domContentLoadedEventStart-

[0119] window.performance.timing.navigationStart;

[0120] ```

[0121] Second, the difference between the execution time of the interactive behavior and the system response time is calculated to obtain the interactive delay time.

[0122] The interactive behavior data may include the interactive behavior execution time and the system response time. The interactive delay time may be used to record the time difference between capturing the user's interactive behavior (such as clicking) and the system response (such as the appearance of a pop-up window).

[0123] The interactive delay time can be calculated based on JavaScript as follows:

[0124] ```javascript

[0125] / / Interaction delay time calculation

[0126] document.addEventListener("click",(event)=>{

[0127] const startTime=performance.now();

[0128] / / Assume that click event is processed

[0129] const endTime=performance.now();

[0130] const interactionDelay=endTime-startTime;

[0131] });

[0132] ```

[0133] Third, the difference between the resource loading completion time and the resource loading start time is calculated to obtain the resource loading time.

[0134] The interactive behavior data may include resource loading completion time and resource loading start time. Resource loading time can be used to record the loading completion time of various resources (such as CSS, JS, pictures, etc.).

[0135] Calculating resource loading time based on JavaScript can be as follows:

[0136] ```javascript

[0137] / / Resource loading time

[0138] window.addEventListener("load",(event)=>{

[0139] const resources=performance.getEntriesByType("resource");

[0140] const loadTimes=resources.map(

[0141] (resource)=>resource.responseEnd-resource.startTime );

[0143] });

[0144] ```

[0145] In some embodiments, based on the calculated performance indicators, a preset analysis model may be used to analyze the relationship between the interaction behavior data and the performance indicators.

[0146] Generally, through association analysis, the relationship between user interaction behaviors (such as clicks, scrolling) and performance indicators (such as page loading time) can be analyzed. Through regression analysis, the impact of user interaction behaviors on performance indicators can be predicted. For example, the number of page clicks and page response time are input into a linear regression model to obtain the relationship between the number of page clicks and page response time. Among them, the interaction behavior data may include the number of page clicks. Performance indicators may include page response time.

[0147] The relationship between page click count and page response time can be analyzed based on Python as follows:

[0148] ```Python

[0149] import numpy as np

[0150] from sklearn.linear_model import LinearRegression

[0151] #Assume clicks is the number of clicks, response_times is the corresponding page response time

[0152] clicks=np.array([10,20,30,40,50]).reshape(-1,1)

[0153] response_times=np.array([1.2,2.5,3.6,4.8,6.0])

[0154] model=LinearRegression().fit(clicks,response_times)

[0155] ```

[0156] Typically, performance data can be fed back to developers in real time, allowing them to quickly respond to performance issues of websites or web applications based on the performance data, optimize the performance of websites or web applications, and improve the user experience of websites or web applications.

[0157] In some embodiments, a performance report of the page can be generated based on the performance data. In addition, the performance report can be fed back to the developer in real time through a Web interface or an API (application programming interface). The performance report may include, but is not limited to, performance data, a summary of performance analysis, performance issues, optimization suggestions, etc. The performance report usually uses charts and tables to display performance data. In addition, the developer can also select the performance data of interest as needed to generate a customized performance report.

[0158] Generating a performance report based on markdown can be as follows:

[0159] ```Markdown

[0160] #Performance Report

[0161] ##Page response time

[0162] -Average response time: 2.5 seconds

[0163] ##Interaction delay time

[0164] -Average interaction delay: 0.5 seconds

[0165] ##Resource loading time

[0166] -Average loading time of JS files: 1 second

[0167] -Average CSS file loading time: 0.8 seconds

[0168] ##User Behavior Analysis

[0169] -High frequency of clicks is positively correlated with page response time.

[0170] In some embodiments, a comprehensive user experience score can be calculated based on the performance indicators. The user experience score can intuitively reflect the experience level of users of the website or web application. The user experience score can also be fed back to developers in real time, making developers more targeted and efficient when optimizing performance.

[0171] Generally, when calculating the user experience score, you can consider performance indicators in multiple dimensions, such as page loading speed, interactive response time, page stability, etc. Different weights are assigned to the performance indicators of each dimension. The user experience score can be obtained by weighted summing the performance indicators of multiple dimensions.

[0172] The user experience score can be calculated based on Python as follows:

[0173] ```Python

[0174] #Assume that the page loading speed score is 80, the interactive response time score is 90, and the page stability score is 95

[0175] scores = [80,90,95]

[0176] weights = [0.4, 0.3, 0.3]

[0177] user_experience_score=sum(score*weight for score,weight in zip(scores,weights))

[0178] ```

[0179] The embodiment of the present application provides a performance analysis method that not only takes into account static performance indicators such as page loading, but also takes into account the impact of user interaction behavior, thereby being able to fully reflect the actual performance status of a website or Web application.

[0180] Figure 4 A processing flow 400 of another embodiment of the performance analysis method provided by the present application is shown, and the method at least includes the following processing steps:

[0181] Step S401, obtaining interactive behavior data generated by a user browsing a page.

[0182] In this embodiment, the execution subject of the performance analysis method can obtain the interactive behavior data generated by the user browsing the page.

[0183] The page may be a page on a website or web application that needs to be performance analyzed. The user may be any user who browses the page. The interactive behavior data may be data generated by the user performing various interactive behaviors when browsing the page. The interactive behavior may include but is not limited to clicks, scrolling, page loading, etc. The interactive behavior data may include but is not limited to interactive behaviors, timestamps of occurrence of interactive behaviors, DOM element information and context data related to interactive behaviors, interactive behavior heat maps, page access paths, etc.

[0184] Usually, the front-end programming language JavaScript can be used to monitor various interactive behaviors of users when browsing the page.

[0185] Event listeners can be deployed based on JavaScript to track user interactions. Listeners can cover various interactions that users may perform, including but not limited to clicks, scrolling, page loading, etc. Through the DOM event flow mechanism, listeners can also respond instantly when users perform various interactions, thereby ensuring the real-time and accuracy of data capture.

[0186] In addition, when monitoring interactive behaviors, JavaScript can also be used to record the time when the interactive behaviors occur as well as the page elements and data related to them.

[0187] When monitoring interactive behaviors, JavaScript scripts can also record the precise timestamp of the interactive behaviors, which can usually reach the millisecond level of accuracy. At the same time, JavaScript scripts can also collect DOM element information and context data related to the interactive behaviors. These data may include but are not limited to the element ID, class name, location coordinates, and any related user input or status information that triggers the interactive behaviors to ensure the integrity of the interactive behavior data records.

[0188] Typically, JavaScript scripts are deployed on the client to capture interactive behavior data. The client can send the captured interactive behavior data to the server for analysis. For example, the client can send the interactive behavior data to the server asynchronously through an AJAX request. Among them, AJAX technology allows data to be sent and received without reloading the entire page, thereby ensuring efficient data transmission and continuity of user experience.

[0189] In addition, in order to ensure the accuracy of performance analysis, the interactive behavior data can also be cleaned, for example, by removing interactive behavior data with outliers.

[0190] Step S402: Analyze the interactive behavior data using a preset analysis algorithm to generate performance indicators.

[0191] In this embodiment, the execution entity may use a preset analysis algorithm to analyze the interaction behavior data to generate performance indicators.

[0192] Among them, performance indicators may include but are not limited to page response time, interaction delay time, resource loading time, etc.

[0193] In some embodiments, the interaction behavior data is analyzed using a preset analysis algorithm to generate performance indicators of the page, including but not limited to at least one of the following:

[0194] First, calculate the difference between the time when the page request is initiated and the time when the page rendering starts to get the page response time.

[0195] The interactive behavior data may include the page request initiation time and the page rendering start time. The page response time may be used to record the time difference from when the user initiates the page request to when the page starts rendering.

[0196] Second, the difference between the execution time of the interactive behavior and the system response time is calculated to obtain the interactive delay time.

[0197] The interactive behavior data may include the interactive behavior execution time and the system response time. The interactive delay time may be used to record the time difference between capturing the user's interactive behavior (such as clicking) and the system response (such as the appearance of a pop-up window).

[0198] Third, the difference between the resource loading completion time and the resource loading start time is calculated to obtain the resource loading time.

[0199] The interactive behavior data may include resource loading completion time and resource loading start time. Resource loading time can be used to record the loading completion time of various resources (such as CSS, JS, pictures, etc.).

[0200] Step S403: input the interactive behavior data and the performance index into a pre-trained performance problem classification model to obtain the current performance problem of the web page.

[0201] In this embodiment, the execution entity may input the interaction behavior data and the performance index into a pre-trained performance problem classification model to obtain the current performance problem of the web page.

[0202] Among them, the performance problem classification model can be used to classify performance problems of pages in websites or web applications.

[0203] Based on Python, the training model and the use model can be as follows:

[0204] ```Python

[0205] from sklearn.ensemble import RandomForestClassifier

[0206] #Assume that features include user behavior data and performance indicators, and labels are performance problem labels

[0207] model=RandomForestClassifier().fit(features,labels)

[0208] #Use the model to predict performance issues

[0209] predicted_issues=model.predict(new_data)

[0210] ```

[0211] It should be noted that the training process of the performance problem classification model can be referred to Figure 1 The embodiments shown will not be described in detail here.

[0212] Step S404: Generate a first optimization suggestion based on the current performance problem.

[0213] In this embodiment, the execution entity may generate a first optimization suggestion based on the current performance problem.

[0214] Generally, different performance issues can correspond to different optimization suggestions. For code issues, code optimization can be performed, such as reducing unnecessary JavaScript execution. At this time, the optimization suggestion can be: some unused JavaScript code is detected, and it is recommended to remove it to reduce loading time. For resource issues, resource optimization can be performed, such as merging CSS and JavaScript files to reduce HTTP (Hypertext Transfer Protocol) requests. At this time, the optimization suggestion can be: it is recommended to merge multiple small CSS files to reduce the number of HTTP requests and improve loading efficiency.

[0215] In some embodiments, further developing a machine learning model can predict performance bottlenecks based on historical data and optimize in advance. By inputting the interactive behavior data and performance indicators into a pre-trained performance problem prediction model, future performance problems of the page can be obtained. In addition, based on future performance problems, a second optimization suggestion can also be generated.

[0216] The performance problem prediction model can predict future performance problems of a page based on the historical data of the page, thereby realizing early prediction of performance problems of pages in websites or web applications for early optimization. The training process of the performance problem prediction model can be referred to Figure 2 The embodiments shown will not be described in detail here.

[0217] from Figure 4 It can be seen that Figure 3 Compared with the corresponding embodiment, the performance analysis method in this embodiment adds the steps of locating performance problems and generating optimization suggestions. Therefore, the solution described in this embodiment uses a performance problem classification model to classify performance problems of pages in a website or Web application, thereby assisting developers in locating and optimizing performance problems of pages, improving positioning efficiency, and reducing labor costs.

[0218] Figure 5 The processing flow 500 of an embodiment of the interactive behavior data capturing method provided by the present application is shown, and the method at least includes the following processing steps:

[0219] Step S501, based on the pre-deployed script, capturing the interactive behavior data generated by the user browsing the page.

[0220] In this embodiment, the execution subject of the interactive behavior data capturing method may deploy scripts in advance. Based on the pre-deployed scripts, the interactive behavior data generated by the user browsing the page may be captured.

[0221] The page may be a page on a website or web application that needs to be performance analyzed. The user may be any user who browses the page. The interactive behavior data may be data generated by the user performing various interactive behaviors when browsing the page. The interactive behavior may include but is not limited to clicks, scrolling, page loading, etc. The interactive behavior data may include but is not limited to interactive behaviors, timestamps of occurrence of interactive behaviors, DOM element information and context data related to interactive behaviors, interactive behavior heat maps, page access paths, etc.

[0222] Usually, the front-end programming language JavaScript can be used to monitor various interactive behaviors of users when browsing the page.

[0223] Event listeners can be deployed based on JavaScript to track user interactions. Listeners can cover various interactions that users may perform, including but not limited to clicks, scrolling, page loading, etc. Through the DOM event flow mechanism, listeners can also respond instantly when users perform various interactions, thereby ensuring the real-time and accuracy of data capture.

[0224] In addition, when monitoring interactive behaviors, JavaScript can also be used to record the time when the interactive behaviors occur as well as the page elements and data related to them.

[0225] When monitoring interactive behaviors, JavaScript scripts can also record the precise timestamp of the interactive behaviors, which can usually reach the millisecond level of accuracy. At the same time, JavaScript scripts can also collect DOM element information and context data related to the interactive behaviors. These data may include but are not limited to the element ID, class name, location coordinates, and any related user input or status information that triggers the interactive behaviors to ensure the integrity of the interactive behavior data records.

[0226] Step S502: sending the interaction behavior data to the server.

[0227] In this embodiment, the execution subject may send the interactive behavior data to a server, and the server may analyze the interactive behavior data.

[0228] In some embodiments, the interactive behavior data is sent to the server in an asynchronous manner via an AJAX request, wherein the AJAX technology allows data to be sent and received without reloading the entire page, thereby ensuring efficient data transmission and continuity of user experience.

[0229] An embodiment of the present application provides a method for capturing interactive behavior data, which deploys scripts on a client to capture data generated by users performing various interactive behaviors when browsing pages.

[0230] Based on the interactive behavior data capture method and the performance analysis method, a front-end performance analysis tool can also be implemented. The user interactive behavior is captured on the client and analyzed on the server. The tool is easy to deploy and use, and does not require complex configuration. The front-end performance analysis tool can not only capture and analyze various user interactive behaviors on the page in real time, but also provide real-time feedback on performance data to assist developers in quickly optimizing the website.

[0231] Figure 6 The schematic diagram of the structure of an embodiment of the performance problem classification model training device provided by the present application is shown. Figure 1 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.

[0232] like Figure 6 As shown, the performance problem classification model training device 600 of this embodiment may include: an acquisition module 601, a generation module 602 and a training module 603. Among them, the acquisition module 601 is configured to acquire sample interaction behavior data generated by sample users browsing sample pages, and sample performance problem labels of sample pages; the generation module 602 is configured to generate sample performance data of sample pages based on the sample interaction behavior data; the training module 603 is configured to take the sample interaction behavior data and sample performance data as input, and take the sample performance problem labels as expected output, and train to obtain a performance problem classification model.

[0233] In this embodiment, in the performance problem classification model training device 600, the specific processing of the acquisition module 601, the generation module 602 and the training module 603 and the technical effects thereof can be referred to respectively. Figure 1 The relevant descriptions of steps S101 to S103 in the corresponding embodiment are not repeated here.

[0234] In some optional implementations of this embodiment, the generation module 602 may include: a performance indicator generation submodule, which is configured to analyze the sample interaction behavior data using a preset analysis algorithm to generate a sample performance indicator.

[0235] In some optional implementations of the present embodiment, the performance indicator generation submodule is further configured to perform at least one of the following: calculating the difference between the sample page request initiation time and the sample page rendering start time to obtain the sample page response time, wherein the sample interaction behavior data includes the sample page request initiation time and the sample page rendering start time; calculating the difference between the sample interaction behavior execution time and the sample system response time to obtain the sample interaction delay time, wherein the sample interaction behavior data includes the sample interaction behavior execution time and the sample system response time; calculating the difference between the sample resource loading completion time and the sample resource loading start time to obtain the sample resource loading time, wherein the sample interaction behavior data includes the sample resource loading completion time and the sample resource loading start time.

[0236] In some optional implementations of this embodiment, the generation module 602 may further include: a relationship generation submodule configured to use a preset analysis model to analyze the relationship between the sample interaction behavior data and the sample performance indicators.

[0237] In some optional implementations of this embodiment, the relationship generation submodule is further configured to: input the number of sample page clicks and the sample page response time into a linear regression model to obtain the relationship between the number of sample page clicks and the sample page response time, wherein the sample interaction behavior data includes the number of sample page clicks, and the sample performance indicators include the sample page response time. In some optional implementations of this embodiment, the training module 603 is further configured to: input the sample interaction behavior data and the sample performance data into a random forest classification model to obtain sample performance problems of the sample page; calculate the loss value based on the performance problem and the sample performance problem label; adjust the parameters of the random forest classification model based on the loss value to obtain a performance problem classification model.

[0238] Figure 7 The schematic diagram of the structure of an embodiment of the performance problem prediction model training device provided by the present application is shown. Figure 2 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.

[0239] like Figure 7As shown, the performance problem prediction model training device 700 of this embodiment may include: an acquisition module 701, a generation module 702 and a training module 703. The acquisition module 701 is configured to acquire sample interaction behavior data generated by a sample user browsing a sample page in a first time period, and a sample performance problem label of the sample page in a second time period, wherein the second time period is after the first time period; the generation module 702 is configured to generate sample performance data of the sample page based on the sample interaction behavior data; the training module 703 is configured to take the sample interaction behavior data and the sample performance data as input, and take the sample performance problem label as the expected output, and train to obtain a performance problem prediction model.

[0240] In this embodiment, in the performance problem prediction model training device 700, the specific processing of the acquisition module 701, the generation module 702 and the training module 703 and the technical effects thereof can be referred to respectively. Figure 2 The relevant descriptions of steps S201-S203 in the corresponding embodiment are not repeated here.

[0241] In some optional implementations of this embodiment, the generation module 702 may include: a performance indicator generation submodule, which is configured to analyze the sample interaction behavior data using a preset analysis algorithm to generate a sample performance indicator.

[0242] In some optional implementations of the present embodiment, the performance indicator generation submodule is further configured to perform at least one of the following: calculating the difference between the sample page request initiation time and the sample page rendering start time to obtain the sample page response time, wherein the sample interaction behavior data includes the sample page request initiation time and the sample page rendering start time; calculating the difference between the sample interaction behavior execution time and the sample system response time to obtain the sample interaction delay time, wherein the sample interaction behavior data includes the sample interaction behavior execution time and the sample system response time; calculating the difference between the sample resource loading completion time and the sample resource loading start time to obtain the sample resource loading time, wherein the sample interaction behavior data includes the sample resource loading completion time and the sample resource loading start time.

[0243] In some optional implementations of this embodiment, the generation module 702 may further include: a relationship generation submodule configured to use a preset analysis model to analyze the relationship between the sample interaction behavior data and the sample performance indicators.

[0244] In some optional implementations of this embodiment, the relationship generation submodule is further configured to: input the number of sample page clicks and the sample page response time into a linear regression model to obtain the relationship between the number of sample page clicks and the sample page response time, wherein the sample interaction behavior data includes the number of sample page clicks, and the sample performance indicators include the sample page response time. In some optional implementations of this embodiment, the training module 703 is further configured to: input the sample interaction behavior data and the sample performance data into a machine learning model to obtain sample performance problems of the sample page in the second time period; based on the performance problems and sample performance problem labels, calculate the loss value; based on the loss value, adjust the parameters of the machine learning model to obtain a performance problem prediction model.

[0245] Figure 8 The schematic diagram of the structure of an embodiment of the performance analysis device provided by the present application is shown. Figure 3 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.

[0246] like Figure 8 As shown, the performance analysis device 800 of this embodiment may include: an interactive behavior data acquisition module 801 and a performance data generation module 802. The interactive behavior data acquisition module 801 is configured to acquire interactive behavior data generated by a user browsing a page; the performance data generation module 802 is configured to generate performance data of the page based on the interactive behavior data.

[0247] In this embodiment, in the performance analysis device 800, the specific processing of the interactive behavior data acquisition module 801 and the performance data generation module 802 and the technical effects thereof can be referred to in Figure 3 The relevant descriptions of steps S301 - S302 in the corresponding embodiment are not repeated here.

[0248] In some optional implementations of this embodiment, the performance data generation module 802 includes: a performance indicator generation submodule, which is configured to analyze the interactive behavior data using a preset analysis algorithm to generate a performance indicator.

[0249] In some optional implementations of this embodiment, the performance indicator generation submodule is further configured to perform at least one of the following: calculating the difference between the page request initiation time and the page rendering start time to obtain the page response time, wherein the interactive behavior data includes the page request initiation time and the page rendering start time; calculating the difference between the interactive behavior execution time and the system response time to obtain the interactive delay time, wherein the interactive behavior data includes the interactive behavior execution time and the system response time; calculating the difference between the resource loading completion time and the resource loading start time to obtain the resource loading time, wherein the interactive behavior data includes the resource loading completion time and the resource loading start time.

[0250] In some optional implementations of this embodiment, the performance data generation module 802 further includes: a relationship generation submodule configured to analyze the relationship between the interaction behavior data and the performance indicators using a preset analysis model.

[0251] In some optional implementations of this embodiment, the relationship generation submodule is further configured to: input the number of page clicks and the page response time into a linear regression model to obtain the relationship between the number of page clicks and the page response time, wherein the interactive behavior data includes the number of page clicks, and the performance indicators include the page response time.

[0252] In some optional implementations of this embodiment, the performance analysis device 800 further includes: a performance report generation module configured to generate a performance report of the page based on the performance data.

[0253] In some optional implementations of this embodiment, the performance analysis device 800 further includes: an experience score generation module configured to generate a user experience score based on the performance indicator.

[0254] In some optional implementations of this embodiment, the experience score generation module is further configured to: perform weighted summation on the performance indicators of at least one dimension to obtain a user experience score.

[0255] In some optional implementations of this embodiment, the performance analysis device 800 further includes: a performance problem classification module, which is configured to input the interactive behavior data and the performance index into a pre-trained performance problem classification model to obtain the current performance problem of the web page, wherein the performance problem classification model is based on Figure 6 The device shown is trained.

[0256] In some optional implementations of this embodiment, the performance analysis device 800 further includes: a first suggestion generating module configured to generate a first optimization suggestion based on the current performance problem.

[0257] In some optional implementations of this embodiment, the performance analysis device 800 further includes: a performance problem prediction module, which is configured to input the interactive behavior data and the performance index into a pre-trained performance problem prediction model to obtain future performance problems of the page, wherein the performance problem prediction model is based on Figure 7 The device shown is trained.

[0258] In some optional implementations of this embodiment, the performance analysis device 800 further includes: a second suggestion module configured to generate a second optimization suggestion based on future performance issues.

[0259] Fig. 9 A schematic diagram of the structure of an embodiment of the interactive data capture device provided by the present application is shown. Figure 5 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.

[0260] like Fig. 9 As shown, the interactive data capturing device 900 of this embodiment may include: a capturing module 901 and a sending module 902. The capturing module 901 is configured to capture the interactive behavior data generated by the user browsing the page based on the pre-deployed script; the sending module 902 is configured to send the interactive behavior data to the server.

[0261] In this embodiment, in the interactive data capturing device 900, the specific processing of the capturing module 901 and the sending module 902 and the technical effects thereof can be referred to in Figure 5 The relevant descriptions of steps S501-S502 in the corresponding embodiment are not repeated here.

[0262] In some optional implementations of this embodiment, the sending module 902 is further configured to: send the interactive behavior data to the server in an asynchronous manner through an AJAX request.

[0263] Fig.10 An interactive sequence 1000 of an embodiment of the performance analysis system provided by the present application is shown. The system includes a client and a server, and performs at least the following interactive steps:

[0264] Step S1001: The client captures the interactive behavior data generated by the user browsing the page based on the pre-deployed script.

[0265] Step S1002: The client sends the interaction behavior data to the server.

[0266] In this embodiment, the specific operations of steps S1001-S1002 can be referred to Figure 5 The relevant descriptions of steps S501-S502 in the corresponding embodiment are not repeated here.

[0267] Step S1003: The server generates performance data of the page based on the interactive behavior data.

[0268] In this embodiment, the specific operation of step S1003 can be referred to Figure 3 The relevant description of step S302 in the corresponding embodiment will not be repeated here.

[0269] Based on the same inventive concept, an electronic device is also provided in an embodiment of the present application, and the method corresponding to the electronic device may be the performance problem classification model training method or the performance problem prediction model training method or the performance analysis method or the interactive behavior data capture method in the aforementioned embodiment, and its principle of solving the problem is similar to that of the method. The electronic device provided in an embodiment of the present application includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable 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 methods and / or technical solutions of the aforementioned multiple embodiments of the present application.

[0270] The electronic device may be a user device, or a device formed by integrating a user device and a network device through a network, or may be an application running on the above device. The user device includes but is not limited to various terminal devices such as computers, mobile phones, tablet computers, smart watches, and bracelets. The network device includes but is not limited to network hosts, single network servers, multiple network server sets, or cloud computing-based computer sets, which can be used to implement some processing functions when setting an alarm. Here, the cloud is composed of a large number of hosts or network servers based on cloud computing, where cloud computing is a type of distributed computing, a virtual computer composed of a group of loosely coupled computer sets.

[0271] Fig.11The structure of a device suitable for implementing the method and / or technical solution in the embodiment of the present application is shown, and the device 1100 includes a central processing unit (CPU) 1101, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 1102 or the program loaded from the storage part 1108 to the random access memory (RAM) 1103. In RAM 1103, various programs and data required for system operation are also stored. CPU 1101, ROM 1102 and RAM 1103 are connected to each other through bus 1104. Input / output (I / O) interface 1105 is also connected to bus 1104.

[0272] The following components are connected to the I / O interface 1105: an input section 1106 including a keyboard, a mouse, a touch screen, a microphone, an infrared sensor, etc.; an output section 1107 including a cathode ray tube (CRT), a liquid crystal display (LCD), an LED display, an OLED display, etc., and a speaker, etc.; a storage section 1108 including one or more computer-readable media such as a hard disk, an optical disk, a magnetic disk, a semiconductor memory, etc.; and a communication section 1109 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 1109 performs communication processing via a network such as the Internet.

[0273] In particular, the methods and / or embodiments in the embodiments of the present application may be implemented as computer software programs. 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 program code for executing the method shown in the flowchart. When the computer program is executed by the central processing unit (CPU) 1101, the above functions defined in the method of the present application are executed.

[0274] Another embodiment of the present application further provides a computer-readable storage medium having computer program instructions stored thereon, wherein the computer program instructions can be executed by a processor to implement the methods and / or technical solutions of any one or more embodiments of the present application described above.

[0275] Specifically, the present embodiment may adopt any combination of one or more computer-readable media. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination thereof. More specific examples (non-exhaustive list) of computer-readable storage media include: 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 thereof. In this document, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device, or device.

[0276] Computer readable signal media may include a data signal propagated in baseband or as part of a carrier wave, which carries a computer readable program code. Such propagated data signals may take a variety of forms, including, but not limited to, electromagnetic signals, optical signals, or any suitable combination of the above. Computer readable signal media may also be any computer readable medium other than a computer readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0277] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0278] 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).

[0279] The flow chart or block diagram in the accompanying drawings shows the possible architecture, function and operation of the equipment, 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 implementations as replacements, 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 system for hardware that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0280] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0281] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or page components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0282] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0283] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of hardware plus software functional units.

[0284] The above-mentioned integrated unit implemented in the form of a software functional unit can be stored in a computer-readable storage medium. The above-mentioned software functional unit is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform some steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), disk or optical disk and other media that can store program codes.

[0285] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

[0286] In addition, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices stated in a device claim can also be implemented by one unit or device through software or hardware. The words first, second, etc. are used to indicate names, and do not indicate any particular order.

Claims

1. A performance problem classification model training method, comprising: Obtaining sample interaction behavior data generated by sample users browsing sample pages, and sample performance problem tags of the sample pages; Based on the sample interaction behavior data, generating sample performance data of the sample page; The sample interaction behavior data and the sample performance data are taken as input, and the sample performance problem label is taken as the expected output, and a performance problem classification model is obtained through training.

2. The method according to claim 1, wherein: The generating the sample performance data of the sample page based on the sample interaction behavior data includes: The sample interaction behavior data is analyzed using a preset analysis algorithm to generate the sample performance index.

3. The method according to claim 2, wherein: The using of a preset analysis algorithm to analyze the sample interaction behavior data to generate the sample performance index includes at least one of the following: Calculate the difference between the sample page request initiation time and the sample page rendering start time to obtain the sample page response time, wherein the sample interaction behavior data includes the sample page request initiation time and the sample page rendering start time; Calculating the difference between the sample interaction behavior execution time and the sample system response time to obtain the sample interaction delay time, wherein the sample interaction behavior data includes the sample interaction behavior execution time and the sample system response time; The difference between the sample resource loading completion time and the sample resource loading start time is calculated to obtain the sample resource loading time, wherein the sample interaction behavior data includes the sample resource loading completion time and the sample resource loading start time.

4. The method according to claim 2, wherein: The generating the sample performance data of the sample page based on the sample interaction behavior data further includes: A preset analysis model is used to analyze the relationship between the sample interaction behavior data and the sample performance index.

5. The method according to claim 4, wherein: The adopting a preset analysis model to analyze the relationship between the sample interaction behavior data and the sample performance index includes: The number of sample page clicks and the sample page response time are input into a linear regression model to obtain the relationship between the number of sample page clicks and the sample page response time, wherein the sample interaction behavior data includes the number of sample page clicks, and the sample performance indicators include the sample page response time.

6. The method according to any one of claims 1 to 5, wherein: The method of taking the sample interaction behavior data and the sample performance data as input, taking the sample performance problem label as expected output, and training to obtain a performance problem classification model includes: Inputting the sample interaction behavior data and the sample performance data into a random forest classification model to obtain sample performance issues of the sample page; Calculating a loss value based on the sample performance problem and the sample performance problem label; Based on the loss value, the parameters of the random forest classification model are adjusted to obtain the performance problem classification model.

7. A performance problem prediction model training method, comprising: Obtaining sample interaction behavior data generated by a sample user browsing a sample page in a first time period, and a sample performance problem label of the sample page in a second time period, wherein the second time period is after the first time period; Based on the sample interaction behavior data, generating sample performance data of the sample page; The sample interaction behavior data and the sample performance data are used as input, and the sample performance problem label is used as the expected output, and a performance problem prediction model is obtained through training.

8. The method according to claim 7, wherein: The generating the sample performance data of the sample page based on the sample interaction behavior data includes: The sample interaction behavior data is analyzed using a preset analysis algorithm to generate the sample performance index.

9. The method according to claim 8, wherein: The using of a preset analysis algorithm to analyze the sample interaction behavior data to generate the sample performance index includes at least one of the following: Calculate the difference between the sample page request initiation time and the sample page rendering start time to obtain the sample page response time, wherein the sample interaction behavior data includes the sample page request initiation time and the sample page rendering start time; Calculating the difference between the sample interaction behavior execution time and the sample system response time to obtain the sample interaction delay time, wherein the sample interaction behavior data includes the sample interaction behavior execution time and the sample system response time; The difference between the sample resource loading completion time and the sample resource loading start time is calculated to obtain the sample resource loading time, wherein the sample interaction behavior data includes the sample resource loading completion time and the sample resource loading start time.

10. The method according to claim 8, wherein: The generating the sample performance data of the sample page based on the sample interaction behavior data further includes: A preset analysis model is used to analyze the relationship between the sample interaction behavior data and the sample performance index.

11. The method according to claim 10, wherein: The adopting a preset analysis model to analyze the relationship between the sample interaction behavior data and the sample performance index includes: The number of sample page clicks and the sample page response time are input into a linear regression model to obtain the relationship between the number of sample page clicks and the sample page response time, wherein the sample interaction behavior data includes the number of sample page clicks, and the sample performance indicators include the sample page response time.

12. The method according to any one of claims 7 to 11, wherein: The method of taking the sample interaction behavior data and the sample performance data as input, taking the sample performance problem label as expected output, and training to obtain a performance problem prediction model includes: Inputting the sample interaction behavior data and the sample performance data into a machine learning model to obtain sample performance issues of the sample page in the second time period; Calculating a loss value based on the sample performance problem and the sample performance problem label; Based on the loss value, the parameters of the machine learning model are adjusted to obtain the performance problem prediction model.

13. A performance analysis method, comprising: Obtain interactive behavior data generated by users browsing pages; Based on the interactive behavior data, performance data of the page is generated.

14. The method according to claim 13, wherein: The generating the performance data of the page based on the interactive behavior data includes: The interactive behavior data is analyzed using a preset analysis algorithm to generate the performance indicator.

15. The method according to claim 14, wherein: The using of a preset analysis algorithm to analyze the interaction behavior data to generate the performance indicator includes at least one of the following: Calculate the difference between the page request initiation time and the page rendering start time to obtain the page response time, wherein the interaction behavior data includes the page request initiation time and the page rendering start time; Calculating the difference between the interactive behavior execution time and the system response time to obtain the interactive delay time, wherein the interactive behavior data includes the interactive behavior execution time and the system response time; The difference between the resource loading completion time and the resource loading start time is calculated to obtain the resource loading time, wherein the interaction behavior data includes the resource loading completion time and the resource loading start time.

16. The method according to claim 14, wherein: The generating the performance data of the page based on the interactive behavior data further includes: A preset analysis model is used to analyze the relationship between the interaction behavior data and the performance index.

17. The method according to claim 16, wherein: The adopting a preset analysis model to analyze the relationship between the interaction behavior data and the performance indicator includes: The number of page clicks and the page response time are input into a linear regression model to obtain the relationship between the number of page clicks and the page response time, wherein the interactive behavior data includes the number of page clicks, and the performance indicator includes the page response time.

18. The method according to any one of claims 13 to 17, wherein: The method further comprises: Based on the performance data, a performance report of the page is generated.

19. The method according to any one of claims 14 to 17, wherein: The method further comprises: Based on the performance indicators, a user experience score is generated.

20. The method according to any one of claims 14 to 17, wherein: The method further comprises: The interactive behavior data and the performance index are input into a pre-trained performance problem classification model to obtain the current performance problem of the web page, wherein the performance problem classification model is trained using the method described in any one of claims 1-6.

21. The method according to claim 20, wherein: The method further comprises: Based on the current performance problem, a first optimization suggestion is generated.

22. The method according to any one of claims 14 to 17, wherein: The method further comprises: The interactive behavior data and the performance index are input into a pre-trained performance problem prediction model to obtain future performance problems of the page, wherein the performance problem prediction model is trained using the method described in any one of claims 7-12.

23. The method according to claim 22, wherein: The method further comprises: Based on the future performance issue, a second optimization suggestion is generated.

24. A method for capturing interactive behavior data, comprising: Based on pre-deployed scripts, capture the interactive behavior data generated by users browsing pages; The interaction behavior data is sent to a server.

25. The method according to claim 24, wherein: The sending the interactive behavior data to the server includes: The interactive behavior data is sent to the server in an asynchronous manner via an AJAX request.

26. A performance problem classification model training device, comprising: An acquisition module is configured to acquire sample interaction behavior data generated by sample users browsing sample pages, and sample performance problem tags of the sample pages; A generating module, configured to generate sample performance data of the sample page based on the sample interaction behavior data; The training module is configured to take the sample interaction behavior data and the sample performance data as input, and take the sample performance problem label as the expected output, and train to obtain a performance problem classification model.

27. A performance problem prediction model training device, comprising: An acquisition module is configured to acquire sample interaction behavior data generated by a sample user browsing a sample page in a first time period, and a sample performance problem tag of the sample page in a second time period, wherein the second time period is after the first time period; A generating module, configured to generate sample performance data of the sample page based on the sample interaction behavior data; The training module is configured to take the sample interaction behavior data and the sample performance data as input, take the sample performance problem label as the expected output, and train to obtain a performance problem prediction model.

28. A performance analysis device comprising: An interactive behavior data acquisition module is configured to acquire interactive behavior data generated by a user browsing a page; The performance data generation module is configured to generate performance data of the page based on the interaction behavior data.

29. An interactive behavior data capturing device, comprising: A capture module is configured to capture interactive behavior data generated by a user browsing a page based on a pre-deployed script; The sending module is configured to send the interaction behavior data to a server.

30. A performance analysis system comprising: Client and server; The client is used to capture the interactive behavior data generated by the user browsing the page based on the pre-deployed script, and send it to the server; The server is used to generate performance data of the page based on the interaction behavior data.

31. An electronic device, comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 25.

32. A computer readable medium having computer program instructions stored thereon, the computer program instructions being executable by a processor to implement the method of any one of claims 1-25.

33. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the method according to any one of claims 1 to 25 is implemented.