Micro-service dependency relationship analysis method and device and storage medium

By comprehensively analyzing permission configuration information and runtime logs from multiple data sources, a dependency graph is constructed, which solves the problems of comprehensiveness and real-time performance of dependency analysis in microservice architecture. This enables efficient and accurate dependency monitoring and problem localization, improving the stability and maintainability of the system.

CN120973648APending Publication Date: 2025-11-18CHINA MERCHANTS BANK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511076735.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-01
Publication Date
2025-11-18

AI Technical Summary

Technical Problem

In existing microservice architectures, the reliance on a single data source for analytics solutions leads to insufficient comprehensiveness and accuracy in analysis, as well as a lack of real-time performance and automation, making it difficult to quickly pinpoint the root cause of problems.

Method used

By acquiring permission configuration information and runtime logs from multiple data sources, a dependency graph is constructed. Stream processing technology is used for real-time analysis to identify the dependencies between microservices. Abnormal paths are identified through graph display and deep recursive traversal, enabling automated monitoring and real-time updates of dependencies.

Benefits of technology

It improves the accuracy and efficiency of microservice dependency analysis, enables real-time monitoring and rapid identification of the root cause of problems, reduces the need for manual intervention, and enhances the stability and maintainability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120973648A_ABST
    Figure CN120973648A_ABST
Patent Text Reader

Abstract

The invention discloses a micro-service dependency relationship analysis method and device and a storage medium, and relates to the technical field of computers.The method comprises the steps that permission configuration information and running logs of different data sources are obtained; the permission configuration information and the running logs of the different data sources are analyzed, multiple pieces of calling fragment information are obtained, and the calling fragment information comprises the dependency relationship between the micro-services; and according to the dependency relationship among the micro-services in the calling fragment information, constructing a dependency relationship graph. According to the method and the device, the permission configuration information and the running log of the multiple data sources are comprehensively analyzed, so that the dependency relationship among the micro-services can be more comprehensively identified, a large number of dynamic dependency relationships among the micro-services are recorded in the running log in real time, the timeliness of dependency relationship monitoring is ensured, and the monitoring efficiency of the micro-services is improved. And the dependency relationship graph is constructed according to the dependency relationship among the micro-services, manual intervention is not needed, and the efficiency and accuracy of dependency relationship analysis are improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computer, in particular to a dependency analysis method and device of microservice and storage medium. BACKGROUND

[0002] In large-scale distributed systems, microservice architecture has become a popular way of software development and deployment. Microservice architecture improves the flexibility and scalability of the system by splitting the application into multiple small service units (microservices). However, due to the complex and diverse dependency relationships between microservices, it is difficult and time-consuming to locate the root cause of problems when failures or performance problems occur.

[0003] Currently, the common dependency analysis scheme mainly obtains a large amount of configuration information of dependency analysis components through a link server, parses the configuration information of the dependency analysis components, and obtains the dependency relationships between the microservices. However, the data source of the above dependency analysis scheme is relatively single, and the single data source limits the comprehensiveness and accuracy of the analysis, making it difficult to capture all potential dependency relationships and problems. In addition, before batch parsing of a large amount of data, the staff needs to set the parsing script according to professional knowledge and experience, and manual intervention is prone to errors and low efficiency. SUMMARY

[0004] The main purpose of the present application is to provide a microservice dependency relationship analysis method, device and storage medium, aiming to improve the accuracy and efficiency of microservice dependency relationship analysis.

[0005] To achieve the above purpose, the present application provides a microservice dependency relationship analysis method, comprising:

[0006] obtaining permission configuration information and running logs of different data sources;

[0007] analyzing the permission configuration information and running logs of the different data sources to obtain a plurality of call segment information, wherein each call segment information includes a dependency relationship between microservices;

[0008] According to the dependency relationship between each microservice in each call segment information, a dependency relationship graph is constructed.

[0009] In an embodiment, the permission configuration information of the different data sources is analyzed to obtain a plurality of call segment information, comprising:

[0010] According to the permission configuration information of the different data sources, the dependency relationship and dependency detail information between each microservice are extracted;

[0011] According to the dependency relationship and dependency detail information between each microservice, the plurality of call segment information is generated.

[0012] In an embodiment, the running logs of the different data sources are analyzed to obtain a plurality of calling segment information, including:

[0013] According to a preset time window, the running logs of the different data sources are grouped and aggregated to obtain a plurality of aggregation results;

[0014] Each of the aggregation results is parsed to obtain the dependency relationship and dependency detail information between each of the microservices;

[0015] According to the dependency relationship and dependency detail information between each of the microservices, the plurality of calling segment information is generated.

[0016] In an embodiment, the calling segment information further includes the dependency detail information between each of the microservices;

[0017] The dependency relationship graph is constructed according to the dependency relationship between each of the microservices in each of the calling segment information, including:

[0018] Each of the microservices in each of the calling segment information is taken as a node;

[0019] According to the dependency relationship between each of the microservices in each of the calling segment information, a directed edge between each of the nodes is created;

[0020] According to the dependency detail information between each of the microservices in each of the calling segment information, attribute information of each of the directed edges is determined;

[0021] According to each of the nodes, the directed edges between each of the nodes, and the attribute information of the directed edges, the dependency relationship graph is constructed.

[0022] In an embodiment, after the dependency relationship graph is constructed according to the dependency relationship between each of the microservices in each of the calling segment information, the method further includes:

[0023] Any node in the dependency relationship graph is taken as a starting node, and a deep recursive traversal is performed;

[0024] When each level of node is recursively traversed, a calling type between the node of the current level and the node of the last level is determined;

[0025] If the calling type is a synchronous calling, it is judged whether the node recursively traversed each time is the starting node;

[0026] If it is the starting node, it is determined that the dependency path is in an abnormal state, and the deep recursive traversal operation of the dependency path is ended, wherein the dependency path is a path formed according to the starting node and each node recursively traversed each time.

[0027] In an embodiment, after the dependency graph is constructed according to the dependency relationship between each microservice in each of the calling segment information, the method further comprises:

[0028] counting the calling times and / or the calling failure rates between each node in the dependency graph;

[0029] performing abnormal monitoring on each microservice according to the calling times and / or the calling failure rates.

[0030] In an embodiment, after the dependency graph is constructed according to the dependency relationship between each microservice in each of the calling segment information, the method further comprises:

[0031] determining the latest calling time between each node in the dependency graph;

[0032] deleting the dependency relationship between nodes whose latest calling time exceeds a preset time threshold.

[0033] In an embodiment, after the dependency graph is constructed according to the dependency relationship between each microservice in each of the calling segment information, the method further comprises:

[0034] comparing and analyzing each microservice to be put on line with the dependency graph to obtain the dependency relationship associated with each microservice to be put on line;

[0035] determining the microservice on-line order according to the dependency relationship associated with each microservice to be put on line;

[0036] pushing the microservice on-line order to a staff for the staff to make an on-line plan according to the microservice on-line order.

[0037] In addition, to achieve the above-mentioned purpose, the present application further provides a microservice dependency relationship analysis device, which comprises:

[0038] an acquisition module configured to acquire permission configuration information and running logs of different data sources;

[0039] an analysis module configured to analyze the permission configuration information and the running logs of the different data sources to obtain a plurality of calling segment information, wherein each calling segment information comprises a dependency relationship between microservices;

[0040] a construction module configured to construct a dependency graph according to the dependency relationship between each microservice in each of the calling segment information.

[0041] In addition, to achieve the above object, the present application further provides an electronic device, which comprises a memory, a processor and a computer program stored in the memory and executable on the processor, and the computer program is configured to implement the steps of the micro-service dependency relationship analysis method.

[0042] In addition, to achieve the above object, the present application further provides a storage medium, which is a computer-readable storage medium, and the storage medium stores a computer program, and the computer program is executed by a processor to implement the steps of the micro-service dependency relationship analysis method.

[0043] In addition, to achieve the above object, the present application further provides a computer program product, which comprises a computer program, and the computer program is executed by a processor to implement the steps of the micro-service dependency relationship analysis method.

[0044] The present application provides a micro-service dependency relationship analysis method, device and storage medium, the method comprising: obtaining permission configuration information and running logs of different data sources; analyzing the permission configuration information and the running logs of the different data sources to obtain a plurality of calling segment information, wherein each calling segment information comprises a dependency relationship between micro-services; and constructing a dependency relationship graph according to the dependency relationship between each micro-service in each calling segment information. The present application can more comprehensively identify the dependency relationship between each micro-service by comprehensively analyzing the permission configuration information and the running logs of multiple data sources, and a large number of dynamic dependency relationships between micro-services are recorded in the running logs in real time, ensuring the timeliness of dependency relationship monitoring, and then constructing a dependency relationship graph according to the dependency relationship between each micro-service, without manual intervention, thereby improving the efficiency and accuracy of micro-service dependency relationship analysis. BRIEF DESCRIPTION OF DRAWINGS

[0045] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and serve to explain the principles of the present application together with the specification.

[0046] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the accompanying drawings needed to be used in the embodiments or prior art description will be briefly introduced here, and obviously, other drawings can be obtained by those skilled in the art without creative labor on the basis of these drawings.

[0047] Figure 1 a flowchart provided by the present application for micro-service dependency relationship analysis method embodiment one;

[0048] Figure 2A dependency graph diagram provided by an embodiment of the present application;

[0049] Figure 3 A flow diagram provided by a second embodiment of the microservice dependency relationship analysis method of the present application;

[0050] Figure 4 A flow diagram provided by a third embodiment of the microservice dependency relationship analysis method of the present application;

[0051] Figure 5 A flow diagram provided by an embodiment of the present application for processing call segment information using Flink stream processing technology;

[0052] Figure 6 A flow diagram provided by a fourth embodiment of the microservice dependency relationship analysis method of the present application;

[0053] Figure 7 A flow diagram provided by a fifth embodiment of the microservice dependency relationship analysis method of the present application;

[0054] Figure 8 A diagram provided by an embodiment of the present application for a dependency path loop;

[0055] Figure 9 A diagram provided by an embodiment of the present application for obtaining a call path by traversing a dependency graph;

[0056] Figure 10 A flow diagram provided by a sixth embodiment of the microservice dependency relationship analysis method of the present application;

[0057] Figure 11 A module structure diagram of the microservice dependency relationship analysis device of an embodiment of the present application;

[0058] Figure 12 A device structure diagram of a hardware operating environment involved in the microservice dependency relationship analysis method of an embodiment of the present application.

[0059] The object implementation, functional features and advantages of the present application will be further described with reference to the accompanying drawings in conjunction with the embodiments. DETAILED DESCRIPTION

[0060] It should be understood that the specific embodiments described herein are merely intended to explain the technical solutions of the present application, and are not intended to limit the present application.

[0061] In order to better understand the technical solutions of the present application, the following will be described in detail in conjunction with the drawings and specific embodiments of the present application.

[0062] It should be noted that the execution subject of the embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device, a big data service platform, a micro-service dependency relationship analysis system, etc. capable of realizing the above functions. The following takes the micro-service dependency relationship analysis system as an example to describe the embodiment and the following embodiments.

[0063] In large-scale distributed systems, micro-service architecture has become a popular software development and deployment approach. Micro-service architecture improves the flexibility and scalability of the system by splitting the application into multiple small service units (micro-services). However, due to the complex and diverse dependency relationships between micro-services, it is difficult and time-consuming to locate the root cause of problems when failures or performance problems occur.

[0064] Currently, the common dependency analysis scheme mainly obtains a large amount of configuration information of the dependency analysis component through the link server, performs program analysis on the configuration information of the dependency analysis component, and obtains the dependency relationship between the micro-services. However, this method has the following disadvantages:

[0065] The data source is relatively single, and other data sources that can provide valuable information are ignored, such as interface dependency files, running logs, database dependencies, permission dependencies, etc. The single data source limits the comprehensiveness and accuracy of the analysis, making it difficult to capture all potential dependency relationships and problems.

[0066] In addition, dependency analysis often needs to process a large amount of data, and existing methods often use batch processing, which has a delay in data collection and processing, and cannot realize real-time or near-real-time analysis. This means that when the system has a problem, the dependency analysis result may have lagged behind, and cannot reflect the current state of the system in a timely manner, thereby affecting the rapid positioning and solving of the problem.

[0067] In addition, the existing dependency analysis method mainly focuses on the identification and visualization of dependency relationships, and lacks in-depth analysis of the abnormal state of micro-services and the dependency production situation. For example, it cannot accurately assess whether the dependency of a certain service will affect the stability of the entire system, nor can it predict the potential risks after the dependency production, which limits the guiding significance of the dependency analysis result in practical application.

[0068] In addition, most of the existing dependency analysis methods require manual operation or simple script support, and lack of automation and intelligent functions. This means that when dealing with large-scale and complex service dependency relationships, a large amount of manual intervention is still required, increasing the complexity of the work and the possibility of errors.

[0069] To solve the above problems, the present application provides the following embodiments, which are described with reference to Figure 1 ,Figure 1 A flowchart is provided for the microservice dependency relationship analysis method embodiment one. In this embodiment, the microservice dependency relationship analysis method includes the following steps:

[0070] Step S11, obtain the permission configuration information and the running log of different data sources;

[0071] It should be noted that different data sources include database dependency files, middleware dependency files, interface dependency files, code repositories, and other data sources.

[0072] It should be noted that the permission configuration information is a configuration rule for controlling the access relationship and the permission boundary between microservices, and includes microservice name, microservice unique ID, belonging business, access control rule, source service list allowed / inhibited to access, interface calling permission, configuration time, and other configuration information.

[0073] It should be noted that the running log is a record generated during the running process of the microservice, and is used to analyze the actual dependency relationship of the microservice during the running process of the system. The running log includes the calling service name, the called service name, the interface path, the request timestamp, the response status code, and other information.

[0074] Specifically, the permission configuration information of different data sources is collected within a preset time period. The preset time period is set according to actual conditions, and is not specifically limited here. In addition, a log management tool (such as Logstash, Fluentd, etc.) is pre-configured to collect the running log during the running process of the system in real time. By collecting and comprehensively analyzing the information of multiple data sources, the dependency relationship between services can be more fully identified and understood. In addition, the information of different data sources needs to be integrated and standardized, etc. to ensure the consistency and integrity of the data. This helps to eliminate data silos and provide a more comprehensive dependency relationship diagram.

[0075] Step S12, analyze the permission configuration information and the running log of the different data sources to obtain a plurality of calling segment information;

[0076] It should be noted that the calling segment information includes the dependency relationship between microservices, and in addition, the calling segment information also includes dependency detail information between microservices, which includes calling time and calling frequency, etc. Optionally, the dependency detail information is Segment segment information.

[0077] In an embodiment, according to the access control rules in the permission configuration information and the interface dependent permission and the like information, it is identified which microservices can depend on which microservices, so as to determine the dependency relationship between the microservices, in addition, the application type of the microservice, the dependency relationship, the time of the dependency relationship configuration update and the like dependency detail information in the permission configuration information are extracted, and then according to the dependency relationship between the microservices and the dependency detail information, the plurality of calling segment information is generated.

[0078] In an embodiment, according to the collected running logs of each microservice, the calling party, the called party, the calling time, the interface path, the response status code, the dependent time consumption and the like information are extracted, and then according to the extracted information, the dependency relationship between the microservices and the dependency detail information are determined, and further, according to the dependency relationship between the microservices and the dependency detail information, the plurality of calling segment information is generated.

[0079] In other embodiments, according to a preset time window, the running logs of the different data sources are grouped and aggregated to obtain a plurality of aggregation results, and then each of the aggregation results is parsed, the purpose of parsing the aggregation results is to further extract the dependency relationship and the dependency detail information therefrom and arrange them into a format that is easier to understand and use, for example, microservice A calls microservice B and returns result Z, and the time consumption is T seconds. Further, according to the dependency relationship between the microservices and the dependency detail information, the plurality of calling segment information is generated. Optionally, the flink window job can be used to perform stream processing on each running log to obtain the calling segment information.

[0080] In step S13, the dependency relationship graph is constructed according to the dependency relationship between each microservice in each calling segment information.

[0081] In this embodiment, each microservice in each calling segment information is taken as a node, and the dependency relationship between the nodes is determined according to the dependency relationship between each microservice in the calling segment information. Understandably, according to the dependency relationship between the nodes, a directed edge between the nodes is created. In addition, according to the dependency detail information between each microservice in each calling segment information, the attribute information of the directed edge is generated, and then according to each node, the directed edge between each node and the attribute information of the directed edge, the dependency relationship graph is constructed. Refer to Figure 2 , Figure 2 The dependency relationship graph provided by an embodiment of the present application is shown in the figure, and the fusion of the nodes and the edges is processed according to the Segment segment information dimension, so as to construct the dependency relationship graph.

[0082] In addition, in an embodiment, the Neo4j graph database provides powerful visualization tools, and the dependency graph can be displayed in a graphical manner, and the user can intuitively view the dependency relationship between microservices through the graphical interface. Optionally, on the basis of the dependency graph, the complete dependency relationship of a specified workpiece or microservice application can be displayed by finding the upstream and downstream relationships thereof, for example, when a viewing instruction corresponding to a node is received, for example, a single-click instruction or a double-click instruction, all nodes in the next level corresponding to the node are expanded.

[0083] In addition, it should be noted that for static permission configuration information, an update time period is set in advance, when the update time period arrives, the central collection is called to collect new permission configuration information, and then the node and edge information in the dependency graph is updated in full according to the new permission configuration information, for example, data collection is performed every 6 hours. For dynamic running logs, the node and edge information in the dependency graph is updated in real time according to the subsequent collected running logs.

[0084] The embodiment can more comprehensively identify the dependency relationship between each microservice by comprehensively analyzing the permission configuration information and the running logs of multiple data sources, and a large number of dynamic dependency relationships between microservices are recorded in real time in the running logs, ensuring the timeliness of dependency relationship monitoring, and then the dependency graph is constructed according to the dependency relationship between each microservice, without manual intervention, improving the efficiency and accuracy of dependency relationship analysis between microservices.

[0085] In a feasible implementation manner, referring to Figure 3 , Figure 3 is a flowchart provided by the second embodiment of the microservice dependency relationship analysis method of the present application; the permission configuration information of different data sources is analyzed to obtain a plurality of call segment information, including:

[0086] In step S21, the dependency relationship and dependency detail information between each microservice are extracted according to the permission configuration information of different data sources;

[0087] In step S22, the plurality of call segment information is generated according to the dependency relationship and dependency detail information between each microservice.

[0088] It should be noted that the permission configuration information defines the dependent permissions and rules between microservices. In the embodiment, each permission configuration information is parsed to extract the dependency relationship and dependency detail information according to the parsing result. For example: from the permission configuration file, extract which microservices can call other microservices, and extract the details such as the application type corresponding to the microservice, the time of dependency relationship configuration, and then integrate the information extracted from different data sources together to form complete dependency relationship and dependency detail information. Alternatively, the structure of the call segment information can be defined: usually including the fields of caller, callee, call time, etc., so as to generate each call segment information according to the extracted dependency relationship and dependency detail information.

[0089] For example, for the.json file corresponding to microservice application A:

[0090] "Microservice Application": [

[0091] "B";

[0092] "C";

[0093] ],

[0094] "Middleware": [

[0095] "D";

[0096] "E"; ]

[0098] Among them, the Segment segment information includes A calling B, A calling C, A calling D, and A calling E. The detail information includes application type, time of configuring call relationship, and the like.

[0099] The embodiment extracts the dependency relationship and dependency detail information between each microservice according to the permission configuration information of the different data sources, and then generates the plurality of call segment information according to the dependency relationship and dependency detail information between each microservice. Through comprehensive analysis of the permission configuration information of multiple data sources, the dependency relationship between each microservice can be more comprehensively identified, and the accuracy of dependency relationship analysis is improved.

[0100] In a feasible implementation manner, referring to Figure 4 , Figure 4 is a flowchart provided by the third embodiment of the microservice dependency relationship analysis method of the present application; the running logs of the different data sources are analyzed to obtain a plurality of call segment information, including:

[0101] Step S31, according to a preset time window, the running logs of the different data sources are grouped and aggregated to obtain a plurality of aggregation results;

[0102] Step S32, each of the aggregation results are analyzed to obtain the dependency relationship and dependency details information between each of the microservices;

[0103] Step S33, according to the dependency relationship and dependency details information between each of the microservices, the plurality of call segment information is generated.

[0104] It should be noted that each of the aggregation results includes the dependency relationship and dependency details information between each of the microservices. The running logs of different data sources include the running logs of ZA20, Node, proxy Proxy, front end and other data sources. The running logs of ZA20 include the running logs of gateway or middleware. The running logs of Node are application service logs. The running logs of proxy Proxy include Nginx or HAProxy access logs. The running logs of front end include browser or network logs.

[0105] In the embodiment, reference is made to Figure 5 , Figure 5 The flowchart for processing call segment information using Flink stream processing technology provided by an embodiment of the present application. Optionally, real-time running logs are read from a log system, wherein the log system refers to a system for collecting and storing microservice running logs, such as Kafka, Kinesis, etc. These systems can efficiently process high-throughput log data and support real-time data stream reading. Further, the received raw log data is parsed into a format that can be processed by Flink, such as Tuple (tuple) or POJO (Plain Old Java Object). A pre-set time window is determined, for example, the time window is one minute. Flink assigns each running log to the corresponding time window according to the timestamp in the log data. Flink aggregates the running logs in each time window, and the purpose of aggregation is to summarize a large number of running logs into more meaningful statistical information, such as: counting the number of calls of each microservice, calculating the call failure rate of each microservice. Further, each of the aggregation results is analyzed to obtain the dependency relationship and dependency details information between each of the microservices; and then according to the dependency relationship and dependency details information between each of the microservices, the plurality of call segment information is generated. By using Flink and other stream processing technologies to process high-throughput log data in real time, the timeliness and accuracy of the data are ensured.

[0106] The embodiment utilizes stream processing technologies such as Apache Flink to efficiently process real-time running logs. Through the window processing mechanism, the pre-aggregation and analysis of data can be completed in a short time, ensuring the real-time update of dependency relationships, thereby quickly responding to changes in service dependencies. In addition, subsequent real-time monitoring and analysis of dependency relationships between microservices can timely discover and solve problems, improving the maintainability and stability of the system.

[0107] In an implementable embodiment, referring to Figure 6 , Figure 6 is a flowchart provided by the fourth embodiment of the microservice dependency analysis method of the present application; according to the dependency relationship between each microservice in each of the call segment information, a dependency graph is constructed, including:

[0108] Step S41, each microservice in each of the call segment information is taken as a node;

[0109] It should be noted that in the dependency graph, each microservice is represented as a node (Node). The node is the basic unit of the graph, used to represent entities in the graph.

[0110] Step S42, according to the dependency relationship between each microservice in each of the call segment information, a directed edge between each node is created;

[0111] It should be noted that in the dependency graph, the dependency relationship between nodes is represented as a directed edge (Directed Edge). The directed edge represents a one-way dependency relationship from one node (caller) to another node (callee). For example, if microservice A calls microservice B, a directed edge from node A to node B is created.

[0112] Step S43, according to the dependency detail information between each microservice in each of the call segment information, the attribute information of each directed edge is determined;

[0113] It should be noted that the attribute information of the directed edge is used to store detailed information of the call between microservices. These attributes can help users better understand the nature of the dependency. The dependency detail information between each microservice is taken as the attribute information of the directed edge between the corresponding nodes.

[0114] Step S44, according to each node, the directed edge between each node, and the attribute information of the directed edge, the dependency graph is constructed.

[0115] It should be noted that the dependency graph is a graph structure composed of nodes (microservices), directed edges (dependency relationships), and attribute information of the directed edges (dependency details). Combining all nodes, directed edges, and their attributes forms a complete dependency graph, which can intuitively show the dependency relationships and calling details between microservices.

[0116] In this embodiment, the dependency relationships between microservices are displayed in the form of a graph, and the dependency relationships between various microservices can be intuitively seen. When a system fault occurs, the root cause of the problem can be quickly located through the dependency graph. For example, if a microservice dependency fails, the source of the problem can be traced along the dependency path.

[0117] In a feasible implementation, referring to Figure 7 , Figure 7 a flowchart provided by the fifth embodiment of the microservice dependency analysis method of the present application; after the dependency graph is constructed according to the dependency relationships between each microservice in each calling segment information, the method further includes:

[0118] Step S51: taking any node in the dependency graph as a starting node, performing deep recursive traversal;

[0119] It should be noted that the steps of deep recursive traversal are as follows: the starting node is added to the visited node set, all nodes in the next level directly dependent on the starting node are found, and these nodes are added to the to-be-visited queue. A node is taken out of the to-be-visited queue, and the nodes in the next level corresponding to the node are found, that is, all nodes directly associated with the node are found, until the traversal ends. Specifically, any node in the dependency graph is taken as a starting node, and all directly or indirectly associated nodes are explored layer by layer along the dependency relationship direction.

[0120] Step S52: when each level of nodes is recursively traversed, determining the calling type between the nodes in the current level and the nodes in the previous level;

[0121] It should be noted that the calling type includes synchronous calling and asynchronous calling. It should be noted that synchronous calling means that the calling party needs to wait for the called party to complete the task before performing other operations. Asynchronous calling means that the calling party does not need to wait for the called party to complete the task and can continue to perform other task operations. When the task of the called party is completed, the calling party will be notified.

[0122] In this embodiment, when each level of nodes is recursively traversed, the calling type between the nodes in the current level and the nodes in the previous level is determined, for example, direct function calling and HTTP request are synchronous calling. The calling of the message queue is asynchronous calling.

[0123] Step S53, if the call type is synchronous call, it is determined whether the node reached by each recursive traversal is the starting node;

[0124] Step S54, if it is the starting node, it is determined that the dependent path is in an abnormal state, and the deep recursive traversal operation of the dependent path is ended, wherein the dependent path is formed according to the starting node and each node reached by each recursive traversal;

[0125] Specifically, if the call type is synchronous call, it is determined whether the node reached by each recursive traversal is the starting node; if it is the starting node, it is proved that there is a circular dependency between microservices, and it is noted that a circular synchronous call is easy to cause a dead loop, which consumes database or network resources. Further, it is determined that the dependent path is in an abnormal state, wherein the dependent path is formed according to the starting node and each node reached by each recursive traversal, and further, the deep recursive traversal operation of the dependent path is ended. For example, referring to Figure 8 , Figure 8 The schematic diagram of the dependent path forming a loop provided by an embodiment of the present application is shown in FIG. 1. It is assumed that Service A synchronously calls Service B, and Service B is added to the dependent path, and the path is updated to [A→B]. The downstream nodes of Service B are recursively traversed. If the downstream nodes of the subsequent dependency again depend on Service A (for example, the path [A→B→H→A] in FIG. 1), it is determined that the dependent path is in an abnormal state (circular dependency). Figure 8

[0126] In addition, if it is not the starting node, the nodes of the next level are further recursively traversed, and the execution of step S52 is repeated until all nodes are recursively completed.

[0127] In addition, if the call type is asynchronous call, since the caller does not need to wait for the callee to complete the task when the asynchronous call is performed, the caller can continue to perform other task operations, which does not affect the execution of the system function, and therefore, the deep recursive traversal operation corresponding to the current scheduling path (the path formed by the starting node and each node reached by each recursive traversal) is ended.

[0128] In the embodiment, when each node of each level is recursively traversed, the call type between the node of the current level and the node of the previous level is determined. If the call type is synchronous call, when a certain node is recursively traversed, it is determined whether the node is the starting node. If the starting node is returned again in the recursive process, it is proved that there is a circular dependency, and the circular dependency may cause system resource exhaustion or service unavailability, and therefore, the dependent path needs to be marked as an abnormal state, the workload of manually checking the circular dependency is reduced, the operation and maintenance cost is reduced, and the stability and performance of the system are improved. ​

[0129] In an implementation, after the dependency graph is constructed according to the dependency relationship between each microservice in each of the invocation segment information, the method further includes:

[0130] Step S61, counting the number of invocations and / or the failure rate between each node in the dependency graph;

[0131] Step S62, performing abnormal monitoring on each microservice according to the number of invocations and / or the failure rate.

[0132] It should be noted that the dependency details information between each microservice includes the number of invocations and response status codes, etc. The success of the invocation can be determined according to the response status code. The failure rate is counted according to the number of invocations and the number of invocation failures. The number of invocations is compared with a preset number of invocations, and / or the failure rate is compared with a preset failure rate threshold. Then, according to the comparison result, the abnormal monitoring is performed on each microservice. Alternatively, if the number of invocations of a microservice exceeds the preset number of invocations, and / or the failure rate exceeds the preset failure rate threshold, it is considered that the microservice may be abnormal and needs to be monitored or alarmed. For example, for the microservice with too many invocations, it is proved that the microservice is frequently depended on, which may be caused by large business traffic, malicious dependence or crawler attack, or misuse of the interface of the microservice. For the microservice with a high failure rate, it may be caused by faults in the microservice, unavailability of the dependent service, or incorrect dependent parameters, etc. Therefore, the microservice needs to be monitored or alarmed.

[0133] In this embodiment, the number of invocations and / or the failure rate between each node in the dependency graph is counted. By monitoring the number of invocations, it can be found whether a microservice is abnormally frequently depended on. By monitoring the failure rate, it can be found whether a microservice has a frequent failure. The abnormal monitoring of the microservice is realized, the stability and maintainability of the microservice architecture are improved, and the efficient operation of the system is ensured.

[0134] In an implementation, after the dependency graph is constructed according to the dependency relationship between each microservice in each of the invocation segment information, the method further includes:

[0135] Step S71, determining the latest invocation time between each node in the dependency graph;

[0136] Step S72, deleting the dependency relationship between the nodes corresponding to the latest invocation time exceeding a preset time threshold.

[0137] It should be noted that the dependency details information includes the invocation time between microservices. Therefore, the attribute information of the directed edge between each node in the dependency graph includes the invocation time.

[0138] Further, it needs to be explained that after the dependency relationship graph is constructed, the calling relationship and calling time between each node in the dependency relationship graph are updated according to the newly collected permission configuration information and running log. The specific updating process is as follows: the latest dependency details are extracted from the running log and the permission configuration information, including the dependency relationship between each microservice and the calling time. The new calling time is updated to the attribute information of the corresponding directed edge in the dependency relationship graph. By dynamically updating the calling time, it is ensured that the dependency relationship graph reflects the latest dependency behavior and dependency relationship.

[0139] In the embodiment, the latest calling time between each node in the dependency relationship graph is determined; and then the latest calling time exceeding the preset time threshold is compared. If the latest calling time exceeds the preset time threshold, it means that the dependency relationship has not been used within the set time, and it can be considered that the calling relationship is expired or no longer needed, and then the dependency relationship between the nodes corresponding to the latest calling time exceeding the preset time threshold is deleted.

[0140] In addition, in other embodiments, with reference to Figure 9 , Figure 9 The schematic diagram of obtaining a calling path by traversing the dependency relationship graph is provided for an embodiment of the present application. On the basis of the dependency relationship graph, all calling paths from the root node to the leaf node are obtained by traversing from the root node, all calling paths are stored and displayed, and the dependency relationship between the nodes corresponding to the latest calling time exceeding the preset time threshold, for example, the dependency relationship not used within 3 months, is marked for analysis by the staff.

[0141] The embodiment determines the latest calling time between each node in the dependency relationship graph; and then deletes the dependency relationship between the nodes corresponding to the latest calling time exceeding the preset time threshold, so as to ensure that the dependency relationship graph always reflects the latest dependency behavior and dependency relationship, which helps to avoid that the information in the graph is out of date or redundant, and in addition, it can also reduce the burden of monitoring and maintenance. For example, it is no longer necessary to perform performance monitoring or troubleshooting for the abandoned dependency relationship.

[0142] In a feasible implementation manner, with reference to Figure 10 , Figure 10 The flowchart provided for the sixth embodiment of the microservice dependency relationship analysis method of the present application; after the dependency relationship graph is constructed according to the dependency relationship between each microservice in each calling segment information, the following is further included:

[0143] Step S81, comparing and analyzing each microservice to be put online with the dependency relationship graph to obtain the dependency relationship associated with each microservice to be put online;

[0144] It should be noted that the microservice to be online refers to the microservice to be deployed to the production environment.

[0145] In the present embodiment, each microservice to be online is compared with the dependency graph to find all the dependency relationships associated with the microservice in the graph. Optionally, the node corresponding to each microservice to be online is found in the dependency graph. All the dependency relationships of the node are extracted from the dependency graph, wherein all the dependency relationships include the direct dependency relationships and the indirect dependency relationships of the node corresponding to the microservice to be online, wherein the direct dependency relationships refer to the relationships between the nodes of other microservices directly dependent on the node corresponding to the microservice to be online; the indirect dependency relationships refer to the relationships between the nodes further dependent on the nodes (i.e. the nodes directly dependent) dependent on the node corresponding to the microservice to be online. For example, A node depends on B node, B node depends on C node, and C node depends on D node. A node and B node are direct dependency relationships, and A node and C node and D node are indirect dependency relationships.

[0146] Step S82, determining the microservice online order according to the dependency relationships associated with each of the microservices to be online;

[0147] It should be noted that the online order of the microservice needs to consider the dependency relationship to ensure that all the microservices dependent on the microservice to be deployed have been successfully published and online, otherwise, it may cause the microservice call to fail or the system to be unstable.

[0148] In the present embodiment, according to the dependency relationships associated with each of the microservices to be online, the other microservices dependent on each of the microservices to be online are determined, thereby generating the microservice online order. Subsequently, according to the microservice online order, it can be ensured that all the microservices dependent on each microservice have been online before the microservice is online. A node calls B node, B node calls C node, and the microservice online order is the microservice corresponding to C node, then the microservice corresponding to B node, and finally the microservice corresponding to A node.

[0149] Step S83, pushing the microservice online order to the staff for the staff to make an online plan according to the microservice online order.

[0150] In the present embodiment, the microservice online order is pushed to the staff responsible for the online. The pushing mode can be through email, instant messaging tool, project management tool (such as Jira) or special deployment management system. The staff makes a detailed online plan according to the pushed online order. The online plan should include the specific order of each microservice online.

[0151] The embodiment compares and analyzes each to-be-online microservice with the dependency graph to obtain a dependency relationship associated with each to-be-online microservice; and determines a microservice online sequence according to the dependency relationship associated with each to-be-online microservice, so as to ensure that all microservices dependent on a certain microservice have been successfully online before the certain microservice is deployed, thereby reducing the risk of microservice online and ensuring stable operation of the system.

[0152] It should be noted that the examples in the figures are only used to understand the present application and do not constitute a limitation on the microservice dependency relationship analysis method of the present application. More forms of simple transformation based on the technical concept are within the protection scope of the present application.

[0153] It should be understood that the size of the serial number of each step in the above embodiment does not mean the order of execution, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiment of the present application.

[0154] The present application also provides a microservice dependency relationship analysis device, please refer to Figure 11 , Figure 11 The present application also provides a microservice dependency relationship analysis device, please refer to

[0155] The acquisition module 91 is configured to acquire permission configuration information and running logs of different data sources.

[0156] The analysis module 92 is configured to analyze the permission configuration information and the running logs of the different data sources to obtain a plurality of calling segment information, wherein each calling segment information includes a dependency relationship between microservices.

[0157] The construction module 93 is configured to construct a dependency relationship graph according to the dependency relationship between each microservice in each calling segment information.

[0158] The analysis module 92 is further configured to:

[0159] extract the dependency relationship and dependency detail information between each microservice according to the permission configuration information of the different data sources;

[0160] generate the plurality of calling segment information according to the dependency relationship and the dependency detail information between each microservice.

[0161] The analysis module 92 is further configured to:

[0162] group and aggregate the running logs of the different data sources according to a preset time window to obtain a plurality of aggregation results;

[0163] The dependency relationship and dependency detail information between the microservices are obtained by analyzing the polymerization results;

[0164] The multiple calling segment information is generated according to the dependency relationship and dependency detail information between the microservices.

[0165] The building module 93 is further configured to:

[0166] Each microservice in the calling segment information is taken as a node;

[0167] A directed edge between each node is created according to the dependency relationship between each microservice in the calling segment information;

[0168] The attribute information of the directed edge is determined according to the dependency detail information between each microservice in the calling segment information;

[0169] The dependency relationship graph is constructed according to the node, the directed edge between the nodes and the attribute information of the directed edge.

[0170] The microservice dependency relationship analysis device is further configured to:

[0171] Any node in the dependency relationship graph is taken as a starting node, and a deep recursive traversal is performed;

[0172] When each level of node is recursively traversed, the calling type between the current level of node and the last level of node is determined;

[0173] If the calling type is synchronous calling, it is determined whether the node recursively traversed each time is the starting node;

[0174] If it is the starting node, it is determined that the dependency path is in an abnormal state, and the deep recursive traversal operation of the dependency path is ended, wherein the dependency path is a path formed according to the starting node and each node recursively traversed each time.

[0175] The microservice dependency relationship analysis device is further configured to:

[0176] The calling times and / or calling failure rates between each node in the dependency relationship graph are counted;

[0177] Each microservice is monitored according to the calling times and / or the calling failure rates.

[0178] The microservice dependency relationship analysis device is further configured to:

[0179] The latest calling time between each node in the dependency relationship graph is determined;

[0180] delete the dependency relationship between nodes corresponding to the latest call time exceeding the preset time threshold.

[0181] The microservice dependency relationship analysis apparatus is further configured to:

[0182] compare each microservice to be put online with the dependency graph to obtain dependency relationships associated with each microservice to be put online;

[0183] determine a microservice online sequence according to the dependency relationships associated with each microservice to be put online;

[0184] push the microservice online sequence to a staff member, so that the staff member formulates an online plan according to the microservice online sequence.

[0185] The microservice dependency relationship analysis apparatus provided in the present application adopts the microservice dependency relationship analysis method in the above embodiments, and can solve the technical problems in the background art. Compared with the prior art, the microservice dependency relationship analysis apparatus provided in the present application has the same beneficial effects as the microservice dependency relationship analysis method provided in the above embodiments, and other technical features in the microservice dependency relationship analysis apparatus are the same as the features disclosed in the above embodiments, which will not be repeated here.

[0186] The present application provides an electronic device, which comprises at least one processor and a memory in communication connection with the at least one processor, wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the microservice dependency relationship analysis method in the above embodiment one.

[0187] Reference will now be made to the drawings, and specific examples thereof will be illustrated in detail. Figure 12 which shows a structural schematic diagram of an electronic device suitable for implementing the embodiments of the present application. The electronic device in the embodiments of the present application can include but is not limited to mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), and the like, and fixed terminals such as digital TVs, desktop computers, and the like. Figure 12 The electronic device shown is only an example, and should not impose any limitation on the functions and use range of the embodiments of the present application.

[0188] As Figure 12As shown, the electronic device can include a processing device 1001 (e.g., a central processing unit, a graphics processing unit, etc.) that can perform various appropriate actions and processes according to programs stored in a read-only memory 1002 or loaded from a storage device 1003 into a random access memory 1004. Various programs and data required for operation of the electronic device are also stored in the random access memory 1004. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are connected to each other by a bus 1005. An input / output interface 1006 is also connected to the bus. Generally, the following systems can be connected to the input / output interface 1006: input devices 1007 including, for example, a touch screen, a touch pad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; the storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the electronic device to communicate wirelessly or wired with other devices to exchange data. Although the electronic device having various systems is shown in the figure, it should be understood that all of the shown systems are not required to be implemented or possessed. More or less systems can be alternatively implemented or possessed.

[0189] In particular, according to embodiments of the present disclosure, the processes described above with reference to the flowcharts can be implemented as a computer software program. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network by a communication device, or installed from the storage device 1003, or installed from the read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the methods of the embodiments of the present disclosure are performed.

[0190] The electronic device provided by the present application adopts the micro-service dependency relationship analysis method in the above-mentioned embodiments, and can solve the technical problems in the background art. Compared with the prior art, the electronic device provided by the present application has the same beneficial effects as the micro-service dependency relationship analysis method provided by the above-mentioned embodiments, and other technical features in the electronic device are the same as the features disclosed in the previous embodiment method, which will not be repeated here.

[0191] It should be understood that parts of the present disclosure can be realized by hardware, software, firmware or a combination thereof. In the description of the above-mentioned embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.

[0192] The above merely provides a specific implementation of the present application, but the protection scope of the present application is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical scope disclosed by the present application, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

[0193] The present application provides a computer readable storage medium having stored thereon computer readable program instructions (i.e., a computer program) for performing the microservice dependency relationship analysis method in the above embodiment.

[0194] The computer readable storage medium provided by the present application may, for example, be a U disk, but is not limited to an electric, magnetic, optical, electromagnetic, infrared, or semiconductor system or device, or any combination thereof. More specific examples of the computer readable storage medium can include, but are not limited to, an electric connection having one or more conductive wires, a portable computer disk, a hard disk, a random access memory (RAM), a read only memory (ROM), an erasable programmable read only memory (EPROM or flash memory), an optical fiber, a portable compact disk read only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present embodiment, the computer readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system or device. The program code contained on the computer readable storage medium can be transmitted by any suitable medium, including but not limited to an electric wire, an optical cable, an RF (Radio Frequency), etc., or any suitable combination thereof.

[0195] The above computer readable storage medium can be contained in an electronic device; or can exist separately without being assembled into an electronic device.

[0196] The above computer readable storage medium carries one or more programs, which, when executed by an electronic device, cause the electronic device to:

[0197] Obtain permission configuration information and running logs of different data sources;

[0198] Analyze the permission configuration information and the running logs of the different data sources to obtain a plurality of calling segment information, wherein each calling segment information includes a dependency relationship between microservices;

[0199] According to the dependency relationship between each microservice in each of the calling segment information, a dependency graph is constructed.

[0200] Computer program code for carrying out operations of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider).

[0201] The flow diagrams and the block diagrams in the drawings are illustrations of architectures, functionalities, and operations of possible implementations of systems, methods, and computer program products according to various embodiments of present application. In this regard, each block in the flow diagrams or block diagrams can represent a module, a procedure, or a part of code, which comprises one or more executable instructions for implementing the specified functions. It should also be noted that in some alternative implementations, the functions noted in the blocks can occur out of the order noted in the figures. For example, two blocks shown in succession may, in some cases, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flow diagrams, and combinations of blocks in the block diagrams and / or flow diagrams, can be implemented by special purpose hardware-based systems that perform the specified functions or operations, or combinations of special purpose hardware and computer instructions.

[0202] The modules involved in the embodiments of the present application can be implemented in software or hardware. In some cases, the names of the modules do not constitute a limitation on the modules themselves.

[0203] The readable storage medium provided by the application is a computer readable storage medium, which stores computer readable program instructions (i.e., a computer program) for executing the microservice dependency relationship analysis method described above, and can solve the technical problems in the background art. Compared with the prior art, the computer readable storage medium provided by the application has the same beneficial effects as the microservice dependency relationship analysis method provided by the above embodiments, which will not be repeated here.

[0204] The embodiment of the application provides a computer program product, comprising a computer program, which, when executed by a processor, implements the steps of the microservice dependency relationship analysis method as described above.

[0205] The computer program product provided by the application can solve the technical problems in the background art. Compared with the prior art, the computer program product provided by the embodiment of the application has the same beneficial effects as the microservice dependency relationship analysis method provided by the above embodiments, which will not be repeated here.

[0206] It should be noted that in this paper, the term "including", "containing" or any other variant thereof is intended to cover non-exclusive inclusion, so that the process, method, article or system including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or includes elements inherent to such process, method, article or system. Without more limitations, the element defined by the sentence "including a" does not exclude the existence of other identical elements in the process, method, article or system including the element.

[0207] The above-mentioned serial numbers of the embodiments of the application are only for description, and do not represent the advantages and disadvantages of the embodiments.

[0208] The above only describes some embodiments of the application, and does not limit the patent scope of the application. Any equivalent structural transformation made by using the content of the application specification and drawings, or direct / indirect application in other related technical fields is included in the patent protection scope of the application.

Claims

1. A microservice dependency relationship analysis method, characterized in that, The method comprises the following steps: Obtain permission configuration information and running logs of different data sources; Analyze the permission configuration information and running logs of the different data sources to obtain a plurality of calling segment information, wherein each calling segment information comprises a dependency relationship between microservices; According to the dependency relationship between each microservice in each calling segment information, a dependency relationship graph is constructed. 2.The microservice dependency relationship analysis method of claim 1, wherein, Analyze the permission configuration information of the different data sources to obtain a plurality of calling segment information, comprising: According to the permission configuration information of the different data sources, the dependency relationship and dependency details information between each microservice are extracted; According to the dependency relationship and dependency details information between each microservice, the plurality of calling segment information is generated. 3.The microservice dependency relationship analysis method of claim 1, wherein, Analyze the running logs of the different data sources to obtain a plurality of calling segment information, comprising: According to a preset time window, the running logs of the different data sources are grouped and aggregated to obtain a plurality of aggregation results; Each aggregation result is parsed to obtain the dependency relationship and dependency details information between each microservice; According to the dependency relationship and dependency details information between each microservice, the plurality of calling segment information is generated. 4.The microservice dependency relationship analysis method of claim 1, wherein, The calling segment information further comprises dependency details information between each microservice; According to the dependency relationship between each microservice in each calling segment information, a dependency relationship graph is constructed, comprising: Each microservice in each calling segment information is taken as a node; According to the dependency relationship between each microservice in each calling segment information, a directed edge between each node is created; According to the dependency details information between each microservice in each calling segment information, the attribute information of each directed edge is determined; According to each node, the directed edge between each node, and the attribute information of the directed edge, the dependency relationship graph is constructed. 5.The microservice dependency relationship analysis method of claim 1, wherein, After the dependency relationship graph is constructed according to the dependency relationship between each microservice in each calling segment information, further comprising: Any node in the dependency relationship graph is taken as a starting node for deep recursive traversal; When each level node is recursively traversed, the calling type between the current level node and the last level node is determined; If the calling type is synchronous calling, it is judged whether the node recursively traversed each time is the starting node; If it is the starting node, it is determined that the dependency path is in an abnormal state, and the deep recursive traversal operation of the dependency path is ended, wherein the dependency path is formed according to the starting node and each node recursively traversed each time. 6.The microservice dependency relationship analysis method of claim 1, wherein, After the dependency relationship graph is constructed according to the dependency relationship between each microservice in each calling segment information, further comprising: The number of calls and / or the call failure rate between each node in the dependency relationship graph are counted; According to the number of calls and / or the call failure rate, each microservice is monitored for abnormalities. 7.The microservice dependency relationship analysis method of claim 1, wherein, After the dependency relationship graph is constructed according to the dependency relationship between each microservice in each calling segment information, further comprising: determine a latest calling time between each node in the dependency graph; delete the dependency between the nodes whose latest calling time exceeds a preset time threshold. 8.The microservice dependency relationship analysis method of claim 1, wherein, After the dependency graph is constructed according to the dependency between each microservice in each calling segment information, the method further includes: comparing and analyzing each microservice to be online with the dependency graph to obtain the dependency associated with each microservice to be online; determining a microservice online sequence according to the dependency associated with each microservice to be online; pushing the microservice online sequence to a staff for the staff to formulate an online plan according to the microservice online sequence.

9. An electronic device, comprising: The electronic device includes a memory, a processor, and a computer program stored on the memory and executable on the processor, and the computer program is configured to implement the steps of the microservice dependency analysis method according to any one of claims 1 to 8.

10. A storage medium, characterized by The storage medium is a computer readable storage medium, and the storage medium stores a computer program. When the computer program is executed by the processor, the steps of the microservice dependency analysis method according to any one of claims 1 to 8 are implemented.