CN112783673A - 一种调用链的确定方法、装置、计算机设备及存储介质 - Google Patents
一种调用链的确定方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112783673A CN112783673A CN202110116238.0A CN202110116238A CN112783673A CN 112783673 A CN112783673 A CN 112783673A CN 202110116238 A CN202110116238 A CN 202110116238A CN 112783673 A CN112783673 A CN 112783673A
- Authority
- CN
- China
- Prior art keywords
- determining
- chain
- initial
- call chain
- service request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种调用链的确定方法、装置、计算机设备及存储介质,该方法包括:接收用户发出的业务请求,根据业务请求对应的目标服务确定符合业务请求的多条初始调用链,对实时采集的每一初始调用链对应的性能数据及成本数据进行分析,获取分析结果,根据分析结果以及预设路由策略从多条初始调用链中确定业务请求对应的最优调用链,将最优调用链反馈给所述用户,以便用户通过最优调用链访问所述目标服务。本发明通过响应于用户的业务请求,从多条调用链中确定出最优质的调用链,从而提高系统的性能以及响应速度。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种调用链的确定方法、装置、计算机设备及存储介质。
背景技术
随着传统信息技术相继步入成熟期,调用链等技术已掀起了下一轮互联网变革浪潮,成为变革的新引擎。电商行业一直以来都是对前沿科技、商业趋势最为敏感,也最愿意大胆尝试的一个行业。调用链是目前国内的服务兴起后才有的一种新流行词语。因为在互联网行业传统单位应用的项目中,不存在服务链/调用链的概念,所以也就根本没有调用链治理的需求了。而当公司开始运用服务架构之后,很多服务变成分布式的了,并且也需要对服务进行拆分。
服务拆分之后,当用户的一个请求发生时,会依次经过不同的服务节点进行处理,处理完成后再返回结果给用户。通常不同的服务节点有可能是由不同的团队开发的、且部署在不同的服务器上,那么在这么错综复杂的环境下,想要快速确定哪条调用链路是最优的以及排查出是调用链路中的具体哪个服务节点出了问题,其实是十分困难的。若是不能采用最优的调用链,一方面,可能系统的整理性能会受到影响,使得响应速度慢等,另一方面在整个处理的链路中,如果有任何一个节点出现了延迟或者问题,都有可能导致最终的结果出现异常。
因此,亟需提出一种调用链的确定方法,以解决上述问题。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种调用链的确定方法、装置、计算机设备以及存储介质,以克服现有技术中存在的无法为目标服务从多条调用链中快速确定最优质的调用链,导致系统性能受影响,降低响应速度等问题。
为解决上述一个或多个技术问题,本发明采用的技术方案是:
第一方面,提供了一种调用链的确定方法,该方法包括如下步骤:
接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
进一步的,所述根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链包括:
根据预设判断规则确定每一所述初始调用链的连通状态,所述连通状态包括连通和不连通;
根据所述分析结果以及预设评分规则确定每一所述初始调用链对应的性能得分;
确定性能得分最高且连通状态为连通的所述初始调用链为所述业务请求对应的最优调用链。
进一步的,所述根据预设判断规则确定每一所述初始调用链的连通状态包括:
获取每一所述初始调用链的故障次数,当所述故障次数超过预设阈值时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
进一步的,所述根据预设判断规则确定每一所述初始调用链的连通状态还包括:
获取每一所述初始调用链的路径状态信息,当所述路径状态信息为阻塞状态时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
进一步的,所述接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链包括:
接收用户发出的业务请求,确定所述业务请求对应的目标服务以及所述用户所在的当前节点;
根据预设的节点与服务的对应关系确定与所述目标服务对应的目标节点;
根据所述当前节点以及所述目标节点,生成与所述业务请求对应的多条初始调用链。
进一步的,当所述用户通过所述最优调用链访问所述目标服务返回故障时,所述方法还包括:
接收用户发出的最优调用链的故障信息,将所述最优调用链的路径状态信息标记为阻塞状态。
进一步的,所述方法还包括:
根据实时采集的每一所述初始调用链对应的性能数据以及预设路由策略从所述多条初始调用链中重新确定所述业务请求对应的最优调用链反馈给所述用户。
第二方面,提供了一种调用链的确定装置,所述装置包括:
路径确定模块,用于接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
性能分析模块,用于对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
路径筛选模块,用于根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
路径反馈模块,用于将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
第三方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如下步骤:
接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的调用链的确定方法、装置、计算机设备及存储介质,通过接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链,对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果,根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链,将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务,从而响应于用户的业务请求,从多条调用链中确定出最优质的调用链,从而提高系统的性能以及响应速度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的调用链的确定方法的流程图;
图2是根据一示例性实施例示出的调用链的确定装置的结构示意图;
图3是根据一示例性实施例示出的计算机设备的内部结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如背景技术所述,随着互联网信息技术的深入,各个业务领域信息系统层出不穷。当用户的一个请求发生时,可能会依次经过不同的服务节点进行处理,在整个处理的链条中,如果有任何一个节点出现了延迟或者问题,都有可能导致最终的结果出现异常。由于不同的服务节点可能是由不同的团队开发的、也有可能部署在不同的服务器上,因此在这么错综复杂的环境下,想要快速确定哪条调用链路是最优质的,是十分困难的。
为解决上述问题,本发明实施例中创造性的提出了一种调用链的确定方法,该方法通过对调用链(也称调用链路)的性能数据进行分析,从而找出最优质的调用链,从而提高系统的性能、响应速度,以满足支持系统的高效、快速运行的需求,应对秒杀、抢购、大促等大并发高流量的场景,达到大幅提升系统的运行效率、改进系统的处理速度的效果。
图1是根据一示例性实施例示出的调用链的确定方法的流程图,参照图1所示,该方法包括如下步骤:
S1:接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链。
具体的,当用户的一个请求发生时,与请求对应的目标服务可能会依次经过不同的服务节点进行处理,这些服务节点除了包括用户所处的当前节点以及目标服务对应的目标节点外,还可能包括若干个中间节点。用户的业务请求按照具体的业务处理逻辑,会被当前节点、中间节点以及目标节点依次进行相应的处理,处理完成后再返回结果给用户。从当前节点经由中间节点,最后到达目标节点的路径即为本发明实施例中所述的调用链。由于不同的中间节点提供的服务可能相同,因此,从当前节点可以经由不同的中间节点到达目标节点,因而,同一目标服务可能存在多条调用链。本发明实会死例中,在接收到用户发出的业务请求后,会先根据该业务请求对应的目标服务确定符合该务请求的多条初始调用链。
S2:对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果。
具体的,本发明实施中,在确定最优调用链时,采用的是对调用链的性能进行分析的方式。响应速度是衡量调用链是否优质的一项重要标准,而整个调用链的响应速度是受组成整个链路的所有节点的性能影响的,因此,本发明实施例中,会将调用链对应的性能作为筛选最优调用的链路的一项重要依据。具体实施时,主要通过实时采集的调用链对应的性能数据及成本数据对其进行综合分析,包括但不限于归类分析等。由于当用户通过调用链访问目标服务时,如果有任何一个节点出现故障或延迟时,都会导致最终的结果出现异常。因此,这里调用链对应的性能数据包括但不限于调用链中各个节点对应的性能数据。成本数据包括但不限于所需消耗计算成本等数据。
具体的,节点包括内容分发网络(CDN),内容分发网络是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网络请求的重定向和内容管理四个要件,而内容管理和全局的网络流量管理(Traffic Management)是CDN的核心所在。通过用户就近性和服务器负载的判断,CDN确保内容以一种极为高效的方式为用户的请求提供服务。
S3:根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链。
具体的,本发明实施例中的预设路由策略可以是一种路由算法(也称选路算法),路由算法可以根据多个特性来加以区分。通过路由算法可以找到一条从源路由器到目的路由器的“好”路径(如具有最低费用的路径)。路由算法的路由协议的操作由算法特定目标确定,具体来说存在着多种路由算法,每种算法对网络和路由器资源的影响都不同。路由算法使用多种度量标准(metric)来计算最佳路径。作为一种较优的示例,预设路由策略包括但不限于最短路径算法等。
S4:将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
具体的,确定出业务请求对应的最优调用链后,可以通过多种方式反馈给用户,这里不做限制,在具体实施时,选用何种反馈方式可以根据实际需求进行设置。
作为一种较优的实施方式,本发明实施例中,所述根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链包括:
S301:根据预设判断规则确定每一所述初始调用链的连通状态,所述连通状态包括连通和不连通。
具体的,由于链路不连通就无法正常提供服务,因而当用户通过调用链访问目标服务时,链路保持连通状态是首要条件。本发明实施例中,在从多条初始调用链中确定最优调用链时,首先考虑各个调用链路的连通状态,因而会首先判断各个初始调用链的连通状态,这里的连通状态主要包括连通和不连通两种状态。
S302:根据所述分析结果以及预设评分规则确定每一所述初始调用链对应的性能得分。
具体的,为了能够直观地表示各个调用链的性能的好坏,本发明实施例中,采用对调用链的性能进行评分,以分数的方式来表示各个调用链的性能的好坏,得分越高,表示对应的调用链的性能越好,反之,得分越低,表示对应的调用链的性能越差。具体实施时,可以预先设置评分规则,该评分规则中各项性能数据均对应设置一个分数,结合性能数据的分析结果以及该评分规则,通过统计各项性能数据的分数可以得出每一初始调用链对应的性能得分。除此之外,在评估每一初始调用链对应的性能得分时,还可以将调用链对应的使用成本作为一项评分,综合考虑调用链的性能和成本,选择最优调用链。
S303:确定性能得分最高且连通状态为连通的所述初始调用链为所述业务请求对应的最优调用链。
具体的,在确定最优调用链时,首先排除连通状态为不连通的初始调用链,然后从剩余的初始调用链中筛选出得分最高的作为最优调用链。具体筛选时,可以在计算出每一初始调用链对应的性能得分后,根据分数高低对初始调用链进行排序,然后选取得分最高的初始调用链;也可以采用遍历的方式,获取出得分最高的初始调用链,这里不对具体的筛选方式做限制,用户可以根据实际需求进行设置。
作为一种较优的实施方式,本发明实施例中,所述根据预设判断规则确定每一所述初始调用链的连通状态包括:
获取每一所述初始调用链的故障次数,当所述故障次数超过预设阈值时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
具体的,在确定初始调用链的连通状态时,可以预先设置一个判断规则,例如,可以将故障率高的调用链判定为不连通状态。具体实施时,预先设置一个预设阈值,获取系统中记录的每一初始调用链的故障次数,将该故障次数与预设阈值进行比较,当故障次数超过预设阈值时,将对应的初始调用链的连通状态判定为不连通,否则,将对应的初始调用链的连通状态判定为连通。
作为一种较优的实施方式,本发明实施例中,所述根据预设判断规则确定每一所述初始调用链的连通状态还包括:
获取每一所述初始调用链的路径状态信息,当所述路径状态信息为阻塞状态时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
具体的,本发明实施例中,还可以记录每一调用链的路径状态信息,当获取到初始调用链的路径状态信息为阻塞状态时,说明该初始调用链当前不可用,此时可以直接将其的连通状态确定为不连通,否则将其的连通状态确定为连通。
作为一种较优的实施方式,本发明实施例中,所述接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链包括:
S101:接收用户发出的业务请求,确定所述业务请求对应的目标服务以及所述用户所在的当前节点;
S102:根据预设的节点与服务的对应关系确定与所述目标服务对应的目标节点;
S103:根据所述当前节点以及所述目标节点,生成与所述业务请求对应的多条初始调用链。
具体的,由于不同的服务对应的目标节点有可能不同,用户所在的当前节点与目标服务对应的目标节点是组成调用链的重要部分。因此,在接收到用户发出的业务请求后,首先需要确定该业务请求对应的目标服务以及用户所在的当前节点。其次,需要根据目标服务确定对应的目标节点,具体实施时,预先维护一份节点与服务的对应关系,通过查找该节点与服务的对应关系确定目标服务对应的目标节点。最后从当前节点开始,串联出从当前节点到目标节点所有可能的调用路径,生成与业务请求对应的多条初始调用链供后续使用。
作为一种较优的实施方式,本发明实施例中,当所述用户通过所述最优调用链访问所述目标服务返回故障时,所述方法还包括:
接收用户发出的最优调用链的故障信息,将所述最优调用链的路径状态信息标记为阻塞状态。
具体的,当用户通过上述步骤获取到的最优调用链访问目标服务返回故障时,可以将该故障信息返回给系统,系统接收用户发出的最优调用链的故障信息后,将该最优调用链的路径状态信息标记为阻塞状态,以提醒该条调用链当前不可用。
作为一种较优的实施方式,本发明实施例中,所述方法还包括:
根据实时采集的每一所述初始调用链对应的性能数据以及预设路由策略从所述多条初始调用链中重新确定所述业务请求对应的最优调用链反馈给所述用户。
具体的,当用户通过该最优调用链访问目标服务返回故障时,可以按照上述步骤S2-S3重新根据实时采集的每一初始调用链对应的性能数据以及预设路由策略从剩余的多条初始调用链中重新确定一条新的最优调用链反馈给用户,以供用户通过该新的最优调用链访问目标服务。
作为一种较优的实施方式,本发明实施例中,所述方法还包括:
根据所述最优调用链中记录的链路信息,生成所述最优调用链的调用拓扑图。
具体的,本发明实施例中,还会对各个调用链的链路信息进行记录,其中,链路信息包括但不限于每一个节点(或环节)的信息。根据记录的链路信息,生成该最优调用链的调用拓扑图,通过这张拓扑图可以直观地了解系统中的各个服务之间的调用关系,以及系统依赖了哪些服务,便于架构师掌握系统的状态。并且由于记录了请求在调用链上每一个环节的信息,可以通过这个来找出系统的瓶颈,做出针对性的改进。还可以分析这个调用路径是否合理,是否调用了不必要的服务节点,是否有更近、响应更快的服务节点。
图2是根据一示例性实施例示出的调用链的确定装置的结构示意图,参照图2所示,该装置包括:
路径确定模块,用于接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
性能分析模块,用于对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
路径筛选模块,用于根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
路径反馈模块,用于将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
作为一种较优的实施方式,本发明实施例中,所述路径筛选模块包括:
状态确定单元,用于根据预设判断规则确定每一所述初始调用链的连通状态,所述连通状态包括连通和不连通;
性能评分单元,用于根据所述分析结果以及预设评分规则确定每一所述初始调用链对应的性能得分;
路径筛选单元,用于确定性能得分最高且连通状态为连通的所述初始调用链为所述业务请求对应的最优调用链。
作为一种较优的实施方式,本发明实施例中,所述状态确定单元具体用于:
获取每一所述初始调用链的故障次数,当所述故障次数超过预设阈值时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
作为一种较优的实施方式,本发明实施例中,所述状态确定单元具体用于:
获取每一所述初始调用链的路径状态信息,当所述路径状态信息为阻塞状态时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
作为一种较优的实施方式,本发明实施例中,所述路径确定模块具体用于:
接收用户发出的业务请求,确定所述业务请求对应的目标服务以及所述用户所在的当前节点;
根据预设的节点与服务的对应关系确定与所述目标服务对应的目标节点;
根据所述当前节点以及所述目标节点,生成与所述业务请求对应的多条初始调用链。
作为一种较优的实施方式,本发明实施例中,所述装置还包括:
状态标记模块,用于接收用户发出的最优调用链的故障信息,将所述最优调用链的路径状态信息标记为阻塞状态。
作为一种较优的实施方式,本发明实施例中,所述装置还包括:
路径更新模块,用于根据实时采集的每一所述初始调用链对应的性能数据以及预设路由策略从所述多条初始调用链中重新确定所述业务请求对应的最优调用链反馈给所述用户。
作为一种较优的实施方式,本发明实施例中,所述装置还包括:
图像生成模块,用于根据所述最优调用链中记录的链路信息,生成所述最优调用链的调用拓扑图。
图3是根据一示例性实施例示出的计算机设备的内部结构示意图,参照图3所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种执行计划的优化方法。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
作为一种较优的实施方式,本发明实施例中,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
根据预设判断规则确定每一所述初始调用链的连通状态,所述连通状态包括连通和不连通;
根据所述分析结果以及预设评分规则确定每一所述初始调用链对应的性能得分;
确定性能得分最高且连通状态为连通的所述初始调用链为所述业务请求对应的最优调用链。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
获取每一所述初始调用链的故障次数,当所述故障次数超过预设阈值时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
获取每一所述初始调用链的路径状态信息,当所述路径状态信息为阻塞状态时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
接收用户发出的业务请求,确定所述业务请求对应的目标服务以及所述用户所在的当前节点;
根据预设的节点与服务的对应关系确定与所述目标服务对应的目标节点;
根据所述当前节点以及所述目标节点,生成与所述业务请求对应的多条初始调用链。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
接收用户发出的最优调用链的故障信息,将所述最优调用链的路径状态信息标记为阻塞状态。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
根据实时采集的每一所述初始调用链对应的性能数据以及预设路由策略从所述多条初始调用链中重新确定所述业务请求对应的最优调用链反馈给所述用户。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
根据所述最优调用链中记录的链路信息,生成所述最优调用链的调用拓扑图。
本发明实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如下步骤:
接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
根据预设判断规则确定每一所述初始调用链的连通状态,所述连通状态包括连通和不连通;
根据所述分析结果以及预设评分规则确定每一所述初始调用链对应的性能得分;
确定性能得分最高且连通状态为连通的所述初始调用链为所述业务请求对应的最优调用链。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
获取每一所述初始调用链的故障次数,当所述故障次数超过预设阈值时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
获取每一所述初始调用链的路径状态信息,当所述路径状态信息为阻塞状态时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
接收用户发出的业务请求,确定所述业务请求对应的目标服务以及所述用户所在的当前节点;
根据预设的节点与服务的对应关系确定与所述目标服务对应的目标节点;
根据所述当前节点以及所述目标节点,生成与所述业务请求对应的多条初始调用链。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
接收用户发出的最优调用链的故障信息,将所述最优调用链的路径状态信息标记为阻塞状态。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
根据实时采集的每一所述初始调用链对应的性能数据以及预设路由策略从所述多条初始调用链中重新确定所述业务请求对应的最优调用链反馈给所述用户。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
根据所述最优调用链中记录的链路信息,生成所述最优调用链的调用拓扑图。
综上所述,本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的调用链的确定方法、装置、计算机设备及存储介质,通过接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链,对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果,根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链,将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务,从而响应于用户的业务请求,从多条调用链中确定出最优质的调用链,从而提高系统的性能以及响应速度。
需要说明的是:上述实施例提供的调用链的确定装置在触发调用链确定业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的调用链的确定装置与调用链的确定方法实施例属于同一构思,即该装置是基于该调用链的确定方法的,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种调用链的确定方法,其特征在于,所述方法包括如下步骤:
接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
2.根据权利要求1所述的调用链的确定方法,其特征在于,所述根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链包括:
根据预设判断规则确定每一所述初始调用链的连通状态,所述连通状态包括连通和不连通;
根据所述分析结果以及预设评分规则确定每一所述初始调用链对应的性能得分;
确定性能得分最高且连通状态为连通的所述初始调用链为所述业务请求对应的最优调用链。
3.根据权利要求2所述的调用链的确定方法,其特征在于,所述根据预设判断规则确定每一所述初始调用链的连通状态包括:
获取每一所述初始调用链的故障次数,当所述故障次数超过预设阈值时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
4.根据权利要求2所述的调用链的确定方法,其特征在于,所述根据预设判断规则确定每一所述初始调用链的连通状态还包括:
获取每一所述初始调用链的路径状态信息,当所述路径状态信息为阻塞状态时,确定对应的初始调用链的连通状态为不连通,否则,确定对应的初始调用链的连通状态为连通。
5.根据权利要求1至4任一所述的调用链的确定方法,其特征在于,所述接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链包括:
接收用户发出的业务请求,确定所述业务请求对应的目标服务以及所述用户所在的当前节点;
根据预设的节点与服务的对应关系确定与所述目标服务对应的目标节点;
根据所述当前节点以及所述目标节点,生成与所述业务请求对应的多条初始调用链。
6.根据权利要求1至4任一所述的调用链的确定方法,其特征在于,当所述用户通过所述最优调用链访问所述目标服务返回故障时,所述方法还包括:
接收用户发出的最优调用链的故障信息,将所述最优调用链的路径状态信息标记为阻塞状态。
7.根据权利要求6所述的调用链的确定方法,其特征在于,所述方法还包括:
根据实时采集的每一所述初始调用链对应的性能数据以及预设路由策略从所述多条初始调用链中重新确定所述业务请求对应的最优调用链反馈给所述用户。
8.一种调用链的确定装置,其特征在于,所述装置包括:
路径确定模块,用于接收用户发出的业务请求,根据所述业务请求对应的目标服务确定符合所述业务请求的多条初始调用链;
性能分析模块,用于对实时采集的每一所述初始调用链对应的性能数据及成本数据进行分析,获取分析结果;
路径筛选模块,用于根据所述分析结果以及预设路由策略从所述多条初始调用链中确定所述业务请求对应的最优调用链;
路径反馈模块,用于将所述最优调用链反馈给所述用户,以便所述用户通过所述最优调用链访问所述目标服务。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110116238.0A CN112783673A (zh) | 2021-01-27 | 2021-01-27 | 一种调用链的确定方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110116238.0A CN112783673A (zh) | 2021-01-27 | 2021-01-27 | 一种调用链的确定方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112783673A true CN112783673A (zh) | 2021-05-11 |
Family
ID=75759275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110116238.0A Pending CN112783673A (zh) | 2021-01-27 | 2021-01-27 | 一种调用链的确定方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112783673A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113568753A (zh) * | 2021-07-30 | 2021-10-29 | 北京天融信网络安全技术有限公司 | 访问路径确定方法、装置、电子设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768716A (zh) * | 2018-05-22 | 2018-11-06 | 北京邮电大学 | 一种微服务路径选择方法及装置 |
CN109873717A (zh) * | 2019-01-18 | 2019-06-11 | 深圳壹账通智能科技有限公司 | 监控方法、装置、计算机设备及存储介质 |
CN109981765A (zh) * | 2019-03-18 | 2019-07-05 | 北京百度网讯科技有限公司 | 用于确定内容分发网络的访问路径的方法和装置 |
CN109995817A (zh) * | 2017-12-29 | 2019-07-09 | 中移信息技术有限公司 | 一种服务调度方法及装置 |
CN111327539A (zh) * | 2018-12-17 | 2020-06-23 | 中国移动通信集团福建有限公司 | 一种业务调度的方法、装置及设备 |
CN111884932A (zh) * | 2020-07-06 | 2020-11-03 | 北京奇艺世纪科技有限公司 | 一种链路确定方法、装置、设备和计算机可读存储介质 |
-
2021
- 2021-01-27 CN CN202110116238.0A patent/CN112783673A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109995817A (zh) * | 2017-12-29 | 2019-07-09 | 中移信息技术有限公司 | 一种服务调度方法及装置 |
CN108768716A (zh) * | 2018-05-22 | 2018-11-06 | 北京邮电大学 | 一种微服务路径选择方法及装置 |
CN111327539A (zh) * | 2018-12-17 | 2020-06-23 | 中国移动通信集团福建有限公司 | 一种业务调度的方法、装置及设备 |
CN109873717A (zh) * | 2019-01-18 | 2019-06-11 | 深圳壹账通智能科技有限公司 | 监控方法、装置、计算机设备及存储介质 |
CN109981765A (zh) * | 2019-03-18 | 2019-07-05 | 北京百度网讯科技有限公司 | 用于确定内容分发网络的访问路径的方法和装置 |
CN111884932A (zh) * | 2020-07-06 | 2020-11-03 | 北京奇艺世纪科技有限公司 | 一种链路确定方法、装置、设备和计算机可读存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113568753A (zh) * | 2021-07-30 | 2021-10-29 | 北京天融信网络安全技术有限公司 | 访问路径确定方法、装置、电子设备及可读存储介质 |
CN113568753B (zh) * | 2021-07-30 | 2024-02-09 | 北京天融信网络安全技术有限公司 | 访问路径确定方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109240830B (zh) | 基于服务器健康以及客户端信息的应用智能请求管理 | |
US20210012239A1 (en) | Automated generation of machine learning models for network evaluation | |
EP3151483B1 (en) | Path planning method and controller | |
CN110798517B (zh) | 去中心化集群负载均衡方法、系统、移动终端及存储介质 | |
US9740534B2 (en) | System for controlling resources, control pattern generation apparatus, control apparatus, method for controlling resources and program | |
US20160234234A1 (en) | Orchestrating the Use of Network Resources in Software Defined Networking Applications | |
EP2753044A1 (en) | Method and device for resource matching in vpc migration | |
US20160050148A1 (en) | Controlling the reactive caching of wildcard rules for packet processing, such as flow processing in software-defined networks | |
EP3611622B1 (en) | Technologies for classifying network flows using adaptive virtual routing | |
CN112532408B (zh) | 提取故障传播条件的方法、装置及存储介质 | |
US20160269428A1 (en) | Data processing | |
US20140133302A1 (en) | Tuning routing metrics to reduce maximum link utilization and end-to-end delay violations | |
Bhowmik et al. | Distributed control plane for software-defined networks: A case study using event-based middleware | |
CN108347377B (zh) | 数据转发方法及装置 | |
US11695856B2 (en) | Scheduling solution configuration method and apparatus, computer readable storage medium thereof, and computer device | |
CN112783673A (zh) | 一种调用链的确定方法、装置、计算机设备及存储介质 | |
WO2018137710A1 (zh) | 搜索控制方法和系统 | |
CN109714208A (zh) | 一种设备纳入网管的方法、存储介质及电子设备 | |
EP3716544B1 (en) | Utilizing segment routing data and network data to determine optimized network plans and to implement an optimized network plan | |
Iranmanesh et al. | A protocol for cluster confirmations of SDN controllers against DDoS attacks | |
CN116723154A (zh) | 一种基于负载均衡的路由分发方法及系统 | |
CN115361295B (zh) | 基于topsis的资源备份方法、装置、设备及介质 | |
CN113395183B (zh) | 网络仿真平台vlan互联的虚拟节点调度方法与系统 | |
CN114006764B (zh) | 一种基于超融合系统的安全网元的部署方法和装置 | |
CN113452575B (zh) | 业务测试方法、系统、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |