Time-consuming display method and device, electronic equipment and storage medium

By receiving and displaying the execution and transmission time of service nodes, the problem of inaccurate time consumption analysis in existing technologies is solved, and intuitive display and accurate analysis of service node time consumption are achieved.

CN115357456BActive Publication Date: 2026-06-26BEIJING BAIDU NETCOM SCI & TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING BAIDU NETCOM SCI & TECH CO LTD
Filing Date
2022-08-19
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

In existing technologies, time consumption analysis mainly targets the entire category, without distinguishing between users with low traffic, and does not statistically analyze internal service nodes, resulting in low accuracy of time consumption analysis.

Method used

By receiving service indication information sent by the client, including the execution time and transmission time of service nodes corresponding to multiple requests, and dividing them according to the identification information of the requests, a time consumption image is generated to display the time consumption of service nodes.

Benefits of technology

It improves the accuracy and flexibility of time consumption analysis, and can intuitively display the time consumption of each service node. It is suitable for low-traffic users, including RPC links and custom nodes within services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115357456B_ABST
    Figure CN115357456B_ABST
Patent Text Reader

Abstract

The disclosure provides a time-consuming display method and device, electronic equipment and storage medium, relates to the field of artificial intelligence technology, in particular to the field of cloud computing, cloud storage and big data technology. The scheme is: according to the identification information of multiple requests, the execution time and transmission time of multiple service nodes in the service indication information sent by the client are divided to obtain multiple clusters; according to the execution time and transmission time of the multiple service nodes in the multiple clusters, image drawing is performed to obtain the time-consuming image of each service node; in response to a user operation, the time-consuming image of each service node is displayed, thereby, the execution time and transmission time of the multiple service nodes corresponding to each request can be accurately obtained, and then, according to the execution time and transmission time of the multiple service nodes corresponding to each request, the time-consuming image is drawn, the time consumption of each service node in response to multiple requests can be intuitively displayed, the time-consuming analysis is facilitated, and the accuracy of the time-consuming analysis is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of artificial intelligence technology, specifically to the fields of cloud computing, cloud storage and big data technology, and in particular to a time-consuming display method, apparatus, electronic device and storage medium. Background Technology

[0002] Service latency is a crucial metric for measuring service capability, directly impacting the user experience of an application or application client. Interacting with applications or application clients that experience high service latency leads to a poor user experience and may even cause users to abandon the application. Therefore, it is necessary to statistically analyze application service latency to pinpoint problems and optimize the system. Summary of the Invention

[0003] This disclosure provides a method, apparatus, electronic device, and storage medium for displaying time consumption.

[0004] According to one aspect of this disclosure, a method for displaying time consumption is provided, comprising: receiving service indication information sent by a client, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests, the execution time including the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time including the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services; dividing the execution time and transmission time of the multiple service nodes corresponding to the multiple requests into multiple clusters according to the identification information of the multiple requests, wherein each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request; performing image drawing based on the execution time and transmission time of the multiple service nodes in the multiple clusters to obtain a time consumption image of each service node; wherein the time consumption image is used to indicate the time consumed by the corresponding service node in responding to multiple requests; and displaying the time consumption image of each service node in response to user operation.

[0005] According to another aspect of this disclosure, another method for displaying time consumption is provided, comprising: determining service indication information, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests, the execution time including the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time including the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services; and sending the service indication information to the server.

[0006] According to another aspect of this disclosure, a time consumption display device is provided, comprising: a receiving module, configured to receive service indication information sent by a client, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests, the execution time including the time for at least one service among the corresponding service nodes to execute the corresponding request, and the transmission time including the time for each service among the corresponding service nodes to transmit the execution result of the corresponding request; a partitioning module, configured to partition the execution time and transmission time of the multiple service nodes corresponding to the multiple requests according to the identification information of the multiple requests, to obtain multiple clusters, wherein each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request; a drawing module, configured to draw images according to the execution time and transmission time of the multiple service nodes in the multiple clusters, to obtain a time consumption image of each service node; wherein the time consumption image is used to indicate the time consumed by the corresponding service node in responding to multiple requests; and a display module, configured to display the time consumption images of each service node in response to user operation.

[0007] According to another aspect of this disclosure, a time consumption display device is provided, comprising: a determining module, configured to determine service indication information, wherein the service indication information includes the execution duration and transmission duration of multiple service nodes corresponding to multiple requests, the execution duration including the duration for at least one service in the corresponding service node to execute the corresponding request, and the transmission duration including the duration for each service in the corresponding service node to transmit the execution result of the corresponding request between the services; and a sending module, configured to send the service indication information to a server.

[0008] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0009] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:

[0010] Figure 1 This is a schematic diagram based on the first embodiment of the present disclosure;

[0011] Figure 2 This is a schematic diagram of a service node according to an embodiment of this disclosure;

[0012] Figure 3 This is a schematic diagram according to the second embodiment of the present disclosure;

[0013] Figure 4 This is a schematic diagram according to the third embodiment of the present disclosure;

[0014] Figure 5This is a schematic diagram according to the fourth embodiment of the present disclosure;

[0015] Figure 6 This is a schematic diagram according to the fourth embodiment of the present disclosure;

[0016] Figure 7 This is a schematic diagram according to the fifth embodiment of the present disclosure;

[0017] Figure 8 This is a flowchart illustrating the time consumption display method according to an embodiment of this disclosure;

[0018] Figure 9 This is a schematic diagram of the software development kit, collector, database, and server + front-end structure according to an embodiment of this disclosure;

[0019] Figure 10 This is a schematic diagram illustrating how the software development kit of this disclosure reports the collected data to the collector;

[0020] Figure 11 This is a schematic diagram illustrating the process by which the collector in this embodiment processes the reported data.

[0021] Figure 12 This is a schematic diagram illustrating the time consumption of a service node in an embodiment of this disclosure;

[0022] Figure 13 This is a schematic diagram according to the sixth embodiment of the present disclosure;

[0023] Figure 14 This is a schematic diagram according to the seventh embodiment of the present disclosure;

[0024] Figure 15 This is a schematic diagram according to the eighth embodiment of the present disclosure;

[0025] Figure 16 This is a schematic diagram according to the ninth embodiment of the present disclosure;

[0026] Figure 17 A schematic block diagram of an example electronic device that can be used to implement embodiments of the present disclosure is shown. Detailed Implementation

[0027] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0028] In related technologies, time consumption analysis mainly targets the entire category (a large number of users) and does not differentiate between small-volume (few users) scenarios. Because the total amount of time consumption data for the entire category is large, it is not convenient for time consumption analysis. Furthermore, time consumption analysis primarily focuses on the time consumption between remote procedure calls (RPC) links, without statistical analysis of nodes within the service, resulting in lower accuracy.

[0029] Therefore, in view of the above problems, this disclosure proposes a time-consuming display method, apparatus, electronic device and storage medium.

[0030] The following description, with reference to the accompanying drawings, outlines a time consumption display method, apparatus, electronic device, and storage medium according to embodiments of the present disclosure.

[0031] Figure 1 This is a schematic diagram based on the first embodiment of this disclosure. It should be noted that the time consumption display method implemented in this disclosure can be applied to the server side, and this disclosure provides an example of applying the time consumption display method to the server side.

[0032] like Figure 1 As shown, this time consumption display method may include the following steps:

[0033] Step 101: Receive service instruction information sent by the client.

[0034] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request.

[0035] In this embodiment, after the client sends multiple requests to the server, the client can query the server for the execution results of the multiple requests. Alternatively, the client can send one request to the server, receive the execution result of the server for that request, and store the execution result of each request. After the client sends multiple requests to the server, it can query the execution results corresponding to the multiple requests. Furthermore, based on the execution results of the multiple requests, the client can statistically analyze the execution time and transmission time of the multiple service nodes corresponding to the multiple requests, thereby obtaining the time consumed by the multiple service nodes in responding to the multiple requests. Based on the time consumed by the multiple service nodes corresponding to the multiple requests, service indication information can be generated. To facilitate statistical analysis of the time consumption, there can be multiple clients, and the number of clients can be less than a set threshold.

[0036] It should be noted that the type of service node corresponding to each request may include: RPC link type and service-defined type (e.g., IO (input-output) type, CPU type).

[0037] like Figure 2 As shown, Figure 2 The service nodes on the left are RPC link type service nodes. Figure 2 The service nodes in the middle section are IO type service nodes. Figure 2 The service node on the right is a CPU-type service node.

[0038] Furthermore, it should be noted that each service node can be identified by its source name and downstream name. For example, as shown in Table 1, the node information for each service node can be as follows:

[0039] Table 1 Node Information of Service Nodes

[0040]

[0041] Furthermore, as shown in Table 2, the request information corresponding to each request can be as follows:

[0042] Table 2 Request Information Corresponding to Requests

[0043]

[0044] It's important to understand that a single request represents a complete user interaction. The logid in the request information uniquely identifies this request. A single request may involve multiple RPC interactions (multiple microservice interactions) and may also pass through multiple custom nodes within the service. Therefore, the total data information for a single request equals the information reported by multiple service nodes plus the information from the single request itself.

[0045] Furthermore, the time consumed by any service node can be represented by the identification information and time consumption information of that service node. For example, the time consumption sid_cost of a specific service node under a certain low traffic (number of users less than a set threshold) can be represented as:

[0046] sid_cost=key+sid+sender+receiver+latency;

[0047] Where key is the hash value of logid, and key+sid+sender+receiver is the identification information of the service node.

[0048] Step 102: Based on the identification information of multiple requests, divide the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

[0049] Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0050] Furthermore, after receiving the service instruction information sent by the client, the execution time and transmission time of multiple service nodes corresponding to multiple requests included in the service instruction information can be divided according to the identification information of multiple requests to obtain multiple clusters, wherein each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0051] Step 103: Based on the execution time and transmission time of multiple service nodes in multiple clusters, draw images to obtain the time consumption images of each service node.

[0052] The time-consuming graph is used to indicate the time taken for the corresponding service node to respond to multiple requests.

[0053] To visually display the time consumption of each service node, the time consumption percentile value corresponding to each service node under multiple requests can be determined based on the execution time and transmission time of multiple service nodes in multiple clusters. Then, a time consumption graph can be drawn based on the time consumption percentile value or average value of each service node to obtain the time consumption graph of each service node. For example, the time consumption graph can be drawn based on the average time consumption of each service node under multiple requests, or based on the time consumption corresponding to a set time consumption position in the time consumption arrangement of multiple service nodes.

[0054] Step 104: In response to user actions, display the time consumption graphs for each service node.

[0055] In this embodiment of the disclosure, users can perform operations on the server, such as query operations, and the server can display the time consumption images of each service node.

[0056] In summary, by receiving service indication information sent by the client, which includes the execution and transmission times of multiple service nodes corresponding to multiple requests, the execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for the services in the corresponding service node to transmit the execution results of the corresponding request to each other; based on the identification information of multiple requests, the execution and transmission times of the multiple service nodes corresponding to multiple requests are divided into multiple clusters, where each cluster includes the execution and transmission times of multiple service nodes corresponding to the same request; based on the execution and transmission times of multiple service nodes in multiple clusters, an image is drawn to obtain the time consumption image of each service node; The time-consuming image is used to indicate the time taken for a corresponding service node to respond to multiple requests. In response to user operations, the time-consuming images of each service node are displayed. Thus, based on the identification information of multiple requests, the execution time and transmission time of multiple service nodes corresponding to multiple requests are divided, and the execution time and transmission time of multiple service nodes corresponding to each request can be accurately obtained. Furthermore, by drawing time-consuming images based on the execution time and transmission time of multiple service nodes corresponding to each request, the time taken for each service node to respond to multiple requests can be displayed intuitively, which is convenient for time-consuming analysis. At the same time, the multiple service nodes corresponding to each request can include not only RPC link service nodes, but also custom service nodes within the service, which improves the accuracy of time-consuming analysis.

[0057] To clearly illustrate how the above embodiments divide the execution time and transmission time of multiple service nodes corresponding to multiple requests based on the identification information of multiple requests to obtain multiple clusters, this disclosure proposes another time consumption display method. This time consumption display method can be applied to the server side.

[0058] Figure 3 This is a schematic diagram according to the second embodiment of the present disclosure.

[0059] like Figure 3 As shown, this time consumption display method may include the following steps:

[0060] Step 301: Receive service instruction information sent by the client.

[0061] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request.

[0062] Step 302: For any one of the multiple requests, determine the hash value corresponding to the identifier information of each request based on the identifier information of each request.

[0063] To conserve resources and improve data security, the hash value corresponding to the identifier information of each request can be used to divide the execution time and transmission time of multiple service nodes for multiple requests. For example, the hash value of the identifier information logid of any request can be determined based on the identifier information logid of any request.

[0064] Step 303: Based on the hash value corresponding to the identifier information of any request, divide the execution time and transmission time of multiple service nodes that match the hash value of any request from the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

[0065] Furthermore, based on the hash value corresponding to the identifier information of any request, the execution time and transmission time of multiple service nodes corresponding to multiple requests are verified and divided, thereby obtaining multiple clusters, wherein each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0066] Step 304: Based on the execution time and transmission time of multiple service nodes in multiple clusters, draw images to obtain the time consumption images of each service node.

[0067] The time-consuming graph is used to indicate the time taken for the corresponding service node to respond to multiple requests.

[0068] Step 305: In response to user operation, display the time consumption graphs for each service node.

[0069] It should be noted that the execution processes of steps 301, 304 to 305 can be implemented in any of the embodiments of this disclosure. This disclosure does not limit these processes and will not elaborate further.

[0070] In summary, by taking any one of multiple requests and determining the hash value corresponding to the identifier information of each request, and then dividing the execution time and transmission time of multiple service nodes corresponding to multiple requests into multiple clusters based on the hash value of each request's identifier information, the execution time and transmission time of multiple service nodes can be accurately divided into multiple clusters based on the identifier information of each request. Therefore, by performing time consumption analysis on the execution time and transmission time of multiple service nodes in each cluster, the accuracy and flexibility of time consumption analysis for multiple service nodes can be improved.

[0071] To clearly illustrate how the above embodiments generate images based on the execution and transmission times of multiple service nodes in multiple clusters to obtain the time consumption images of each service node, this disclosure proposes another time consumption display method.

[0072] Figure 4 This is a schematic diagram according to the third embodiment of the present disclosure.

[0073] like Figure 4 As shown, this time consumption display method may include the following steps:

[0074] Step 401: Receive service instruction information sent by the client.

[0075] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request.

[0076] Step 402: Based on the identification information of multiple requests, divide the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

[0077] Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0078] Step 403: Add the execution time and transmission time of each service node in each cluster to obtain the time taken for each service node to respond to multiple requests.

[0079] Since each cluster may include the execution time and transmission time of multiple service nodes corresponding to the same request, in this embodiment of the disclosure, the execution time and transmission time of each service node under each request in each cluster are added together to obtain the time consumed by each service node in responding to each request. Each service node can have a corresponding time consumption for responding to each request. For example, the time consumed by service node A in responding to request 1, request 2, and request 3 are 5us, 6us, and 5us, respectively, and the time consumed by service node B in responding to request 1, request 2, and request 3 are 7us, 6us, and 5us, respectively.

[0080] It should be noted that the transmission duration of a custom CPU service node within the service can be 0.

[0081] Step 404: For any service node, determine whether the time taken for any service node to respond to multiple requests is within the set time range.

[0082] To further improve the accuracy of the time taken for each service node to respond to multiple requests, in this embodiment of the disclosure, it can be determined whether the time taken for each service node to respond to multiple requests is within a set time range. For example, if the set time range is 30 seconds, the time taken to respond to multiple requests exceeding 30 seconds can be determined as abnormal time taken and then discarded.

[0083] Step 405: Based on the time taken for each service node to respond to multiple requests within a set time range, draw an image to obtain the time taken for each service node.

[0084] Furthermore, the time taken by each service node to respond to multiple requests within a set time range can be used to draw an image to obtain a time-consuming image for each service node. For example, the average time taken by each service node to respond to multiple requests within a set time range can be determined, or the time-consuming image can be drawn based on the time-consuming percentile value corresponding to each service node under multiple requests, and then based on the average time taken or the time-consuming percentile value corresponding to each service node.

[0085] Step 406: In response to user operation, display the time consumption graphs for each service node.

[0086] It should be noted that the execution processes of steps 401 to 402 and step 406 can be implemented in any of the embodiments of this disclosure. This disclosure does not limit these processes and will not elaborate further.

[0087] In summary, by summing the execution and transmission times of each service node in each cluster, the time taken for each service node to respond to multiple requests is obtained. For any given service node, it is determined whether the time taken for that service node to respond to multiple requests falls within a set time range. Based on the time taken for each service node to respond to multiple requests within the set time range, a graph is plotted to obtain a time consumption graph for each service node. Thus, based on the execution and transmission times of each service node in each cluster, the time taken for each service node to respond to multiple requests can be obtained, and anomaly detection can be performed on the time taken for each service node to respond to multiple requests, improving the accuracy of the time taken for each service node to respond to multiple requests. Therefore, plotting the time taken for each service node to respond to multiple requests provides a visual display of the time taken for each service node to respond to multiple requests, improving the accuracy of time consumption analysis.

[0088] To clearly illustrate how the above embodiments generate images based on the time taken for each service node to respond to multiple requests within a set time range, thereby obtaining a time-consuming image for each service node, this disclosure proposes another time-consuming display method.

[0089] Figure 5This is a schematic diagram according to the fourth embodiment of the present disclosure.

[0090] like Figure 5 As shown, this time consumption display method may include the following steps:

[0091] Step 501: Receive service instruction information sent by the client.

[0092] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request.

[0093] Step 502: Based on the identification information of multiple requests, divide the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

[0094] Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0095] Step 503: Add the execution time and transmission time of each service node in each cluster to obtain the time taken for each service node to respond to multiple requests.

[0096] Step 504: For any service node, determine whether the time taken for any service node to respond to multiple requests is within the set time range.

[0097] Step 505: Sort the time taken by each service node to respond to multiple requests within the set time range to obtain the order of time taken by each service node to respond to multiple requests.

[0098] As an example, the time taken for each service node to respond to multiple requests within a set time range can be sorted to obtain the order in which the service nodes respond to multiple requests.

[0099] Step 506: Obtain the time taken for each service node to respond to multiple requests in the order of time taken for each node to respond to multiple requests, and specify the time taken for each node to take at least one of the specified positions.

[0100] Furthermore, based on the order in which each service node responds to multiple requests, the time taken at least one of the time taken in a specific position within the order of time taken to respond to multiple requests can be obtained. It should be noted that, for the purpose of facilitating time analysis, the position can be set to 80, 90, or 99, etc.

[0101] Step 507: For any set arrangement position among at least one set arrangement position of each service node, perform curve fitting on the time consumption of any set arrangement position of each service node to obtain the time consumption image of any set arrangement position of each service node.

[0102] Furthermore, based on any one of the at least one set arrangement positions of each service node, the time consumption of any set arrangement position of each service node can be curve-fitted to obtain a time consumption image of any set arrangement position of each service node.

[0103] As another example, the average time taken by each service node to respond to multiple requests within a set time range can be calculated to obtain the average time taken by each service node to respond to multiple requests. Then, curve fitting can be performed based on the average time taken by each service node to respond to multiple requests to obtain a time graph of the average time taken by each service node.

[0104] Step 508: In response to user operation, display the time consumption graphs for each service node.

[0105] It should be noted that the execution process of steps 501 to 504 and step 508 can be implemented in any of the embodiments of this disclosure. This disclosure does not limit this and will not elaborate further.

[0106] In summary, by sorting the time taken by each service node to respond to multiple requests within a set time range, the order of time taken by each service node to respond to multiple requests is obtained; the time taken at least one of the set positions in the order of time taken by each service node to respond to multiple requests is obtained; for any set position in the order of time taken by each service node to respond to multiple requests, a curve fitting is performed on the time taken at any set position in the order of time taken by each service node to obtain a time taken at any set position in the order of time taken by each service node. Thus, by performing curve fitting on the time taken at any set position in the order of time taken by each service node, a time taken at any set position in the order of time taken by each service node can be obtained, realizing an intuitive display of the time taken by each service node to respond to multiple requests, and improving the convenience of analyzing the time taken by each service node to respond to multiple requests.

[0107] To further improve the accuracy of the time consumption of each service node, in this embodiment of the disclosure, such as Figure 6 As shown, Figure 6 As illustrated in the schematic diagram of the fourth embodiment of this disclosure, before receiving service instruction information sent by the client, the client's identification information and the amount of data in the service instruction information can be verified. Figure 6 The illustrated embodiment may include the following steps:

[0108] Step 601: Check if the client's identifier information exists in the whitelist.

[0109] To further improve the accuracy of the time taken for each service node to respond to multiple requests, access control can be implemented for the client. In this embodiment of the disclosure, the client's identification information (e.g., IP address) can be used to query whether the client's identification information exists in the set whitelist.

[0110] Step 602: When the client's identification information exists in the whitelist, determine the amount of data corresponding to the service instruction information.

[0111] Furthermore, when the whitelist contains the client's identification information, the amount of data corresponding to the service instruction information can be determined to further determine whether the amount of data corresponding to the service instruction information is within the server's receiving capacity.

[0112] In addition, when the client's identification information is not in the whitelist, the service instruction information sent by the client will be refused to be received, so as to avoid the occurrence of dirty data caused by abnormal traffic.

[0113] Step 603: When the data volume exceeds the set data volume threshold, expand the server resources.

[0114] The resources include storage resources and / or computing resources.

[0115] Furthermore, when the data volume exceeds a set data volume threshold, it indicates that the data volume corresponding to the service instruction information exceeds the server's receiving capacity. In this case, the switch can be turned on to reject service instruction information sent by the client, while resources are expanded based on the data volume of the service instruction information. After the server's resources have been expanded, the switch can be turned on again to receive service instruction information sent by the client. In addition, to control the number of clients and ensure that the number of clients is less than or equal to a set threshold (low traffic), the number of clients can also be monitored and counted.

[0116] Step 604: Receive service instruction information sent by the client.

[0117] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request.

[0118] Step 605: Based on the identification information of multiple requests, divide the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

[0119] Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0120] Step 606: Based on the execution time and transmission time of multiple service nodes in multiple clusters, draw images to obtain the time consumption images of each service node.

[0121] The time-consuming graph is used to indicate the time taken for the corresponding service node to respond to multiple requests.

[0122] Step 607: In response to the user operation, display the time consumption images of each service node.

[0123] It should be noted that the execution process of steps 604 to 607 can be implemented in any of the embodiments of this disclosure. This disclosure does not limit this and will not elaborate further.

[0124] In summary, by querying whether client identification information exists in the whitelist; when client identification information exists in the whitelist, determining the data volume corresponding to the service instruction information; and when the data volume exceeds the set data volume threshold, expanding server resources, access control is implemented for clients and service instruction information before receiving service instruction information sent by clients. This avoids dirty data caused by abnormal traffic and situations where service instruction information sent by whitelisted clients cannot be received, thus improving the time-consuming accuracy of each service node.

[0125] To clearly illustrate how the service instruction information received by the server in the above embodiments is determined, in this disclosure embodiment, as follows: Figure 7 As shown, Figure 7 As illustrated in the fifth embodiment of this disclosure, the server can receive a query request sent by the client, send a query request response to the client, and determine service instruction information based on the query request response information. Figure 7 The illustrated embodiment may include the following steps:

[0126] Step 701: Receive the query request sent by the client.

[0127] The query request is used to retrieve the execution results of multiple requests.

[0128] In this embodiment of the disclosure, after the client sends multiple requests to the server, the client can query the execution results of the multiple requests. As one possible implementation, the client can send a query request to the server to query the execution results of the multiple requests.

[0129] Step 702: Send query request response information to the client.

[0130] The query request response information includes the execution results of multiple requests, and the execution results are used to determine the service indication information.

[0131] In this embodiment of the disclosure, the server can respond to the query request by sending query request response information to the client. The client can statistically analyze the execution time and transmission time of the multiple service nodes corresponding to the multiple requests based on the execution results of the multiple requests, and obtain the execution time and transmission time of the multiple service nodes corresponding to the multiple requests. Then, based on the execution time and transmission time of the multiple service nodes corresponding to the multiple requests, service indication information is generated.

[0132] For example, for each request, if the request is successful, the execution time and transmission time of multiple service nodes corresponding to the request can be counted to obtain the execution time and transmission time of multiple service nodes corresponding to the request.

[0133] Step 703: Receive service instruction information sent by the client.

[0134] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request.

[0135] Step 704: Based on the identification information of multiple requests, divide the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

[0136] Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request.

[0137] Step 705: Based on the execution time and transmission time of multiple service nodes in multiple clusters, perform image drawing to obtain the time consumption image of each service node.

[0138] The time-consuming graph is used to indicate the time taken for the corresponding service node to respond to multiple requests.

[0139] Step 706: In response to user operation, display the time consumption graphs for each service node.

[0140] It should be noted that the execution process of steps 703 to 706 can be implemented in any of the embodiments of this disclosure. This disclosure does not limit this and will not elaborate further.

[0141] In summary, by receiving query requests sent by the client and sending query request response information to the client, the client can effectively generate service instruction information based on the execution results of multiple requests in the query request response information sent by the server.

[0142] To clearly illustrate the above embodiments, examples are given below.

[0143] For example, such as Figure 8 As shown, Figure 8 This is a flowchart illustrating the time consumption display method according to an embodiment of the present disclosure.

[0144] in, Figure 8 The software development kit (SDK) in the system can be integrated into various services. A complete system typically has multiple microservices. The data collected by the SDK is passed to the collector according to the hash value of the logid. The collector classifies and calculates the data using a pre-configured small-traffic whitelist, and stores the results in the database. The server queries the database and then sends the data to the front-end (UI) for visualization. The structure of the software development kit, collector, database, and server + front-end can be described as follows: Figure 9 As shown.

[0145] Figure 8 The method for displaying the time consumption shown may specifically include the following steps:

[0146] 1. Data Acquisition (SDK): The SDK is used to collect the time consumption of each service node under multiple requests;

[0147] 2. Data aggregation (collector): such as Figure 10 As shown, the data collected by the SDK is reported to the collector. The SDK can report batch information from multiple service nodes at once. Furthermore, as... Figure 11 As shown, the collector can process the time consumption of multiple service nodes reported. The specific process is as follows:

[0148] Access control is implemented at the collector's entry point. If the reported IP is not on the whitelist, it will be rejected to prevent abnormal traffic from causing dirty data. It also has a rejection switch function. When traffic exceeds the service's capacity, the switch will be turned on to reject all traffic, while simultaneously assessing the traffic volume and scaling up resources. The switch will be turned off once resources are available. Furthermore, traffic monitoring is also performed.

[0149] It's worth noting that the core collector is divided into a primary collector and a secondary collector. The primary collector mainly concatenates multiple links and request headers sent from the SDK. To distribute the data as widely as possible, the primary collector uses bucketing, based on the hash value of the logid. Each bucket corresponds to a buffer, which is of two types, temporarily denoted as buf and temp. temp stores the data to be processed next, denoted as tmpdata, while buf stores the current real-time data, denoted as bufdata. The handover process between buf and temp is as follows: When data arrives for the first time, it is placed in buf. After one cycle (default 10 seconds, similarly, without further explanation), the data in temp is processed. At this time, temp is empty and no processing is performed; the data in buf is directly transferred to temp. In the second cycle, the data in `temp` is checked first. If data is found in `temp`, it is concatenated with the node and request header according to the key. Simultaneously, the system searches `buf` for data with the same key. If found, the data is concatenated together, and the corresponding data in `buf` is deleted to prevent data loss at time intervals. After concatenation, the data in `temp` is a collection of one request and multiple nodes (service nodes). This data is then stored in Redis for easy tracking of individual requests, with the key being `uid` and `logid`, and the value being the corresponding data serialization result. Simultaneously, the data is split according to the service node name and sent to the secondary collector. After completion, the data in `temp` is cleared, and the data in `buf` is transferred to `temp`.

[0150] Furthermore, the secondary collector is also an RPC service, and it's deployed homogeneously with the primary collector (the code and service are the same, but they can also be deployed separately) for easy management and maintenance. After receiving requests from various nodes, the secondary collector aggregates data according to the timestamps in the requests, with data from the same window placed in a single buffer by default. Then, it advances the data according to a specified time interval (default 30 seconds). This window's data is then passed to the task module for quantile calculation. If a request's timestamp falls within the already advanced window after the specified time window (30 seconds), it is discarded.

[0151] The task module calculates the quantile values ​​for each node within this window. Additionally, if a low-volume request is set, it will be split and calculated based on the low-volume intensity. The low-volume whitelist is derived from a database and requires prior registration. If the low-volume request in this request is in the specified whitelist, it will be calculated; otherwise, it will not be processed.

[0152] 3. Data Storage (DB): There are two main types of databases here: a remote dictionary server (Redis) and a relational database management system (MySQL). Redis primarily stores raw request data in key-value pairs, where the key is the uid and logid, and the value is the corresponding data serialization result, facilitating backtracking. MySQL mainly stores the percentile data (including mean, 80th percentile, 90th percentile, 99th percentile, etc.) for each node, as well as the number of requests and failed requests. In addition to storing calculated data, MySQL can also store a low-traffic whitelist.

[0153] 4. Data Display (Server + UI): The server is primarily responsible for querying the database and parsing the data into the format required by the front-end. The page then renders the data for intuitive display. The displayed data represents the time consumption of service nodes at different time series.

[0154] It should be noted that, in order to quickly locate service nodes experiencing increased latency, such as... Figure 12 As shown, comparing two low-traffic numbers can quickly pinpoint the service nodes experiencing increased latency, preparing for subsequent optimizations. To ensure differences in latency between the service nodes corresponding to the two low-traffic numbers for effective latency analysis, the order of requests for the two low-traffic numbers can be different.

[0155] The time consumption display method of this disclosure embodiment receives service indication information sent by a client. The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for the services in the corresponding service node to transmit the execution results of the corresponding request. Based on the identification information of multiple requests, the execution time and transmission time of the multiple service nodes corresponding to the multiple requests are divided into multiple clusters. Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request. Based on the execution time and transmission time of the multiple service nodes in the multiple clusters, an image is drawn to obtain the time consumption of each service node. The system generates a time-consuming image; this image indicates the time taken for a corresponding service node to respond to multiple requests. In response to user actions, the system displays the time-consuming images for each service node. Based on the identification information of multiple requests, the execution and transmission times of the service nodes corresponding to each request are divided, accurately obtaining the execution and transmission times of the service nodes for each request. Furthermore, by drawing a time-consuming image based on the execution and transmission times of the service nodes for each request, the system can visually display the time taken for each service node to respond to multiple requests, facilitating time-consuming analysis. Moreover, the multiple service nodes corresponding to each request can include not only RPC link service nodes but also custom service nodes within the service, improving the accuracy of time-consuming analysis.

[0156] To achieve the above embodiments, this disclosure proposes another time-consuming display method.

[0157] Figure 13 This is a schematic diagram according to the sixth embodiment of this disclosure. The time consumption display method implemented in this disclosure can be applied to a client, and this disclosure provides an example of applying the time consumption display method to a client.

[0158] like Figure 13 As shown, this time consumption display method may include the following steps:

[0159] Step 1301: Determine service instruction information.

[0160] The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for the services in the corresponding service node to transmit the execution results of the corresponding request to each other.

[0161] In this embodiment of the disclosure, the client can query the execution results of multiple requests locally or send a query request to the server to query the execution results of multiple requests. Then, based on the execution results of the multiple requests, the client determines the execution duration and transmission duration of the multiple service nodes corresponding to the multiple requests, and then generates service indication information based on the execution duration and transmission duration of the multiple service nodes corresponding to the multiple requests.

[0162] Step 1302: Send service instruction information to the server.

[0163] Furthermore, the client can send service instruction information to the server to facilitate subsequent time consumption analysis of each service node.

[0164] In summary, by determining service indication information and sending it to the server, the client can determine the execution and transmission times of multiple service nodes corresponding to multiple requests based on the execution results of multiple requests. Then, based on the execution and transmission times of these service nodes, the client generates service indication information and sends it to the server. The server can then create a time-consuming graph based on the execution and transmission times of the service nodes corresponding to each request, visually displaying the time taken for each service node to respond to multiple requests, facilitating time-consuming analysis. Furthermore, the multiple service nodes corresponding to each request can include not only RPC link service nodes but also custom service nodes within the service, improving the accuracy of time-consuming analysis.

[0165] To clearly illustrate how the above embodiments determine service instruction information, this disclosure proposes another time-consuming display method.

[0166] Figure 14 This is a schematic diagram according to the seventh embodiment of this disclosure. The time consumption display method implemented in this disclosure can be applied to a client.

[0167] like Figure 14 As shown, this time consumption display method may include the following steps:

[0168] Step 1401: Query the execution results of multiple requests.

[0169] The execution result is obtained by the server executing the corresponding request after the corresponding request is sent to the server.

[0170] As an example, after the client sends a request to the server, it receives the execution result of the request from the server and stores it locally. After the client sends multiple requests and stores the execution result sent by the server, it can query locally to obtain the execution results of multiple requests.

[0171] As another example, after a client sends a request to a server, the server can respond to the request and send the response information to the client. After receiving the corresponding response information, the client then sends another request to the server without storing the response information. The server executes the other request and sends the execution result to the client. This process continues. After the client has sent and received multiple requests and corresponding response information from the server, it can send a query request to the server to query the execution results of the multiple requests.

[0172] Step 1402: Based on the execution results of multiple requests, the execution time and transmission time of multiple service nodes corresponding to multiple requests are statistically analyzed to obtain the execution time and transmission time of multiple service nodes corresponding to multiple requests.

[0173] Furthermore, based on the execution results of multiple requests, the client statistically analyzes the execution and transmission times of multiple service nodes corresponding to those requests to obtain the total execution and transmission times of the multiple service nodes corresponding to each request. For example, for each request, if the request is successful, the client can statistically analyze the execution and transmission times of the multiple service nodes corresponding to that request to obtain the total execution and transmission times of the multiple service nodes corresponding to that request.

[0174] Step 1403: Generate service indication information based on the execution time and transmission time of multiple service nodes corresponding to multiple requests.

[0175] Furthermore, the client can generate service indication information based on the execution and transmission times of multiple service nodes corresponding to multiple requests.

[0176] Step 1404: Send service instruction information to the server.

[0177] It should be noted that the execution process of step 1404 can be implemented in any of the embodiments of this disclosure. This disclosure does not limit this and will not elaborate further.

[0178] In summary, by querying the execution results of multiple requests, and based on these results, the execution and transmission times of the multiple service nodes corresponding to the multiple requests are statistically analyzed to obtain the execution and transmission times of the multiple service nodes corresponding to the multiple requests. Based on these execution and transmission times, service indication information is generated. Thus, the client can generate service indication information based on the execution and transmission times of the multiple service nodes corresponding to the multiple requests.

[0179] The time consumption display method of this disclosure determines service indication information, which includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution results of the corresponding request. The service indication information is sent to the server. Thus, the client can determine the execution time and transmission time of the multiple service nodes corresponding to multiple requests based on the execution results of multiple requests. Then, based on the execution time and transmission time of the multiple service nodes corresponding to multiple requests, the client generates service indication information and sends it to the server. The server can draw a time consumption image based on the execution time and transmission time of the multiple service nodes corresponding to each request, which can intuitively display the time consumption of each service node responding to multiple requests, facilitating time consumption analysis. At the same time, the multiple service nodes corresponding to each request include not only RPC link service nodes but also custom service nodes within the service, which improves the accuracy of time consumption analysis.

[0180] With the above Figures 1 to 12 Corresponding to the time consumption display method provided in the embodiments, this disclosure also provides a time consumption display device. Since the time consumption display device provided in the embodiments of this disclosure is similar to the one described above... Figures 1 to 12 The time consumption display method provided in this embodiment corresponds to the time consumption display method provided in this embodiment, and therefore the implementation method of the time consumption display method is also applicable to the time consumption display device provided in this embodiment, and will not be described in detail in this embodiment.

[0181] Figure 15 This is a schematic diagram according to the eighth embodiment of this disclosure. The time consumption display method implemented in this disclosure can be applied to the server side.

[0182] like Figure 15 As shown, the time consumption display device 1500 includes: a receiving module 1510, a dividing module 1520, a drawing module 1530, and a display module 1540.

[0183] The system includes a receiving module 1510 for receiving service indication information sent by a client. This service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time taken for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time taken for the services in the corresponding service node to transmit the execution results of the corresponding request to each other. A segmentation module 1520 is used to segment the execution time and transmission time of the multiple service nodes corresponding to the multiple requests according to the identification information of the multiple requests, to obtain multiple clusters. Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request. A drawing module 1530 is used to draw images based on the execution time and transmission time of the multiple service nodes in the multiple clusters, to obtain a time-consuming image for each service node. The time-consuming image indicates the time taken for the corresponding service node to respond to multiple requests. A display module 1540 is used to display the time-consuming images of each service node in response to user operations.

[0184] As one possible implementation of this disclosure, the partitioning module 1520 is configured to: for any one of the multiple requests, determine the hash value corresponding to the identifier information of any one request based on the identifier information of any one request; based on the hash value corresponding to the identifier information of any one request, partition the execution time and transmission time of multiple service nodes that match the hash value of any one request from the execution time and transmission time of multiple service nodes corresponding to multiple requests, so as to obtain multiple clusters.

[0185] As one possible implementation of this disclosure, the drawing module 1530 is configured to: add the execution time and transmission time of each service node in each cluster to obtain the time consumed by each service node in responding to multiple requests; for any service node, determine whether the time consumed by any service node in responding to multiple requests is within a set time range; and draw an image based on the time consumed by each service node in responding to multiple requests within the set time range to obtain the time consumption image of each service node.

[0186] As a possible implementation of this disclosure, the drawing module 1530 is further configured to: sort the time taken by each service node to respond to multiple requests within a set time range to obtain the time taken by each service node to respond to multiple requests in an order; obtain the time taken at least one set position in the time taken by each service node to respond to multiple requests; and perform curve fitting on the time taken at any set position of each service node for any set position in at least one set position of each service node to obtain a time taken image of any set position of each service node.

[0187] As one possible implementation of this disclosure, the time consumption display device 1500 further includes: a query module, a determination module, and an expansion module.

[0188] The system includes a query module for checking if client identification information exists in the set whitelist; a determination module for determining the amount of data corresponding to the service instruction information when client identification information exists in the set whitelist; and an expansion module for expanding server resources when the amount of data exceeds a set data threshold, including storage resources and / or computing resources.

[0189] As one possible implementation of this disclosure, the time consumption display device 1500 further includes a rejection module.

[0190] The rejection module is used to refuse to receive service instruction information sent by a client when the client's identification information is not in the set whitelist.

[0191] As one possible implementation of this disclosure, the time consumption display device 1500 further includes a sending module.

[0192] The receiving module is further configured to receive a query request sent by a client; wherein the query request is used to query the execution results of multiple requests; the sending module is configured to send query request response information to the client, wherein the query request response information includes the execution results of multiple requests, and the execution results are used to determine the service indication information.

[0193] The time consumption display device of this embodiment receives service indication information sent by a client. The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for the services in the corresponding service node to transmit the execution results of the corresponding request to each other. Based on the identification information of the multiple requests, the execution time and transmission time of the multiple service nodes corresponding to the multiple requests are divided into multiple clusters. Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request. Based on the execution time and transmission time of the multiple service nodes in the multiple clusters, an image is drawn to obtain the time consumption of each service node. The system generates a time-consuming image; this image indicates the time taken for a corresponding service node to respond to multiple requests. In response to user actions, the system displays the time-consuming images for each service node. Based on the identification information of multiple requests, the execution and transmission times of the service nodes corresponding to each request are divided, accurately obtaining the execution and transmission times of the service nodes for each request. Furthermore, by drawing a time-consuming image based on the execution and transmission times of the service nodes for each request, the system can visually display the time taken for each service node to respond to multiple requests, facilitating time-consuming analysis. Moreover, the multiple service nodes corresponding to each request can include not only RPC link service nodes but also custom service nodes within the service, improving the accuracy of time-consuming analysis.

[0194] With the above Figures 13 to 14 Corresponding to the time consumption display method provided in the embodiments, this disclosure also provides a time consumption display device. Since the time consumption display device provided in the embodiments of this disclosure is similar to the one described above... Figures 13 to 14 The time consumption display method provided in this embodiment corresponds to the time consumption display method provided in this embodiment, and therefore the implementation method of the time consumption display method is also applicable to the time consumption display device provided in this embodiment, and will not be described in detail in this embodiment.

[0195] Figure 16 This is a schematic diagram according to the ninth embodiment of this disclosure. The time consumption display method implemented in this disclosure can be applied to the server side.

[0196] like Figure 16 As shown, the time consumption display device 1600 includes: a determination module 1610 and a transmission module 1620.

[0197] The determining module 1610 is used to determine service indication information, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services. The sending module 1620 is used to send the service indication information to the server.

[0198] As one possible implementation of this disclosure, the determining module 1610 is configured to: query the execution results of multiple requests, wherein the execution results are obtained by the server executing the corresponding requests after sending the corresponding requests to the server; based on the execution results of multiple requests, statistically analyze the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain the execution time and transmission time of multiple service nodes corresponding to multiple requests; and generate service indication information based on the execution time and transmission time of multiple service nodes corresponding to multiple requests.

[0199] The time consumption display device of this disclosure determines service indication information, which includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution result of the corresponding request. The service indication information is sent to the server. Thus, the client can determine the execution time and transmission time of the multiple service nodes corresponding to multiple requests based on the execution results of multiple requests. Then, based on the execution time and transmission time of the multiple service nodes corresponding to multiple requests, the client generates service indication information and sends it to the server. The server can draw a time consumption image based on the execution time and transmission time of the multiple service nodes corresponding to each request, which can intuitively display the time consumption of each service node responding to multiple requests, facilitating time consumption analysis. At the same time, the multiple service nodes corresponding to each request can include not only RPC link service nodes, but also custom service nodes within the service, which improves the accuracy of time consumption analysis.

[0200] To implement the above embodiments, this disclosure also proposes an electronic device, including: 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, the instructions being executed by the at least one processor to enable the at least one processor to perform the above-described... Figures 1 to 12 The time consumption display method in the embodiment, or, execution Figures 13 to 14 The time consumption display method described in the embodiment.

[0201] To implement the above embodiments, this disclosure also proposes a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to perform the above-described... Figures 1 to 12 The time consumption display method described in the embodiment, or, executing Figures 13 to 14 The time consumption display method described in the embodiment.

[0202] To implement the above embodiments, this disclosure also proposes a computer program product, including a computer program that, when executed by a processor, implements the above-described embodiments. Figures 1 to 12 The time consumption display method described in the embodiments, or the implementation of the above... Figures 13 to 14 The time consumption display method described in the embodiment.

[0203] It should be noted that the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved in the technical solution disclosed herein are all carried out with the consent of the user, and all comply with the provisions of relevant laws and regulations, and do not violate public order and good morals.

[0204] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0205] Figure 17 A schematic block diagram of an example electronic device 1700 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0206] like Figure 17 As shown, device 1700 includes a computing unit 1701, which can perform various appropriate actions and processes according to a computer program stored in read-only memory (ROM) 1702 or a computer program loaded into random access memory (RAM) 1703 from storage unit 1708. The RAM 1703 may also store various programs and data required for the operation of device 1700. The computing unit 1701, ROM 1702, and RAM 1703 are interconnected via bus 1704. Input / output (I / O) interface 1705 is also connected to bus 1704.

[0207] Multiple components in device 1700 are connected to I / O interface 1705, including: input unit 1706, such as a keyboard, mouse, etc.; output unit 1707, such as various types of displays, speakers, etc.; storage unit 1708, such as a disk, optical disk, etc.; and communication unit 1709, such as a network card, modem, wireless transceiver, etc. Communication unit 1709 allows device 1700 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0208] The computing unit 1701 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 1701 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 1701 performs the various methods and processes described above, such as the time-consuming presentation method. For example, in some embodiments, the time-consuming presentation method may be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 1708. In some embodiments, part or all of the computer program may be loaded and / or installed on device 1700 via ROM 1702 and / or communication unit 1709. When the computer program is loaded into RAM 1703 and executed by the computing unit 1701, one or more steps of the time-consuming presentation method described above may be performed. Alternatively, in other embodiments, the computing unit 1701 may be configured to perform the time-consuming display method by any other suitable means (e.g., by means of firmware).

[0209] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0210] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0211] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0212] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0213] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), the Internet, and blockchain networks.

[0214] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can also be servers for distributed systems or servers incorporating blockchain technology.

[0215] It's important to note that artificial intelligence (AI) is the study of enabling computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, and planning). It encompasses both hardware and software technologies. AI hardware technologies generally include sensors, dedicated AI chips, cloud computing, distributed storage, and big data processing. AI software technologies primarily include computer vision, speech recognition, natural language processing, machine learning / deep learning, big data processing, and knowledge graph technologies.

[0216] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.

[0217] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A time-consuming display method, comprising: Receive service indication information sent by the client, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests, the execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services. Based on the identification information of the multiple requests, the execution time and transmission time of the multiple service nodes corresponding to the multiple requests are divided to obtain multiple clusters, wherein each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request. Based on the execution time and transmission time of multiple service nodes in the multiple clusters, images are drawn to obtain the time consumption image of each service node; wherein, the time consumption image is used to indicate the time consumed by the corresponding service node in responding to multiple requests; In response to user actions, the time consumption graphs of each service node are displayed.

2. The method according to claim 1, wherein, The step involves dividing the execution and transmission times of multiple service nodes corresponding to the multiple requests based on their identification information to obtain multiple clusters, including: For any one of the plurality of requests, determine the hash value corresponding to the identifier information of each of the requests based on the identifier information of the request; Based on the hash value corresponding to the identifier information of any request, the execution time and transmission time of multiple service nodes that match the hash value of any request are divided from the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

3. The method according to claim 1, wherein, The step of drawing images based on the execution and transmission times of multiple service nodes in the multiple clusters to obtain a time-consuming image for each service node includes: The execution time and transmission time of each service node in each cluster are added together to obtain the time taken for each service node to respond to multiple requests. For any of the service nodes, determine whether the time taken for any of the service nodes to respond to multiple requests is within a set time range; Based on the time taken for each of the service nodes to respond to multiple requests within a set time range, an image is drawn to obtain a time-consuming image for each of the service nodes.

4. The method according to claim 3, wherein, The step of drawing images based on the response times of each service node to multiple requests within a set time range to obtain a time-consuming image for each service node includes: The time taken by each of the service nodes to respond to multiple requests within a set time range is sorted to obtain the order in which the service nodes respond to multiple requests. Obtain the time taken for each of the service nodes to respond to multiple requests in a specified order, based on the time taken for each node to be positioned in the order of their responses. For any of the at least one set arrangement positions of each service node, curve fitting is performed on the time consumption of any set arrangement position of each service node to obtain a time consumption image of any set arrangement position of each service node.

5. The method according to claim 1, wherein, The method further includes: Check if the client's identifier information exists in the whitelist. When the client's identification information exists in the whitelist, determine the amount of data corresponding to the service instruction information; When the amount of data exceeds a set data threshold, the resources on the server are expanded, including storage resources and / or computing resources.

6. The method according to claim 5, wherein, The method further includes: If the client's identifier is not in the whitelist, the service instruction information sent by the client will be refused.

7. The method according to any one of claims 1-6, wherein, The method further includes: Receive a query request sent by the client; wherein the query request is used to query the execution results of multiple requests; Send query request response information to the client, wherein the query request response information includes the execution results of the plurality of requests, and the execution results are used to determine the service indication information.

8. A time-consuming display method, comprising: Determine service indication information, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests, the execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services. Send the service instruction information to the server; The service indication information is used by the server to divide the execution time and transmission time of multiple service nodes corresponding to the multiple requests according to the identification information of the multiple requests, so as to obtain multiple clusters, and to draw images according to the execution time and transmission time of multiple service nodes in the multiple clusters to obtain the time consumption image of each service node, and to display the time consumption image of each service node in response to user operation. Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request, and the time consumption image is used to indicate the time consumed by the corresponding service node in responding to multiple requests.

9. The method according to claim 8, wherein, The determined service instruction information includes: The query retrieves the execution results of multiple requests, where the execution results are obtained by the server executing the corresponding requests after they have been sent to the server. Based on the execution results of the multiple requests, the execution time and transmission time of the multiple service nodes corresponding to the multiple requests are statistically analyzed to obtain the execution time and transmission time of the multiple service nodes corresponding to the multiple requests. The service indication information is generated based on the execution time and transmission time of the multiple service nodes corresponding to the multiple requests.

10. A time-consuming display device, comprising: The receiving module is used to receive service indication information sent by the client. The service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests. The execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services. The partitioning module is used to partition the execution time and transmission time of multiple service nodes corresponding to the multiple requests based on the identification information of the multiple requests, so as to obtain multiple clusters, wherein each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request. The drawing module is used to draw images based on the execution time and transmission time of multiple service nodes in the multiple clusters to obtain the time consumption image of each service node; wherein, the time consumption image is used to indicate the time consumed by the corresponding service node in responding to multiple requests; The display module is used to display the time-consuming images of each service node in response to user operations.

11. The apparatus according to claim 10, wherein, The partitioning module is used for: For any one of the plurality of requests, determine the hash value corresponding to the identifier information of each of the requests based on the identifier information of the request; Based on the hash value corresponding to the identifier information of any request, the execution time and transmission time of multiple service nodes that match the hash value of any request are divided from the execution time and transmission time of multiple service nodes corresponding to multiple requests to obtain multiple clusters.

12. The apparatus according to claim 10, wherein, The drawing module is used for: The execution time and transmission time of each service node in each cluster are added together to obtain the time taken for each service node to respond to multiple requests. For any of the service nodes, determine whether the time taken for any of the service nodes to respond to multiple requests is within a set time range; Based on the time taken for each of the service nodes to respond to multiple requests within a set time range, an image is drawn to obtain a time-consuming image for each of the service nodes.

13. The apparatus according to claim 12, wherein, The drawing module is also used for: The time taken by each of the service nodes to respond to multiple requests within a set time range is sorted to obtain the order in which the service nodes respond to multiple requests. Obtain the time taken for each of the service nodes to respond to multiple requests in a specified order, based on the time taken for each node to be positioned in the order of their responses. For any of the at least one set arrangement positions of each service node, curve fitting is performed on the time consumption of any set arrangement position of each service node to obtain a time consumption image of any set arrangement position of each service node.

14. The apparatus according to claim 10, wherein, The device further includes: The query module is used to query whether the client's identification information exists in the set whitelist; The determination module is used to determine the amount of data corresponding to the service indication information when the client's identification information exists in the set whitelist; An expansion module is used to expand the server's resources when the data volume exceeds a set data volume threshold, wherein the resources include storage resources and / or computing resources.

15. The apparatus according to claim 14, wherein, The device further includes: The rejection module is used to refuse to receive service instruction information sent by the client when the client's identification information is not in the set whitelist.

16. The apparatus according to any one of claims 10-15, wherein, The device further includes: a transmitting module; The receiving module is further configured to receive a query request sent by the client; wherein the query request is used to query the execution results of multiple requests; The sending module is used to send query request response information to the client, wherein the query request response information includes the execution results of the plurality of requests, and the execution results are used to determine the service indication information.

17. A time-consuming display device, comprising: The determination module is used to determine service indication information, wherein the service indication information includes the execution time and transmission time of multiple service nodes corresponding to multiple requests, the execution time includes the time for at least one service in the corresponding service node to execute the corresponding request, and the transmission time includes the time for each service in the corresponding service node to transmit the execution result of the corresponding request between the services. The sending module is used to send the service indication information to the server. The service indication information is used by the server to divide the execution time and transmission time of multiple service nodes corresponding to the multiple requests according to the identification information of the multiple requests, so as to obtain multiple clusters, and to draw images according to the execution time and transmission time of multiple service nodes in the multiple clusters to obtain the time consumption image of each service node, and to display the time consumption image of each service node in response to user operation. Each cluster includes the execution time and transmission time of multiple service nodes corresponding to the same request, and the time consumption image is used to indicate the time consumed by the corresponding service node in responding to multiple requests.

18. The apparatus according to claim 17, wherein, The determining module is used for: The query retrieves the execution results of multiple requests, where the execution results are obtained by the server executing the corresponding requests after they have been sent to the server. Based on the execution results of the multiple requests, the execution time and transmission time of the multiple service nodes corresponding to the multiple requests are statistically analyzed to obtain the execution time and transmission time of the multiple service nodes corresponding to the multiple requests. The service indication information is generated based on the execution time and transmission time of the multiple service nodes corresponding to the multiple requests.

19. 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, which, when executed by the at least one processor, enables the at least one processor to perform the method of any one of claims 1-7, or to perform the method of any one of claims 8-9.

20. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method of any one of claims 1-7, or to perform the method of any one of claims 8-9.

21. A computer program product comprising a computer program that, when executed by a processor, implements the method of any one of claims 1-7, or implements the method of any one of claims 8-9.