Method, electronic device, and computer-readable medium for managing a microservice architecture system
By using a graphical user interface to display nodes and connection relationships in the microservice architecture system, dynamically updating the topology map and supporting node status viewing and configuration management, the problem of microservice architecture management complexity is solved and the flexibility and maintainability of the system are achieved.
Patent Information
- Application Number
- CN202010803362.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-08-11
- Publication Date
- 2025-09-19
- Estimated Expiration
- 2040-08-11
AI Technical Summary
The existing monolithic service architecture suffers from poor flexibility, resource waste, and complex management during enterprise business expansion and maintenance. Although the microservice architecture enhances availability and scalability, it is more complex to manage.
Provides a method for managing microservice architecture, displays the nodes and connection relationships in the system through a graphical user interface, dynamically updates the topology map, supports operations such as node status viewing, configuration management, and weight allocation, and simplifies system management.
It enables intuitive management of microservice architecture systems, reduces administrator manual operations, improves system maintainability and flexibility, and supports dynamic adjustment and fault detection.
Smart Images

Figure CN114077501B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a method, an electronic device, and a computer-readable medium for managing a microservice architecture system. Background Art
[0002] In the computer software field, traditional applications utilize a monolithic service architecture, packaging all functional modules together and running them in a single container. However, this monolithic architecture has limitations. Specifically, as business needs evolve and functionality is added, monolithic applications can become complex, inflexible, and increasingly difficult to maintain and update. Furthermore, if an enterprise already has multiple monolithic applications, these applications can duplicate and waste resources, making them difficult to connect with one another. Furthermore, as an enterprise's business grows, services need to be divided and provided according to business domains. Based on these considerations, the microservices architecture was proposed. The microservices architecture splits a monolithic application into multiple, highly cohesive, and loosely coupled microservices, each operating independently and being developed, deployed, and maintained separately. Services communicate with each other using interfaces. Consequently, the microservices architecture enhances availability and scalability, reducing the impact of individual microservice adjustments on the entire platform. However, managing applications with a microservices architecture can be more complex, leading to a need for a system to manage these applications. Summary of the Invention
[0003] The present disclosure provides a method, system, and computer-readable medium for managing a microservice architecture system.
[0004] According to an exemplary embodiment of the present disclosure, a method for managing a system with a microservice architecture is provided, comprising: at an electronic device having a display, one or more processors and a memory: determining, based on information about links through which requests for one or more application program interfaces (APIs) from clients received by the system pass, respective nodes called in the system and connection relationships between the respective called nodes corresponding to the links, wherein the application program interfaces are provided by microservices deployed on the nodes; and displaying a graphical user interface on the display, the graphical user interface including a graphical representation of the called nodes in the system and a graphical representation of the connection relationships between the called nodes.
[0005] According to another exemplary embodiment of the present disclosure, an electronic system is provided, comprising: a memory configured to store a series of computer-executable instructions; and a processor configured to execute the series of computer-executable instructions, wherein the series of computer-executable instructions, when executed by the processor, causes the processor to perform the steps of the method according to an embodiment of the present disclosure.
[0006] According to an exemplary embodiment of the present disclosure, a non-transitory computer-readable medium having instructions stored thereon is provided. When the instructions are executed by a processor, the processor performs the steps of the method according to an embodiment of the present disclosure.
[0007] The further applicability of the present disclosure will become apparent from the detailed description given below. However, it should be understood that the detailed description and specific examples, while indicating preferred embodiments of the present disclosure, are given by way of illustration only, as various changes and modifications within the spirit and scope of the present disclosure will be apparent to those skilled in the art. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] The above and other aspects and advantages of the present invention will become apparent from the following detailed description of exemplary embodiments taken in conjunction with the accompanying drawings, which illustrate, by way of example, the principles of the present invention. Note that the drawings are not necessarily drawn to scale.
[0009] Figure 1 A schematic diagram illustrating a system of a microservice architecture according to an exemplary embodiment of the present disclosure is shown.
[0010] Figure 2 is a flowchart illustrating a method for managing a system of a microservice architecture according to an embodiment of the present disclosure.
[0011] Figure 3 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0012] Figure 4 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0013] Figure 5 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0014] Figure 6 is a flowchart illustrating a method for managing a system of a microservice architecture according to an embodiment of the present disclosure.
[0015] Figure 7 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0016] Figure 8 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0017] Figure 9 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0018] Figure 10is a flowchart illustrating a method for managing a system of a microservice architecture according to an embodiment of the present disclosure.
[0019] Figure 11 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0020] Figure 12 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0021] Figure 13 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0022] Figure 14 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0023] Figure 15 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0024] Figure 16 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0025] Figure 17 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure.
[0026] Figure 18 is a schematic diagram of an electronic device according to an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION
[0027] In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the described exemplary embodiments. However, it will be apparent to one skilled in the art that the described embodiments may be practiced without some or all of these specific details. In other exemplary embodiments, well-known structures or processing steps are not described in detail to avoid unnecessarily obscuring the concepts of the present disclosure.
[0028] Figure 1 FIG. 1 shows a schematic diagram of a system of a microservice architecture according to an exemplary embodiment of the present disclosure. Figure 1 As shown, in the microservice architecture system 100 , there are application program interface (API) gateway nodes 101 - 102 , microservice nodes 103 - 106 , a database node 107 , a microservice discovery and management node 108 , and a network firewall 109 .
[0029] API gateway nodes 101-102 are used to provide a unified service entry for all microservices in system 100, making the microservices transparent to the outside world. Furthermore, API gateway nodes 101-102 can also perform load balancing and service traffic diversion for multiple nodes providing the same microservice, and provide management functions such as security, filtering, and traffic control. The figure shows two API gateway nodes 101 and 102, but those skilled in the art will appreciate that there can be one or more API gateway nodes. Microservices are deployed on microservice nodes 103-106 and provide corresponding APIs. Microservice nodes 103-106 can be microservice instances deployed on a single or multiple physical or virtual hosts, or they can be microservice instances deployed in corresponding containers. Container technologies include, for example, Docker and Solaris Zone technologies. In the embodiments of the present disclosure, each microservice node deploys a microservice, and each microservice can have one or more APIs. Those skilled in the art will appreciate that, depending on the number of microservices deployed in the system and the number of replicas of each microservice, the number of microservice nodes can range from a few to dozens, or even hundreds.
[0030] exist Figure 1 In the example, assume that the same microservice is deployed on microservice node 103 and microservice node 104, that is, they serve as backups for each other. Assume that the microservices on both microservice nodes 103 and 104 are Microservice 1, and their application programming interfaces are both API 1. Furthermore, assume that the microservices deployed on microservice nodes 105 and 106 are different from each other and from the microservices deployed on microservice nodes 103 and 104. Assume that the microservices on microservice nodes 105 and 106 are Microservice 2 and Microservice 3, respectively, and their application programming interfaces are API 2 and API 3, respectively.
[0031] The database node 107 provides data support for the microservice nodes 103-106. The database node 107 can use a Redis database, a MySQL database, etc. In one embodiment of the present disclosure, multiple microservice nodes share a database. In another embodiment of the present disclosure, each microservice node has a corresponding database, so Figure 1The database node 107 shown in can be split and merged into each microservice node, and the database of each microservice node is isolated from each other. The microservice discovery and management node 108 is configured to discover, configure and manage microservice nodes 103-106. The microservice discovery and management node 108 can discover newly added microservice nodes in the system 10, record the ID and API identifier of the microservice deployed on the node, record the operating status of the microservice node, and manage the online and offline of the microservice deployed on the node. Specific examples of the microservice discovery and management node 108 include, for example, Nacos and Eureka. The network firewall 109 is used to protect the network from attacks. Examples of the network firewall 109 include Web Application Firewall (WAF) and the like. In addition, outside the system 10 of the microservice architecture (front end), there is also a client 10. The client 10 can be an application running on a computer, mobile terminal, etc., including a network platform site, software on a computer, mobile app, etc. Figure 1 Three clients are shown in FIG. , which have ID1 , ID2 and ID3 as identifications respectively.
[0032] exist Figure 1 When the microservice architecture system 100 shown in FIG is in operation, the API gateway node 101 receives requests for one or more application programming interfaces (APIs) from clients 10 outside the system 100. Based on the microservice ID and API identifier carried in the received request, the API gateway node 101 sends the request to the corresponding microservice node. After receiving the request, the API of the microservice node processes the request and returns the data.
[0033] from Figure 1 As can be seen from the figure, the system 100 of the microservice architecture is relatively complex, so a simple and intuitive method for managing the system of the microservice architecture is needed.
[0034] Figure 2 2 is a flowchart illustrating a method 200 for managing a system of a microservice architecture according to an embodiment of the present disclosure. The method is implemented at an electronic device having a display, one or more processors, and a memory. The electronic device is an example of a hardware device that can be applied to various aspects of the present disclosure, and can be any machine configured to perform processing and / or computing, including but not limited to a workstation, server, desktop computer, laptop computer, tablet computer, personal data assistant, smart phone, vehicle-mounted computer, or any combination thereof. The general structure of the electronic device will be described later in conjunction with Figure 18 Provide explanation.
[0035] like Figure 2As shown, at step S201, based on information about the links along which requests for one or more application program interfaces (APIs) received from clients are routed, the system determines the nodes being called and the connection relationships between the nodes corresponding to the links. As described above, the APIs are provided by microservices deployed on the nodes.
[0036] Thereafter, at step S202 , a graphical user interface is displayed on a display, wherein the graphical user interface includes a graphical representation of the called nodes in the system and a graphical representation of the connection relationship between the called nodes.
[0037] Through the above steps, the graphical representation of the nodes called by the request for the application program interface in the system 10 of the microservice architecture and the graphical representation of the connection relationship between the called nodes can be displayed in the graphical user interface. Thus, the diagram displayed in the graphical user interface includes the graphical representation of the nodes and the graphical representation of the connection relationship between the nodes, and can be called a system topology diagram. Therefore, a topology diagram of the system of the microservice architecture can be obtained, which helps the administrator to intuitively manage and view the called nodes. In addition, when the nodes in the system or the microservices deployed on the nodes change, the topology diagram of the system of the microservice architecture can be directly updated based on the information of the link through which the request for the API passes, without the administrator having to perform any manual operation.
[0038] Figure 3 is a schematic diagram of a graphical user interface on a display according to an embodiment of the present disclosure. Figure 3 As shown, the graphical user interface displays graphical representations of application program interface (API) gateway nodes 101-102, microservice nodes 103-106, database node 107, microservice discovery and management node 108, and network firewall 109. In this embodiment, the graphical representation of the nodes in the system is an icon corresponding to the type of node. The icon of each node is carefully designed by the inventor based on the type of node, and the effect is intuitive and beautiful. In addition, the graphical representation of the nodes in the system can also include explanatory text to explain the information of the node, such as IP address, node type, etc. For the sake of clarity, these explanatory texts are not provided in the figure. Figure 3 In the example, the configuration of microservice nodes 103-106 is the same as Figure 1 . That is, assume that the microservices on microservice nodes 103 and 104 are both microservice 1, and their application programming interfaces are both API 1. Furthermore, the microservices on microservice nodes 105 and 106 are microservice 2 and microservice 3, respectively, and their application programming interfaces are API 2 and API 3, respectively.
[0039] exist Figure 3 In the topology diagram of the system shown in FIG, the client from the outside (front end) of the system 10 ( Figure 3 1, API 2, and API 3) enter the system 10 respectively. The requests received by the system 10 carry the identifiers of the requested APIs (i.e., API 1, API 2, and API 3) and the IDs of the corresponding microservices (i.e., microservice 1, microservice 2, and microservice 3). After passing through the network firewall 109, these requests reach the API gateway nodes 101 and 102. At the API gateway nodes 101 and 102, the IDs of the microservices and the APIs carried in the requests are analyzed, and the corresponding requests are sent to the application program interfaces of the corresponding microservice nodes. When necessary, the API gateway nodes 101 and 102 can communicate with the microservice discovery and management node 108 to obtain the available microservice nodes and addresses in the microservice architecture system 10, as well as the corresponding microservice IDs and API identifiers, so that requests for the APIs can be sent correctly. In addition, when the same microservice is deployed on multiple microservice nodes, the API gateway nodes 101 and 102 can perform load balancing, service diversion, and other controls between these microservice nodes. Specifically, requests for API 1 are sent by API gateway nodes 101 and 102 to microservice nodes 103 and 104 with API 1. Requests for API 2 are sent by API gateway nodes 101 and 102 to microservice node 105 with API 2. And requests for API 3 are sent by API gateway nodes 101 and 102 to microservice node 106 with API 3. Furthermore, microservice nodes 103-106 can communicate with database node 107 to obtain required data. Furthermore, microservice nodes 103-106 can communicate with microservice discovery and management node 108, allowing microservice discovery and management node 108 to learn the IDs of the microservices deployed on the microservice nodes, the identities of the APIs, and the current status of the microservice nodes.
[0040] According to the link of the API request from the client, the nodes called during the request processing and the connection relationship between the nodes can be determined. Figure 3The illustrated user interface shows a graphical representation of application program interface (API) gateway nodes 101-102, microservice nodes 103-106, database node 107, microservice discovery and management node 108, and network firewall 109, as well as the connections between these nodes. Note that microservice discovery and management node 108, as an important infrastructure of system 10, can communicate with each API gateway node and each microservice node during the request processing process. To avoid making the topology diagram in the graphical user interface too complicated, the connection relationship between microservice discovery and management node 108 and other nodes is omitted.
[0041] In the above embodiment, since the displayed nodes are determined based on the information about the links through which the client request passes, only the nodes that have received the request are displayed in the user interface. Therefore, the system topology can be dynamically updated, and unused nodes can be hidden. This prevents the system topology from becoming overly complex, and only provides the administrator with the required information.
[0042] In an embodiment according to the present disclosure, the graphical user interface only includes graphical representations of nodes that are called within a predetermined time period and graphical representations of connection relationships between the called nodes. That is, in this embodiment, graphical representations of nodes that are not called within the predetermined time period and graphical representations of connection relationships associated with the nodes will not be displayed. Therefore, in this embodiment, even if a node is called before the predetermined time period and the graphical representation of the node and the graphical representation of the connection relationship associated with the node are displayed, if the node is not called within the predetermined time period, the graphical representation of the node and the graphical representation of the connection relationship associated with the node can be removed from the graphical interface. Thus, nodes that are not called can be dynamically deleted, thereby updating the topology diagram of the system.
[0043] In an embodiment of the present disclosure, the called node is associated with multiple application program interfaces. In other words, when a client issues a request to multiple application program interfaces, all microservice nodes with these multiple application program interfaces will be called. Figure 1As shown, the microservice nodes associated with API 1, API 2, and API 3 are called and displayed. Therefore, the topology diagram of the system on the obtained graphical interface includes a topology diagram of the processing process of the entire system for multiple application interfaces, and is not limited to the topology diagram for a certain application interface. Therefore, according to the embodiment of the present disclosure, a global topology diagram of the system can be obtained. As a result, the administrator of the system can grasp the global topology of the system, which helps him manage the system. In addition, those skilled in the art will understand that when a microservice node includes multiple application interfaces, the client may issue requests to multiple application interfaces of a microservice node. In this case, only one microservice node may be displayed in the topology diagram of the system, and this system topology diagram still belongs to the global topology diagram.
[0044] In addition, if Figure 2 As shown, in the embodiment of the present disclosure, after step S202, step S203 may be further included. Since step S203 is optional, Figure 2 Shown as a dotted box.
[0045] In step S203, in response to a first user input on the graphical user interface for selecting any node in the system, a representation of the current state of the selected node is displayed. The first user input may be, for example, a user clicking or touching the graphical representation of any node on the user interface, or a user holding an input device indicator (e.g., a mouse pointer) over the graphical representation of any node for a predetermined period of time.
[0046] Figure 4 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 4 As shown, in response to a first user input selecting a microservice node 103 , a representation 401 of the current state of the selected node may be displayed on the right side of the graphical user interface. Figure 4 The current state of a node is illustrated using the identifier of the microservice deployed on microservice node 103 (microservice 1), the number of successful node calls (1000 times), and the number of failed node calls (0 times) as examples. These values can be obtained within a predetermined time period (e.g., 24 hours). In addition, the current state of a node may also include at least one of the current load of the node and the users served by the node, and those skilled in the art can set these values as needed.
[0047] According to this embodiment, the system administrator can obtain the current status of each node through simple operations.
[0048] In addition, if Figure 2 As shown, in the embodiment of the present disclosure, Figure 2The method 200 shown in FIG. 2 may further include steps S204-S205. Since steps S204-S205 are optional, Figure 2 Shown as a dotted box.
[0049] In step S204, in response to a second user input on the graphical user interface for selecting a node in the system, a representation of the configurable properties of the node is displayed. The second user input may be, for example, an administrator right-clicking on the graphical representation of the node, or clicking Figure 4 401 of the current state of the node shown in the figure. The configurable properties of the node include, for example, the online and offline of the microservices deployed on the node, and the representation of the configurable properties of the node may include an icon and / or button indicating the online or offline of the microservice. Afterwards, if a third user input is received for the representation of the configurable properties of the node on the graphical user interface, the properties of the node are changed in response to the third user input in step S205. The third user input is, for example, clicking on the representation of the current state of the node and clicking on the representation of the configurable properties of the node (for example, an icon indicating the online or offline of the microservice), and in response to the third input, the properties of the node are changed (for example, the node is online or offline).
[0050] like Figure 5 As shown, a button 501 is shown as an icon for taking a microservice offline. When the administrator wishes to take the microservice 1 on the microservice node 103 offline, the administrator can click or touch the offline button to complete the operation.
[0051] According to this embodiment, the system administrator can manage the configurable properties of each node through simple operations.
[0052] Next, refer to Figure 6 , Figure 6 is a flowchart of a method 200 for managing a system of a microservice architecture, and is Figure 2 Continuation of the flowchart shown.
[0053] like Figure 6 As shown, in Figure 2 and Figure 6 The method 200 shown in FIG. 2 may further include steps S206-S207. Since steps S206-S207 are optional, Figure 6 Shown as a dotted box.
[0054] In step S206, in response to a fourth user input corresponding to any microservice on the graphical user interface, a list of nodes where the microservice is deployed and the weight of the request assigned to each node in the list are displayed on the graphical user interface. The fourth user input corresponding to any microservice can be, for example, a user searching for any microservice in the search bar of the graphical user interface or selecting any microservice in a drop-down menu. The weight of the request assigned to each node can be represented by a weight value or the proportion of the weight of each node in the donut chart. Thereafter, if a fifth user input is received on the graphical user interface regarding the weight of the request assigned to any node, then in step S207, the weight of the request assigned to the node is changed in response to the fifth user input. The fifth user input can be, for example, directly modifying the value of the weight of the request assigned to each displayed node or dragging a slider representing the weight of the request assigned to each node.
[0055] Figure 7 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 7 As shown, a search bar 701 is shown. When the user searches for microservice 1 in the search bar 701 (the fourth user input), a list of microservice nodes where microservice 1 is deployed (i.e., microservice node 103 and microservice node 104) and the weights assigned to each node are displayed in a box 702 on the right side of the user interface. Figure 7 As shown, microservice node 103 and microservice node 104 are both assigned a weight of 50%. The ring diagram above box 702 more intuitively shows the weights assigned to microservice node 103 and microservice node 104. Afterwards, when the administrator selects and modifies the numerical value of the weight of the request assigned to each node (fifth user input), the weights assigned to each node can be changed. As an example, when a microservice is deployed on multiple microservice nodes, the sum of the weights of these microservice nodes can be 100%. In addition, the weight of a microservice node can be set to 0%, and in this case, the microservice node will not receive any requests. By setting the weight of a microservice node to 0%, it is possible to easily update the service node. In addition, by changing the weight of each node, a small number of requests can be directed to the microservice node after a microservice node is upgraded to perform post-upgrade testing. According to this embodiment, the administrator of the system can change the weight of each node deployed with the same microservice when processing requests to the API through simple operations.
[0056] like Figure 6 As shown, in Figure 2 and Figure 6 The method 200 shown in FIG. 2 may further include steps S208-S209. Since steps S208-S209 are optional, Figure 6Shown as a dotted box.
[0057] In step S208, in response to a sixth user input corresponding to any microservice on the graphical user interface, a list of nodes where the microservice is deployed and a list of clients assigned to each node in the list are displayed on the graphical user interface. The sixth user input corresponding to any microservice may, for example, be a user searching for any microservice in the search bar of the graphical user interface or selecting any microservice in a drop-down menu. Thereafter, if a seventh user input is received on the graphical user interface for a list of clients assigned to any node, then in step S209, the client assigned to the node is changed in response to the seventh user input. The seventh user input may, for example, be checking or unchecking a checkbox corresponding to a client or entering or deleting a client ID in the client list.
[0058] Figure 8 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 8 As shown, Figure 7 Similarly, a search bar 801 is shown. When the user searches for microservice 1 in the search bar 801 (the sixth user input), a list of microservice nodes where microservice 1 is deployed (i.e., microservice node 103 and microservice node 104) and a list of clients assigned to each node in the list (i.e., client ID1, client ID2, and client ID3) are displayed in a box 802 on the right side of the user interface. Figure 8 As shown, client ID1, client ID2, and client ID3 all make requests to API 1 of microservice 1 deployed on microservice node 103 and microservice node 104. Figure 8As an example, microservice node 103 is assigned client ID 1 and client ID 3, while microservice node 104 is assigned client ID 1 and client ID 2. Subsequently, when an administrator checks or unchecks the checkboxes corresponding to the clients (the seventh user input), the clients assigned to each microservice node can be changed. Specifically, a client with a checked checkbox indicates that its requests will be assigned to the corresponding microservice node. Conversely, a client with an unchecked checkbox indicates that its requests will not be assigned to the corresponding microservice node. Thus, for example, if microservice nodes 103 and 104 have different performance, nodes with different performance can be provided to different users, improving the user experience. Furthermore, when no clients under a microservice node are checked, the microservice node will not receive requests from clients, and the weight of the microservice node will be set to 0%, making it easier to update the service node. Furthermore, by changing the weight of each node based on the user, specific users can be directed to the microservice node after the upgrade to conduct post-upgrade testing. In addition, if the checkbox corresponding to a client is not checked under any of the listed microservice nodes, the client's request will not be distributed to all microservice nodes where microservice 1 is deployed. Therefore, an effect similar to client permission control can be achieved.
[0059] According to this embodiment, the system administrator can change the weight of each node deployed with the same microservice when processing API requests for users through simple operations.
[0060] In one embodiment of the present disclosure, after step S206 and after step S208, the graphical representation of the called node may include the weight of the request carried by the node. Figure 7 703 and Figure 8 As shown in 803, the weight of the request currently carried by the node is displayed near the icon of the node. By checking the weight of the request carried by the displayed node, the administrator can simply and intuitively check the weight of each node and the change of the weight. Figure 7 It can be seen that although the weights specified for microservice nodes 103 and 104 are both 50%, the weights of requests actually carried by these two microservice nodes may be different from the specified weights, and gradually approach and eventually equal to the specified weights as the system 10 works.
[0061] like Figure 6 As shown, in Figure 2 and Figure 6 The method 200 shown in FIG. 2 may further include step S210. Since step S210 is optional, Figure 6 Shown as a dotted box.
[0062] In step S210, in response to an eighth user input corresponding to any microservice on the graphical user interface, a graphical representation of a connection relationship corresponding to a link of a request associated with the microservice is highlighted on the graphical user interface. The eighth user input corresponding to any microservice may be, for example, a user searching for the microservice in a search bar of the graphical user interface or selecting the microservice in a drop-down menu.
[0063] Figure 9 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 9 As shown, Figure 7 Similarly, a search bar 901 is shown. When a user searches for microservice 1 in search bar 901 (eighth user input), the connection lines between microservice nodes 103 and 104 where microservice 1 is deployed and API gateway nodes 101 and 102 are highlighted. The highlighting can be done by changing the color, thickness, or line pattern of the connection line.
[0064] According to this embodiment, the administrator can intuitively understand the topological relationship related to the microservice 1.
[0065] According to one embodiment of the present disclosure, the graphical representation of the highlighted connection relationship includes a connection line, and the color of the connection line represents the response time of the downstream node on the link to the request from the upstream node. Figure 9 As shown, the color of the connection line between the API gateway node 101 and the microservice node 103 represents the response time of the microservice node 103 to the request from the API gateway node 101. When the response time is short, the color of the connection line can be green, and the longer the response time is, the more the color of the connection line changes to red.
[0066] According to this embodiment, the administrator can intuitively understand the response time of each node to a request and can quickly discover the failed node.
[0067] According to one embodiment of the present disclosure, the graphical representation of the highlighted connection relationship includes a dashed connection line, and each dashed point on the dashed connection line is highlighted in sequence along the direction from the upstream node side to the downstream node side of the dashed line. Figure 9 As shown, the dotted points of the connection line between the API gateway node 101 and the microservice node 103 are highlighted in sequence along the direction from the API gateway node 101 side to the microservice node 103 side, thereby obtaining a dynamic effect of the connection line moving along the direction of the requested link.
[0068] According to this embodiment, the administrator can intuitively understand the sending direction of the requested link in the topology diagram of the system 10, which helps to more clearly understand and check the topology structure of the system 10 and find fault points in the topology structure.
[0069] According to one embodiment of the present disclosure, graphical representations of called nodes and graphical representations of connection relationships between called nodes are displayed in sequence from upstream nodes to downstream nodes on a link. The graphical representations of highlighted nodes may include changing the color and size of the graphical identifiers of the nodes and adding dynamic effects. For example, Figure 9 As shown, according to the link of the request for API 1 of microservice 1, the API gateway node 101 can be highlighted first, then the connection lines between the API gateway node 101 and the microservice nodes 103 and 104 can be highlighted, and finally the microservice nodes 103 and 104 can be highlighted again. In this way, the formation process of the link of the request for API 1 of microservice 1 can be intuitively represented through dynamic effects.
[0070] According to this embodiment, the administrator can intuitively understand the direction in which the requested link is sent in the topology diagram of system 10, which helps to more clearly understand and inspect the topology of system 10 and find fault points in the topology. In particular, when there are many nodes in the link, this embodiment can clearly show the direction in which the request is sent in the link, which is very beneficial for managing complex systems.
[0071] Next, refer to Figure 10 , Figure 10 is a flowchart of a method 200 for managing a system of a microservice architecture, and is Figure 2 and Figure 6 Continuation of the flowchart shown.
[0072] like Figure 10 As shown, in Figure 2 、 Figure 6 and Figure 10 The method 200 shown in FIG. 2 may further include step S211. Since step S211 is optional, Figure 10 Shown as a dotted box.
[0073] In step S211, in response to a ninth user input corresponding to a request for any application program interface (API) on the graphical user interface, a graphical representation of a connection relationship between called nodes corresponding to the request for the API is highlighted on the graphical user interface. The ninth user input corresponding to any API may be, for example, a user searching for any API in a search bar on the graphical user interface or selecting any API in a drop-down menu.
[0074] Figure 11Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 11 As shown, a search bar 1101 is shown. When the user searches for API 1 in the search bar 1101 (ninth user input), a graphical representation of the connection relationship between the called nodes corresponding to the request for API 1 is highlighted on the graphical user interface. The called nodes include the network firewall 109, the API gateway nodes 101 and 102, the microservice nodes 103 and 104, and the database node 107. Therefore, as shown in FIG. Figure 11 As shown, the graphical representations of the connection relationships between these nodes (connection lines 1102) are all highlighted. The highlighting can be changing the color of the connection line, changing the thickness of the connection line, changing the line pattern of the connection line, etc.
[0075] According to this embodiment, the administrator can intuitively understand the topological relationship related to the API 1 .
[0076] Furthermore, similar to the above, according to one embodiment of the present disclosure, the graphical representation of the highlighted connection relationship includes a connection line, and the color of the connection line indicates the response time of the downstream node on the link to the request from the upstream node. This allows administrators to intuitively understand the response time of each node to the request and quickly identify the node that has a fault.
[0077] Furthermore, similar to the above, according to one embodiment of the present disclosure, the graphical representation of the highlighted connection relationship includes a dashed line, and each dashed point on the dashed line is highlighted sequentially along the direction from the upstream node side to the downstream node side of the dashed line. This allows the administrator to intuitively understand the sending direction of the requested link in the topology diagram of system 10, helping to more clearly understand and inspect the topology of system 10 and discover fault points in the topology.
[0078] In addition, similar to the above, according to one embodiment of the present disclosure, graphical representations of called nodes and graphical representations of connection relationships between called nodes are displayed in sequence from upstream nodes to downstream nodes on the link. The graphical representations of highlighted nodes may include changing the color and size of the graphical identifiers of the nodes and adding dynamic effects. For example, Figure 11As shown, according to the link of the request for API 1 of microservice 1, the network firewall 109 can be highlighted first, then the connection line between the network firewall and API gateway nodes 101 and 102 can be highlighted, then the API gateway nodes 101 and 102 can be highlighted, then the connection line between API gateway node 101 and microservice node 103 can be highlighted, then the microservice nodes 103 and 104 can be highlighted, then the connection line between microservice nodes 103 and 104 and database node 107 can be highlighted, and finally the database node 107 can be highlighted. In this way, the formation process of the link of the request for API 1 of microservice 1 can be intuitively represented through dynamic effects.
[0079] This allows the administrator to intuitively understand the direction in which the requested link is sent within the topology diagram of system 10, helping to more clearly understand and inspect the topology of system 10 and identify fault points within the topology. In particular, when there are many nodes in a link, this embodiment can clearly indicate the direction in which the request is sent within the link, which is very beneficial for managing complex systems.
[0080] like Figure 10 As shown, in Figure 2 、 Figure 6 and Figure 10 The method 200 shown in FIG. 2 may further include step S212. Since step S212 is optional, Figure 10 Shown as a dotted box.
[0081] In step S212, in response to a tenth user input corresponding to a request for any application program interface on the graphical user interface, a list of called nodes corresponding to the request for the application program interface is displayed on the graphical user interface. The tenth user input corresponding to any API may be, for example, a user searching for any API in a search bar of the graphical user interface or selecting any API in a drop-down menu.
[0082] Figure 12 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 12 As shown, a search bar 1201 is shown. When the user searches for API 1 in the search bar 1201 (the tenth user input), a list of called nodes corresponding to the request for the application interface is displayed on the graphical user interface. The called nodes include the network firewall 109, the API gateway nodes 101 and 102, the microservice nodes 103 and 104, and the database node 107. Therefore, as shown in FIG. Figure 12 As shown, a list of these nodes is displayed in a box 1202 on the right side of the user interface.
[0083] According to this embodiment, the administrator can clearly determine all nodes on the link corresponding to any API.
[0084] In addition, with Figure 11 Similarly, Figure 12 As shown by the connection line 1202 in FIG. 1 , the graphical representation of the connection relationship between the called nodes can also be highlighted, which will not be repeated here.
[0085] Next, if Figure 10 As shown, after step S212, step S213 may also be included. Since step S213 is optional, Figure 10 Shown as a dotted box.
[0086] In step S213, in response to an eleventh user input on the graphical user interface for selecting any node in the list, a representation of the current state of the selected node is displayed. The eleventh user input for any node may be clicking or touching the representation of the node in the list.
[0087] Figure 13 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 13 As shown, the API gateway node 101 is selected by the eleventh user input, and thus the status of the API gateway node 101 is displayed. Figure 13 The function identifier of the API gateway node 101 (API gateway 1), the number of times the node has been successfully called (2000 times), the number of times the node has failed to call (0 times), and the node response time are used as examples of the current state of the node. These values can be obtained within a predetermined time period (for example, 24 hours). In addition, the current state of the node can also include at least one of the current load of the node and the users served by the node, and those skilled in the art can set it as needed. In addition, as Figure 13 As shown in , the microservice node 103 can also be selected by the eleventh user input, and thus the status of the microservice node 103 is displayed. The status of the microservice node 103 is the same as that of the reference Figure 4 The description is similar and will not be repeated here.
[0088] According to this embodiment, the system administrator can obtain the current status of each node on the link of the desired API through simple operations.
[0089] In addition, with Figure 11 and Figure 12 Similarly, Figure 13 As shown by the connection line 1302 in FIG. 1 , the graphical representation of the connection relationship between the called nodes can also be highlighted, which will not be repeated here.
[0090] like Figure 10 As shown, in Figure 2 、 Figure 6 and Figure 10 The method 200 shown in FIG. 2 may further include steps S214-S215. Since steps S214-S215 are optional, Figure 10 Shown as a dotted box.
[0091] In step S214, in response to the twelfth user input on the graphical user interface, a representation of the system's parameters related to current limiting is displayed. The twelfth user input is, for example, an operation of clicking or touching a system setting icon. The system parameters include at least one of the following: an upper limit on the number of all requests to be processed in the system, an upper limit on the number of requests to be processed by each microservice in the system, and an upper limit on the number of requests to be processed by each application program interface in the system. The representation of the system's parameters related to current limiting is displayed, including the corresponding parameters and the setting values of the parameters. Thereafter, if a thirteenth user input is received for the representation of the system's parameters related to current limiting on the graphical user interface, in step S215, the system's parameters related to current limiting are changed in response to the thirteenth user input. The thirteenth user input can be, for example, directly modifying the displayed numerical value of the parameter related to current limiting or dragging a slider representing the numerical value of the parameter related to current limiting.
[0092] Figure 14 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 14 As shown, the graphical user interface on the display includes a system settings icon 1401. After clicking or touching the system settings icon 1401, representations of parameters related to current limiting are displayed on the graphical user interface on the display. Figure 14 The system's total request limit, per-microservice request limit, and per-API request limit respectively show the upper limit on the total number of requests to be processed in the system, the upper limit on the number of requests to be processed by each microservice in the system, and the upper limit on the number of requests to be processed by each API in the system. Users can change the displayed setting values to set these parameters. The set upper limit on the number of requests refers to the requests currently received in the system that have not yet been processed, and therefore the number of requests that have been successfully completed is not included in this limit.
[0093] exist Figure 14 For ease of presentation, the overall system request limit, the request limit for each microservice, and the request limit for each API are shown simultaneously. However, those skilled in the art will appreciate that the graphical user interface may display only one or two of these limits. Alternatively, the graphical user interface may provide a tab to switch between these three types of request limits.
[0094] Those skilled in the art will appreciate that when these parameters conflict, the system's overall request limit is prioritized, followed by the request limit for each microservice, and finally the API request limit. That is, when the system's overall request limit is less than the request limit for a particular microservice, the system's overall request limit is used as the basis for throttling. Similarly, when the request limit for a particular microservice is less than the request limit for its API, the microservice's request limit is used as the basis for throttling.
[0095] According to this embodiment, it is possible to easily set request limits for the entire system, for each microservice, and for each application program interface, reducing operational complexity. Furthermore, through the technical solutions of other embodiments of the present disclosure, it is possible to simply and directly verify that the set request limits are being correctly enforced. Therefore, the complexity of administrators managing system 10 can be reduced.
[0096] like Figure 10 As shown, in Figure 2 、 Figure 6 and Figure 10 The method 200 shown in FIG. 2 may further include step S216. Since step S216 is optional, Figure 10 Shown as a dotted box.
[0097] In step S216, in response to the fourteenth user input on the graphical user interface indicating the need for data statistics, statistical results of system-related data are displayed. The system-related data includes at least one of the following data within a predetermined time period: the number of requests received, the average response time to requests, the number of requests processed, and the number of requests failed to process. The statistical results may be in the form of a table, a bar chart, a pie chart, or the like. Those skilled in the art will appreciate other data that requires statistics, and the statistical results of these data may be displayed on the graphical user interface in step S216.
[0098] Figure 15 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 15 As shown, the graphical user interface on the display includes a data statistics icon 1501. After clicking or touching the data statistics icon 1501, the statistical results of the data related to the system are displayed on the graphical user interface on the display. Figure 15 In the example, data statistics are performed by taking the number of requests received, the average response time to requests, the number of requests processed, and the number of requests failed to process as examples. Those skilled in the art can collect other data as needed.
[0099] In one embodiment of the present disclosure, data statistics parameters may be set as needed, including statistical time period, statistical microservice ID, statistical interface identifier, statistical node, etc. Those skilled in the art may conceive of various existing methods for setting data statistics parameters, which will not be described in detail here.
[0100] According to this embodiment, the statistical results of the working status of the system 10 can be simply provided, which is convenient for the administrator to monitor and count the working status of the system 10.
[0101] like Figure 10 As shown, in Figure 2 、 Figure 6 and Figure 10 The method 200 shown in FIG. 2 may further include step S217. Since step S217 is optional, Figure 10 Shown as a dotted box.
[0102] In step S217, in response to the fifteenth user input on the graphical user interface, the graphical representation of the node in the graphical user interface is changed. Changing the graphical representation of the node in the graphical user interface includes at least one of the following: changing the icon of the node, changing the arrangement of the graphical representation of the node, and changing the spacing between the graphical representations of the node. Those skilled in the art may conceive of other parameters that need to be set and set these parameters in step S217.
[0103] Figure 16 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 16 As shown, the graphical user interface on the display includes a system settings icon 1601. After clicking or touching the system settings icon 1601, a box 1602 for setting parameters for the graphical representation of nodes is displayed on the graphical user interface on the display. In box 1602, various parameters are provided for setting the icons of nodes, the arrangement of the graphical representations of nodes, the spacing between the graphical representations of nodes, etc.
[0104] Through this embodiment, the parameters of the topology diagram of the system 10 can be simply set to facilitate the administrator to find the most suitable graphical representation of the nodes.
[0105] like Figure 10 As shown, in Figure 2 、 Figure 6 and Figure 10 The method 200 shown in FIG. 2 may further include step S218. Since step S218 is optional, Figure 10 Shown as a dotted box.
[0106] In step S218, a representation related to system latency is displayed in a graphical user interface, and a warning is issued when the system latency exceeds a threshold. The representation related to system latency may include a graphical representation. System latency may include at least one of the following: the system's overall response time to API requests, or the response time of each node to API requests. Those skilled in the art will readily conceive of other parameters indicative of system latency and monitor and issue warnings accordingly.
[0107] Figure 17 Schematic diagram of a user interface according to an embodiment of the present disclosure. Figure 17 As shown, when it is detected that the system delay exceeds the threshold, a system high delay alarm 1701 is displayed on the graphical user interface of the display, and a representation related to the delay (table 1702) is displayed. In the table, the API identifier where the high delay occurs, the link where the high delay occurs, and the specific response time are listed. Figure 17 As shown, the link with high latency can be the link between nodes in the topology diagram, which represents the response time of a node to the API request, or the total response time of the system.
[0108] Through this embodiment, when high delay occurs in the system, the administrator can be quickly and accurately notified of the problematic link, helping the administrator to solve the problem as soon as possible.
[0109] Those skilled in the art will understand that Figure 2 、 Figure 6 and Figure 10 The steps S203-S218 described above can be selectively performed according to the needs, rather than being performed in full. Figure 2 、 Figure 6 and Figure 10 The steps are described in the order described above, but the order in which they are executed is not fixed. Specifically, some steps may be executed before other steps, and some steps may be combined with other steps and executed simultaneously. In addition, those skilled in the art will appreciate that the first to fifteenth user inputs described above may also be combined with each other. In other words, the user input in one step may also serve as the user input in another step, and thus the two steps may be executed simultaneously.
[0110] In an embodiment according to the present disclosure, the system of microservice architecture is a middle-office system that adopts a microservice architecture, or other systems that adopt a microservice architecture. The method according to the embodiment of the present disclosure can be applied to multiple independent microservice architecture systems at the same time and manage them separately. Those skilled in the art can imagine that by receiving user input for switching the managed microservice architecture system, the method according to the embodiment of the present disclosure can switch between multiple independent microservice architecture systems. For example, a button option or a drop-down menu option can be provided on the graphical user interface of the display to allow the administrator to switch the managed microservice architecture system at any time. In this way, the administrator can easily manage multiple microservice architecture systems.
[0111] Now refer to Figure 18 , which shows a schematic diagram of a general hardware environment to which the present disclosure is applicable according to an exemplary embodiment of the present disclosure.
[0112] refer to Figure 18 Now, we will describe electronic device 1800, which is an example of a hardware device that can be used in various aspects of the present disclosure. Electronic device 1800 can be any machine configured to perform processing and / or computing, and can be, but is not limited to, a workstation, server, desktop computer, laptop computer, tablet computer, personal data assistant, smartphone, vehicle-mounted computer, or any combination thereof. The steps in the aforementioned method for a date value archiving system can be implemented in whole or in part by electronic device 1800 or a similar device or system.
[0113] The electronic device 1800 may include elements that may be connected or communicated with the bus 1802 via one or more interfaces. For example, the electronic device 1800 may include a bus 1802, one or more processors 1804, one or more input devices 1806, and one or more output devices 1808. The one or more processors 1804 may be any type of processor and may include, but are not limited to, one or more general-purpose processors and / or one or more special-purpose processors (e.g., special processing chips). The input device 1806 may be any type of device that can input information to the electronic device and may include, but are not limited to, a mouse, a keyboard, a touch screen, a microphone, and / or a remote control. The output device 1808 may be any type of device that can present information and may include, but are not limited to, a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The electronic device 1800 may also include or be connected to a non-transitory storage device 1810. The non-transitory storage device 1810 may be any storage device that is non-transitory and can implement data storage, and may include but is not limited to a disk drive, an optical storage device, a solid-state memory, a floppy disk, a floppy disk, a hard disk, a magnetic tape or any other magnetic medium, an optical disk or any other optical medium, a ROM (read-only memory), a RAM (random access memory), a cache, and / or any other memory chip or cartridge and / or any other medium from which a computer can read data, instructions, and / or code. The non-transitory storage device 1810 may be detachable from the interface. The non-transitory storage device 1810 may have data / instructions / code for implementing the above-described methods and steps. The electronic device 1800 may also include a communication device 1812. The communication device 1812 can be any type of device or system capable of communicating with an external device and / or with a network, and can include but is not limited to a modem, a network card, an infrared communication device, a wireless communication device and / or a chipset (e.g., a Bluetooth device, a 1302.11 device, a WiFi device, a WiMax device, a cellular communication facility, etc.).
[0114] The electronic device 1800 may also include a working memory 1814 , which may be any kind of working memory that can store instructions and / or data useful for the operation of the processor 1804 , and may include, but is not limited to, random access memory and / or read-only storage devices.
[0115] Software elements may be located in working memory 1814, including, but not limited to, an operating system 1816, one or more application programs 1818, drivers, and / or other data and code. Instructions for executing the above-described methods and steps may be included in one or more application programs 1818, and the steps of the methods may be implemented by reading and executing the instructions of one or more applications via processor 1804. The executable code or source code of the instructions of the software elements may be stored in a non-transitory computer-readable storage medium (e.g., the storage device 1810 described above) and may be read into working memory 1814 through compilation and / or installation. The executable code or source code of the instructions of the software elements may also be downloaded from a remote location.
[0116] It should also be understood that changes can be made according to specific requirements. For example, customized hardware can also be used, and / or specific elements can be implemented with hardware, software, firmware, middleware, microcode, hardware description language or any combination thereof. In addition, connections to other electronic devices such as network input / output devices can be adopted. For example, some or all of the disclosed methods and devices can be implemented by programming hardware (for example, including a field programmable gate array (FPGA) and / or a programmable logic array (PLA)) using logic and algorithms according to the present disclosure using assembly language or hardware programming languages (such as VERILOG, VHDL, C++).
[0117] It will be clear to those skilled in the art from the above embodiments that the present disclosure can be implemented by software through necessary hardware, or by hardware, firmware, etc. Based on such an understanding, the embodiments of the present disclosure can be partially embodied in the form of software. The computer software can be stored in a readable storage medium such as a floppy disk, hard disk, optical disk, or flash memory of a computer. The computer software includes a series of instructions to enable a computer (e.g., a personal computer, a service station, or a network terminal) to perform the method according to each embodiment of the present disclosure or a portion thereof.
[0118] Above Figure 2 、 Figure 6 and Figure 10 The steps of the method presented in the are intended to be illustrative. In some embodiments, the method may be practiced with one or more additional steps not described and / or without one or more of the steps discussed. Figure 2 、 Figure 6 and Figure 10The order of the method steps illustrated in and described above is not intended to be limiting. In some embodiments, the method may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and / or other mechanism for electronically processing information). The one or more processing devices may include one or more modules to perform some or all of the steps of the method in response to instructions stored electronically on an electronic storage medium. The one or more processing modules may include one or more devices configured by hardware, firmware, and / or software specifically designed to perform one or more steps of the method.
[0119] Although various aspects of the present disclosure have been described so far with reference to the accompanying drawings, the above-described methods, systems, and devices are merely illustrative examples, and the scope of the present invention is not limited to these aspects, but is limited only by the following claims and their equivalents. Various elements may be omitted or replaced by equivalent elements. In addition, the steps may be performed in an order different from that described in this disclosure. In addition, the various elements may be combined in various ways. It is also important to note that as technology develops, many of the elements described may be replaced by equivalent elements that appear after this disclosure.
Claims
1. A method for managing a system with a microservice architecture, comprising: At an electronic device having a display, one or more processors, and a memory: Determine the nodes in the system that are called and the connection relationships between the nodes that correspond to the links, based on information about the links along which multiple requests for one or more application programming interfaces (APIs) received from clients pass. The APIs are provided by microservices deployed on the nodes. Displaying a graphical user interface on a display, the graphical user interface including a graphical representation of the called nodes in the system and a graphical representation of the connection relationship between the called nodes, Wherein, the same microservice is deployed on multiple nodes, and the method further includes: In response to a fourth user input corresponding to a microservice on the graphical user interface, displaying on the graphical user interface a list of the plurality of nodes on which the microservice is deployed and a weight of the plurality of requests assigned to each node in the list; and Upon receiving a fifth user input on the graphical user interface regarding the weights of the plurality of requests assigned to any node, changing the weights of the plurality of requests assigned to the node in response to the fifth user input; and The graphical representation of the called nodes includes weights of the plurality of requests carried by the plurality of nodes.
2. The method according to claim 1, wherein The graphical user interface only includes graphical representations of nodes called within a predetermined time period and graphical representations of connection relationships between the called nodes.
3. The method according to claim 1, wherein The called node is associated with multiple application program interfaces.
4. The method according to any one of claims 1 to 3, further comprising: In response to a first user input on the graphical user interface for selecting any node in the system, displaying a representation of the current state of the selected node, The current status of the node includes at least one of the microservices deployed on the node, the number of times the node is successfully called, the number of times the node fails to call, the current load of the node, and the users served by the node.
5. The method according to claim 4, further comprising: displaying a representation of configurable properties of a node in the system in response to a second user input on the graphical user interface for selecting the node, and upon receiving a third user input directed to the representation of the configurable property of the node on the graphical user interface, changing the property of the node in response to the third user input, Among them, the configurable properties of the node include the online or offline of the microservices deployed on the node.
6. The method according to claim 1, further comprising: In response to a sixth user input corresponding to any microservice on the graphical user interface, displaying on the graphical user interface a list of the plurality of nodes on which the microservice is deployed and a list of clients assigned to each of the plurality of nodes; and Upon receiving a seventh user input on the graphical user interface with respect to the list of clients assigned to any node, the client assigned to the node is changed in response to the seventh user input.
7. The method according to claim 1, further comprising: In response to an eighth user input corresponding to any microservice on the graphical user interface, a graphical representation of a connection relationship corresponding to the link of the request associated with the microservice is highlighted on the graphical user interface.
8. The method according to claim 1, further comprising: In response to a ninth user input corresponding to a request for any application program interface on the graphical user interface, a graphical representation of a connection relationship between called nodes corresponding to the request for the application program interface is highlighted on the graphical user interface.
9. The method according to claim 7 or 8, wherein The graphical representation of the highlighted connection relationship includes a connection line, wherein the color of the connection line represents the response time of the downstream node on the link to the request from the upstream node.
10. The method according to claim 7 or 8, wherein The graphical representation of the highlighted connection relationship includes a dotted connection line, and each dotted point on the dotted connection line is highlighted in sequence along a direction from an upstream node side to a downstream node side of the dotted line.
11. The method according to claim 7 or 8, wherein: Graphic representations of called nodes and graphical representations of connection relationships between the called nodes are displayed in sequence from an upstream node to a downstream node on a link.
12. The method according to any one of claims 1 to 3, further comprising: In response to a tenth user input corresponding to a request for any application program interface on the graphical user interface, a list of called nodes corresponding to the request for the application program interface is displayed on the graphical user interface.
13. The method according to claim 12, further comprising: In response to an eleventh user input on the graphical user interface for selecting any node in the list, a representation of a current state of the selected node is displayed.
14. The method according to any one of claims 1 to 3, further comprising: In response to a twelfth user input on the graphical user interface, displaying a representation of a current limiting-related parameter of the system, and upon receiving a thirteenth user input directed to the representation of the system's current limiting-related parameter on the graphical user interface, changing the system's current limiting-related parameter in response to the thirteenth user input, The system parameters include at least one of the following: an upper limit on the number of all requests to be processed in the system, an upper limit on the number of requests to be processed by each microservice in the system, and an upper limit on the number of requests to be processed by each application program interface in the system.
15. The method according to any one of claims 1 to 3, further comprising: In response to a fourteenth user input on the graphical user interface indicating that data statistics are to be taken, statistical results of system-related data are displayed; The system-related data includes at least one of the following data within a predetermined time period: the number of requests received, the average response time to requests, the number of requests processed, and the number of requests failed to process.
16. The method according to any one of claims 1 to 3, further comprising: In response to a fifteenth user input on the graphical user interface, changing the graphical representation of the node in the graphical user interface, Changing the graphical representation of the nodes in the graphical user interface includes at least one of the following: changing the icon of the node, changing the arrangement of the graphical representation of the node, and changing the spacing between the graphical representations of the node.
17. The method according to any one of claims 1 to 3, further comprising: displaying an indication related to system latency in the graphical user interface and issuing a warning when the latency of the system exceeds a threshold, The system delay includes at least one of the following: the entire response time of the system to the request, and the response time of each node to the request.
18. The method according to any one of claims 1 to 3, wherein: The nodes in the system include one or more of the web application firewall (WAF), API gateway, microservice node, microservice management node, and database.
19. The method according to any one of claims 1 to 3, wherein: The system is a middle-office system that adopts a microservice architecture.
20. An electronic device comprising: monitor; a memory configured to store a series of computer-executable instructions; and One or more processors are configured to execute computer-executable instructions stored in the memory, so that the electronic device performs the steps of the method according to any one of claims 1-19.
21. A non-transitory computer-readable medium having instructions stored thereon, the instructions, when executed by one or more processors of an electronic device having a display, causing the electronic device to perform the method of any one of claims 1-19.
Citation Information
Patent Citations
Micro-service call chain concretization method and device, electronic device and storage medium
CN111049878A