Service performance optimization method and device based on large model, electronic equipment and medium

By responding to the alarm information sent by the service performance monitoring unit, the fault instance is determined and the data acquisition path is automatically generated. The operation data is analyzed using a large language model, which solves the problem of low fault location and operation and maintenance efficiency, and improves data acquisition efficiency and operation and maintenance efficiency.

CN119484237AActive Publication Date: 2025-02-18BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 15 Cites 0 Cited by

Patent Information

Application Number
CN202411524899.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-29
Publication Date
2025-02-18
Estimated Expiration
2044-10-29

AI Technical Summary

Technical Problem

During the service operation, there are challenges in fault location, service maintenance and management, especially when the fault occurs, data collection efficiency is low, manual analysis costs are high, and operation and maintenance efficiency is not high.

Method used

By responding to the alarm information sent by the service performance monitoring unit, the fault instance is determined, and the data acquisition path is automatically generated, and the collected operation data is analyzed using a large language model.

Benefits of technology

It improves data acquisition efficiency when a fault occurs, reduces manual analysis costs, and improves operation and maintenance efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119484237A_ABST
    Figure CN119484237A_ABST
Patent Text Reader

Abstract

The invention provides a service performance optimization method and device, electronic equipment, a computer readable storage medium and a computer program product, relates to the field of computers, in particular to the technical field of deep learning, intelligent search and natural language processing, and can be used for application scenes such as generative search, document intelligent editing, intelligent assistants and virtual assistants. According to the implementation scheme, in response to alarm information received from a service performance monitoring unit, a fault instance is determined based on the alarm information; determining port information, used for data acquisition, of the fault instance to obtain a data acquisition path corresponding to the fault instance; acquiring operation data corresponding to the fault instance based on the data acquisition path, wherein the operation data is in a flame pattern form; and inputting the operation data into the big language model to obtain analysis data which is generated by the big language model and aims at the alarm information. And the service performance monitoring unit is used for carrying out performance monitoring on a plurality of instances in the service and triggering an alarm when a fault is monitored.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computers, and in particular to the fields of deep learning, intelligent search, and natural language processing technology, and specifically to a service performance optimization method, device, electronic device, computer-readable storage medium, and computer program product based on a large model. Background Art

[0002] Artificial intelligence is a discipline that studies how to use computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.). It includes both hardware-level and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing. Artificial intelligence software technologies mainly include computer vision technology, speech recognition technology, natural language processing technology, as well as machine learning / deep learning, big data processing technology, knowledge graph technology, and other major directions.

[0003] With the rapid development of Internet technology, user-oriented services are diverse, the architecture supporting service operation is huge, and the interdependencies between sub-services are intricate. During the service operation process, instances may experience slow response, service interruption and other fault problems, which brings challenges to fault location, service maintenance and management. Summary of the invention

[0004] The present disclosure provides a service performance optimization method, device, electronic device, computer-readable storage medium and computer program product based on a big model.

[0005] According to one aspect of the present disclosure, a service performance optimization method is provided, comprising: in response to receiving alarm information from a service performance monitoring unit, determining a fault instance based on the alarm information, wherein the service performance monitoring unit is used to perform performance monitoring on multiple instances in the service and trigger an alarm when a fault is detected; determining port information for data collection of the fault instance to obtain a data collection path corresponding to the fault instance; collecting operating data corresponding to the fault instance based on the data collection path, wherein the operating data is in the form of a flame graph; and inputting the operating data into a large language model to obtain analysis data generated by the large language model for the alarm information.

[0006] According to another aspect of the present disclosure, a service performance optimization device is provided, including: a first determination unit, configured to determine a fault instance based on the alarm information received from a service performance monitoring unit in response to the alarm information, wherein the service performance monitoring unit is used to perform performance monitoring on multiple instances in the service and trigger an alarm when a fault is detected; a second determination unit, configured to determine port information for data collection of the fault instance to obtain a data collection path corresponding to the fault instance; a collection unit, configured to collect operation data corresponding to the fault instance based on the data collection path, wherein the operation data is in the form of a flame graph; and a generation unit, configured to input the operation data into a large language model to obtain analysis data generated by the large language model for the alarm information.

[0007] According to another aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method described in the present disclosure.

[0008] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided. The computer instructions are used to cause a computer to execute the method described in the present disclosure.

[0009] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, which implements the method described in the present disclosure when executed by a processor.

[0010] According to one or more embodiments of the present disclosure, an immediate response can be made after the alarm information is obtained, thereby improving the data collection efficiency when a fault occurs; and, a data collection path is automatically generated, and a large language model is used to analyze the collected operating data, thereby reducing the cost of manual analysis and improving operation and maintenance efficiency.

[0011] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The accompanying drawings exemplarily illustrate the embodiments and constitute a part of the specification, and together with the text description of the specification, are used to explain the exemplary implementation of the embodiments. The embodiments shown are for illustrative purposes only and do not limit the scope of the claims. In all drawings, the same reference numerals refer to similar but not necessarily identical elements.

[0013] Figure 1A schematic diagram showing an exemplary system in which the various methods described herein may be implemented according to an embodiment of the present disclosure;

[0014] Figure 2 A flow chart of a method for optimizing service performance according to an embodiment of the present disclosure is shown;

[0015] Figure 3 A structural block diagram of a service performance optimization device according to an embodiment of the present disclosure is shown; and

[0016] Figure 4 A structural block diagram of an exemplary electronic device that can be used to implement the embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0017] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0018] In the present disclosure, unless otherwise specified, the use of the terms "first", "second", etc. to describe various elements is not intended to limit the positional relationship, timing relationship, or importance relationship of these elements, and such terms are only used to distinguish one element from another element. In some examples, the first element and the second element may refer to the same instance of the element, and in some cases, based on the description of the context, they may also refer to different instances.

[0019] The terms used in the description of various examples in this disclosure are only for the purpose of describing specific examples and are not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element can be one or more. In addition, the term "and / or" used in this disclosure covers any one of the listed items and all possible combinations.

[0020] The embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.

[0021] Figure 1 FIG. 1 is a schematic diagram of an exemplary system 100 in which various methods and apparatuses described herein may be implemented according to an embodiment of the present disclosure. Figure 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. The client devices 101, 102, 103, 104, 105, and 106 may be configured to execute one or more applications.

[0022] In an embodiment of the present disclosure, the server 120 may run one or more services or software applications that enable execution of the method of service exception handling.

[0023] In some embodiments, server 120 may also provide other services or software applications, which may include non-virtualized environments and virtualized environments. In some embodiments, these services may be provided as web-based services or cloud services, such as provided to users of client devices 101, 102, 103, 104, 105, and / or 106 under a software as a service (SaaS) model.

[0024] exist Figure 1 In the configuration shown, the server 120 may include one or more components that implement the functions performed by the server 120. These components may include software components, hardware components, or a combination thereof that can be executed by one or more processors. Users operating client devices 101, 102, 103, 104, 105, and / or 106 may in turn utilize one or more client applications to interact with the server 120 to utilize the services provided by these components. It should be understood that a variety of different system configurations are possible, which may differ from the system 100. Therefore, Figure 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.

[0025] A user may use client devices 101, 102, 103, 104, 105, and / or 106 to input instructions, view analytical data, etc. The client device may provide an interface that enables a user of the client device to interact with the client device. The client device may also output information to the user via the interface. Figure 1 Only six client devices are depicted, but one skilled in the art will appreciate that the present disclosure may support any number of client devices.

[0026] Client devices 101, 102, 103, 104, 105 and / or 106 may include various types of computer devices, such as portable handheld devices, general-purpose computers (such as personal computers and laptop computers), workstation computers, wearable devices, smart screen devices, self-service terminal devices, service robots, game systems, thin clients, various messaging devices, sensors or other sensing devices, etc. These computer devices may run various types and versions of software applications and operating systems, such as MICROSOFT Windows, APPLE iOS, UNIX-like operating systems, Linux or Linux-like operating systems (such as GOOGLE Chrome OS); or include various mobile operating systems, such as MICROSOFT Windows Mobile OS, iOS, Windows Phone, Android. Portable handheld devices may include cellular phones, smart phones, tablet computers, personal digital assistants (PDAs), etc. Wearable devices may include head-mounted displays (such as smart glasses) and other devices. Game systems may include various handheld game devices, Internet-enabled game devices, etc. Client devices are capable of executing various different applications, such as various Internet-related applications, communication applications (such as email applications), short message service (SMS) applications, and may use various communication protocols.

[0027] The network 110 may be any type of network known to those skilled in the art that may support data communications using any of a variety of available protocols, including but not limited to TCP / IP, SNA, IPX, etc. By way of example only, the one or more networks 110 may be a local area network (LAN), an Ethernet-based network, a token ring, a wide area network (WAN), the Internet, a virtual network, a virtual private network (VPN), an intranet, an extranet, a blockchain network, a public switched telephone network (PSTN), an infrared network, a wireless network (e.g., Bluetooth, WIFI), and / or any combination of these and / or other networks.

[0028] Server 120 may include one or more general purpose computers, dedicated server computers (e.g., PC (personal computer) servers, UNIX servers, mid-range servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and / or combination. Server 120 may include one or more virtual machines running virtual operating systems, or other computing architectures involving virtualization (e.g., one or more flexible pools of logical storage devices that may be virtualized to maintain a server's virtual storage device). In various embodiments, server 120 may run one or more services or software applications that provide the functionality described below.

[0029] The computing units in the server 120 may run one or more operating systems including any of the above operating systems and any commercially available server operating systems. The server 120 may also run any of a variety of additional server applications and / or middle-tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, etc.

[0030] In some implementations, server 120 may include one or more applications to analyze and consolidate data feeds and / or event updates received from users of client devices 101, 102, 103, 104, 105, and 106. Server 120 may also include one or more applications to display data feeds and / or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and 106.

[0031] In some embodiments, the server 120 may be a server of a distributed system, or a server combined with a blockchain. The server 120 may also be a cloud server, or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology. A cloud server is a host product in a cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and virtual private servers (VPS) services.

[0032] The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of the databases 130 may be used to store information such as operational data. The databases 130 may reside in various locations. For example, the database used by the server 120 may be local to the server 120, or may be remote from the server 120 and may communicate with the server 120 via a network-based or dedicated connection. The databases 130 may be of different types. In some embodiments, the databases used by the server 120 may be, for example, relational databases. One or more of these databases may store, update, and retrieve data to and from the databases in response to commands.

[0033] In some embodiments, one or more of the databases 130 may also be used by applications to store application data. The databases used by the applications may be different types of databases, such as a key-value store, an object store, or a conventional store backed by a file system.

[0034] Figure 1The system 100 may be configured and operated in various ways to enable the application of various methods and apparatuses described in the present disclosure.

[0035] pprof is a performance profiling tool in the Go language, used to analyze and diagnose performance issues of Go programs. It can help developers understand the program's CPU usage, memory allocation, blocking, goroutine activities, etc., and help find performance bottlenecks and optimization points. The Go language is a statically strongly typed, compiled language. The design goal of the Go language is to combine the security and performance of static languages ​​with the ease of use of dynamic languages. The Go language provides support for coroutines at the language level, which is particularly suitable for writing high-concurrency projects.

[0036] In some scenarios, the search business has multiple Go program memory usage anomalies, resulting in out of memory (OOM) problems, affecting business stability. To solve such problems, it is very helpful to obtain on-site data when the program is abnormal.

[0037] Currently, when the monitoring system finds that the CPU / memory and other resource usage rates of the program are abnormal, manual intervention is usually required to collect pprof files, that is, to collect data related to the problem. This is prone to delayed follow-up and failure to collect data on site, making it more difficult to locate the problem. In addition, after collecting the problem data, manual analysis of the data is required to locate the cause of the problem and provide a corresponding solution. This places high demands on the knowledge reserve and personnel quality of the operation and maintenance personnel, and the labor cost is high.

[0038] Therefore, according to an embodiment of the present disclosure, a service performance optimization method is provided. Figure 2 A flow chart of a method for handling service exceptions according to an embodiment of the present disclosure is shown. Figure 2 As shown, method 200 includes: in response to receiving alarm information from a service performance monitoring unit, determining a fault instance based on the alarm information, wherein the service performance monitoring unit is used to perform performance monitoring on multiple instances in the service and trigger an alarm when a fault is detected (step 210); determining port information for data collection of the fault instance to obtain a data collection path corresponding to the fault instance (step 220); collecting operating data corresponding to the fault instance based on the data collection path, wherein the operating data is in the form of a flame graph (step 230); and inputting the operating data into a large language model to obtain analysis data generated by the large language model for the alarm information (step 240).

[0039] According to the embodiments of the present disclosure, an immediate response can be made after the alarm information is obtained, thereby improving the data collection efficiency when a fault occurs; and, a data collection path is automatically generated, and a large language model is used to analyze the collected operating data, thereby reducing the cost of manual analysis and improving operation and maintenance efficiency.

[0040] In the present disclosure, the service performance monitoring unit may be any suitable monitoring unit or system, for example, it may be configured to monitor the utilization of resources such as CPU and memory and issue an alarm message when an abnormality is detected.

[0041] In the present disclosure, a service may be an independent physical server that is provided and that users may configure and manage as needed. The service may provide a variety of operating systems and software environments that users may choose from according to their needs. It may also be an abstract software component that encapsulates a series of functions that are provided externally through well-defined interfaces so that other software components (such as clients, other services, etc.) can access and use them.

[0042] An instance is a specific implementation or copy of a service. An instance is a specific implementation of a service that provides the functionality defined by the service and communicates with other instances or clients through a network interface. In object-oriented programming, an instance usually refers to an object created by a class; in a distributed system, an instance may refer to the running entity of a service. In a distributed system, services are usually deployed in the form of multiple instances to achieve high availability and load balancing. For example, a microservice may run in the form of multiple instances on multiple servers to handle requests from clients.

[0043] In the embodiment of performance analysis based on the pprof tool as described above, the CPU and memory usage of the program can be analyzed by the pprof tool. In the field of performance analysis, profiling refers to the profile of an application, that is, the situation in which the application uses the CPU and memory, etc. When using the pprof tool, data can be sampled by turning on CPU performance analysis or memory performance analysis. First, use the pprof tool to load and analyze the exported profile file. This can be achieved through the command line, for example: pprof [binary] [profile], where [binary] is the binary file of the program, and [profile] is the profile file exported by the pprof tool.

[0044] After the pprof tool exports a profile file, it can be converted into a flame graph through a series of steps to more intuitively analyze the performance bottlenecks of the program. This can be achieved through the command line, for example: go toolpprof-svg cpu.pprof>cpu_flamegraph.svg (usually in SVG format). The generated flame graph file can be opened in a browser for interactive analysis and viewing.

[0045] Therefore, in some examples, the pprof tool can be used to manage and access services that need performance analysis, including the collection port and alarm strategy corresponding to the service. Then, when an alarm message is received from the service performance monitoring unit, the alarm message is parsed. The pprof tool provides an interactive interface in which you can view the function call relationship, CPU and memory usage, etc.

[0046] According to some embodiments, determining the port information used for data collection of the fault instance to obtain the data collection path corresponding to the fault instance includes: determining whether the instance of the service currently running data collection has reached a preset threshold; and in response to determining that the preset threshold has not been reached, determining the port information used for data collection of the fault instance to obtain the data collection path corresponding to the fault instance.

[0047] For example, it is determined whether the frequency control limit of data collection through the pprof tool is reached, for example, a maximum of N (N is a positive integer) instances are allowed to collect data simultaneously to prevent pressure on the service caused by large-scale data collection.

[0048] According to some embodiments, determining the port information of the fault instance for data collection to obtain the data collection path corresponding to the fault instance includes: obtaining the port information of the fault instance for data collection based on a preset mapping table, wherein the preset mapping table is used to characterize the correspondence between the corresponding instance and the port information; and generating the data collection path based on a preset template and the port information.

[0049] For example, as described above, if the frequency control limit is not reached, the port information of the fault instance for data collection, such as the IP address, is obtained based on the preset mapping table. Then, based on the port information and the preset template, automatic splicing is performed to generate a data collection path, such as a URL, for the pprof tool to collect data. The pprof tool is triggered to collect data and the obtained profile file is further converted into a flame graph for storage, so as to be analyzed by the subsequent large language model.

[0050] According to some embodiments, inputting the operating data into a large language model to obtain analysis data generated by the large language model for the alarm information includes: inputting the operating data and at least one preset instruction into the large language model to obtain the analysis data generated by the large language model, wherein the at least one preset instruction is used to guide the generation process of the analysis data.

[0051] In some embodiments, the preset instructions may be, for example, instructions for initiating the analysis data generation process, for example, for generating the analysis data in a specific form (eg, in a list or table form).

[0052] Therefore, after obtaining the operating data, at least one preset instruction (prompt) can be further introduced in the process of generating analysis data to guide the model to generate analysis content that better meets user expectations based on the operating data, improve the generation quality of the analysis content, and enhance the user experience.

[0053] For example, the preset instructions may be "Please answer the questions in Chinese, and do not generate contradictory or semantically repetitive answers, and try to keep the answer content within 250 words", "Please try to use line breaks, "-" and other formats or symbols to organize the answers to make the answers easy to read and understand."

[0054] According to some embodiments, the at least one preset instruction includes a first preset instruction, the first preset instruction is used to indicate that the operation data is a flame graph, wherein the flame graph is a vector graph in SVG format data. Thus, it is convenient for the large language model to accurately understand the obtained operation data, so as to generate analysis data more reasonably.

[0055] According to some embodiments, the analysis data includes performance bottlenecks of the service and optimization suggestions corresponding to the performance bottlenecks.

[0056] At this time, the preset instruction (prompt) may be, for example, "This is a flame graph of a service. Please analyze the performance bottleneck and provide optimization suggestions."

[0057] For example, the performance bottleneck points may be: .*net.(UDPConn).ReadFrom (23.53%), reading UDP data; .*net.(UDPConn).WriteTo (17.65%), sending data to UDP; runtime.futex (11.76%), used for thread synchronization and locking.

[0058] For example, the optimization suggestions may include: optimizing UDP read and write operations, considering using a more efficient UDP library or optimizing data structures; reducing thread synchronization, checking whether the reliance on futex can be reduced, such as by using lock-free data structures or other concurrency mechanisms; checking the socket configuration, ensuring that the socket configuration (such as buffer size and number of connections) is suitable for the needs of the application; considering non-blocking I / O, using non-blocking I / O may help improve throughput; analyzing other parts of the program, these bottleneck points may be caused by problems in other parts of the program, such as memory allocation or garbage collection.

[0059] According to some embodiments, the large language model is obtained by training based on at least knowledge resources and dialogue data of a preset scale.

[0060] In some embodiments, a large language model can be a knowledge-enhanced large language model (such as ERNIEbot, etc.) used for conversations. The large language model is trained through massive knowledge resources and conversation data (for example, more than trillions of web page data, billions of search data, hundreds of millions of image data, billions of voice request data per day, more than 50 billion text request data, and more than 550 billion factual knowledge).

[0061] Therefore, by applying this type of model as a large language model, in addition to directly processing small talk conversation information, it can also directly generate reply information for logical reasoning, common sense, and image generation conversation information, which can further improve the generation efficiency while generating higher quality reply information.

[0062] According to the embodiments of the present disclosure, Figure 3 As shown, a service performance optimization device 300 is also provided, including: a first determination unit 310, configured to determine a fault instance based on the alarm information received from a service performance monitoring unit in response to the alarm information, wherein the service performance monitoring unit is used to monitor the performance of multiple instances in the service and trigger an alarm when a fault is detected; a second determination unit 320, configured to determine the port information for data collection of the fault instance to obtain a data collection path corresponding to the fault instance; a collection unit 330, configured to collect operation data corresponding to the fault instance based on the data collection path, wherein the operation data is in the form of a flame graph; and a generation unit 340, configured to input the operation data into a large language model to obtain analysis data generated by the large language model for the alarm information.

[0063] According to some embodiments, the second determination unit includes: a unit for determining whether the instance of the service currently running data collection has reached a preset threshold; and a unit for determining, in response to determining that the preset threshold has not been reached, the port information used for data collection of the fault instance to obtain the data collection path corresponding to the fault instance.

[0064] According to some embodiments, the second determination unit includes: a unit for obtaining the port information of the fault instance used for data collection based on a preset mapping table, wherein the preset mapping table is used to characterize the correspondence between the corresponding instance and the port information; and a unit for generating the data collection path based on a preset template and the port information.

[0065] According to some embodiments, the generating unit includes: a unit for inputting the operating data and at least one preset instruction into the large language model to obtain the analysis data generated by the large language model, wherein the at least one preset instruction is used to guide the generation process of the analysis data.

[0066] According to some embodiments, the at least one preset instruction includes a first preset instruction, and the first preset instruction is used to indicate that the operation data is a flame graph, wherein the flame graph is a vector graph in SVG format data.

[0067] According to some embodiments, the analysis data includes performance bottlenecks of the service and optimization suggestions corresponding to the performance bottlenecks.

[0068] Here, the operations of the above-mentioned units 310-340 of the service performance optimization device 300 are similar to the operations of the steps 210-240 described above, and will not be repeated here.

[0069] In the technical solution of the present disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0070] According to an embodiment of the present disclosure, an electronic device, a readable storage medium and a computer program product are also provided.

[0071] refer to Figure 4, a block diagram of an electronic device 400 that can be used as a server or client of the present disclosure will now be described, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0072] like Figure 4 As shown, the electronic device 400 includes a computing unit 401, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 402 or a computer program loaded from a storage unit 408 into a random access memory (RAM) 403. In the RAM 403, various programs and data required for the operation of the electronic device 400 can also be stored. The computing unit 401, the ROM 402, and the RAM 403 are connected to each other via a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.

[0073] Multiple components in the electronic device 400 are connected to the I / O interface 405, including: an input unit 406, an output unit 407, a storage unit 408, and a communication unit 409. The input unit 406 can be any type of device that can input information to the electronic device 400. The input unit 406 can receive input digital or character information and generate key signal input related to user settings and / or function control of the electronic device, and can include but is not limited to a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and / or a remote controller. The output unit 407 can be any type of device that can present information, and can include but is not limited to a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The storage unit 408 can include but is not limited to a disk, an optical disk. The communication unit 409 allows the electronic device 400 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and can include but is not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver, and / or a chipset, such as a Bluetooth device, an 802.11 device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.

[0074] The computing unit 401 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 401 performs the various methods and processes described above, such as method 200. For example, in some embodiments, the method 200 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 408. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 400 via ROM 402 and / or communication unit 409. When the computer program is loaded into RAM 403 and executed by the computing unit 401, one or more steps of the method 200 described above may be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to perform the method 200 in any other appropriate manner (e.g., by means of firmware).

[0075] Various implementations 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 chips (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0076] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

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

[0078] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the 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 acoustic input, voice input, or tactile input).

[0079] The systems and techniques described herein can be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), the Internet, and a blockchain network.

[0080] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship of client and server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server combined with a blockchain.

[0081] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0082] Although the embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above-mentioned methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but only by the claims after authorization and their equivalent scope. Various elements in the embodiments or examples can be omitted or replaced by their equivalent elements. In addition, each step can be performed in an order different from that described in the present disclosure. Further, the various elements in the embodiments or examples can be combined in various ways. It is important that with the evolution of technology, many elements described herein can be replaced by equivalent elements that appear after the present disclosure.

Claims

1. A service performance optimization method, comprising: In response to receiving an alarm message from a service performance monitoring unit, determining a fault instance based on the alarm message, wherein the service performance monitoring unit is used to monitor the performance of multiple instances in the service and trigger an alarm when a fault is detected; Determine the port information for data collection of the fault instance to obtain the data collection path corresponding to the fault instance; Collecting operation data corresponding to the fault instance based on the data collection path, wherein the operation data is in the form of a flame graph; and The operation data is input into a large language model to obtain analysis data for the alarm information generated by the large language model.

2. The method of claim 1, wherein: Determining the port information for data collection of the fault instance to obtain the data collection path corresponding to the fault instance includes: Determining whether the instance of the service currently collecting running data has reached a preset threshold; and In response to determining that the preset threshold is not reached, port information for data collection of the fault instance is determined to obtain a data collection path corresponding to the fault instance.

3. The method according to claim 1 or 2, wherein: Determining the port information for data collection of the fault instance to obtain the data collection path corresponding to the fault instance includes: Obtaining port information of the fault instance for data collection based on a preset mapping table, wherein the preset mapping table is used to characterize the correspondence between the corresponding instance and the port information; and The data collection path is generated based on a preset template and the port information.

4. The method of claim 1, wherein: Inputting the operation data into a large language model to obtain analysis data generated by the large language model for the alarm information includes: The operation data and at least one preset instruction are input into the large language model to obtain the analysis data generated by the large language model, wherein the at least one preset instruction is used to guide the generation process of the analysis data.

5. The method of claim 4, wherein: The at least one preset instruction includes a first preset instruction, and the first preset instruction is used to indicate that the operation data is a flame graph, wherein the flame graph is a vector graph in SVG format data.

6. The method of claim 1, wherein: The analysis data includes performance bottlenecks of the service and optimization suggestions corresponding to the performance bottlenecks.

7. A service performance optimization device, comprising: a first determining unit configured to, in response to receiving alarm information from a service performance monitoring unit, determine a fault instance based on the alarm information, wherein the service performance monitoring unit is used to monitor the performance of multiple instances in the service and trigger an alarm when a fault is detected; A second determining unit is configured to determine port information for data collection of the fault instance to obtain a data collection path corresponding to the fault instance; a collection unit configured to collect operation data corresponding to the fault instance based on the data collection path, wherein the operation data is in the form of a flame graph; and The generating unit is configured to input the operating data into a large language model to obtain analysis data for the alarm information generated by the large language model.

8. The device according to claim 7, wherein: The second determining unit includes: a unit for determining whether the instance of the service currently collecting running data has reached a preset threshold; and A unit for determining, in response to determining that the preset threshold is not reached, port information for data collection of the fault instance to obtain a data collection path corresponding to the fault instance.

9. The device according to claim 7 or 8, wherein: The second determining unit includes: a unit for obtaining port information of the fault instance for data collection based on a preset mapping table, wherein the preset mapping table is used to characterize the correspondence between the corresponding instance and the port information; and A unit for generating the data acquisition path based on a preset template and the port information.

10. The device according to claim 7, wherein: The generating unit comprises: A unit for inputting the operating data and at least one preset instruction into the large language model to obtain the analysis data generated by the large language model, wherein the at least one preset instruction is used to guide the generation process of the analysis data.

11. The device of claim 10, wherein: The at least one preset instruction includes a first preset instruction, and the first preset instruction is used to indicate that the operation data is a flame graph, wherein the flame graph is a vector graph in SVG format data.

12. The device of claim 7, wherein: The analysis data includes performance bottlenecks of the service and optimization suggestions corresponding to the performance bottlenecks.

13. An electronic device, comprising: at least one processor; as well as a memory communicatively coupled to the at least one processor; in The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 6.

14. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-6.

15. A computer program product comprising a computer program, wherein: When the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Fault processing method and device, electronic equipment and medium

    CN113656207A

  • Probe-based application relationship intelligent construction method, metadata acquisition method, medium and system

    CN117033125A

  • Power grid edge cluster monitoring method based on cloud edge fusion intelligent scheduling operation platform

    CN117437083A

  • Service operation abnormity reason detection method and device, equipment and storage medium

    CN117762678A

  • Alarm solution generation method and computer equipment

    CN117852548A