调用链资源隔离方法、装置、存储介质和电子设备制造方法及图纸

技术编号:31679187 阅读:28 留言:0更新日期:2022-01-01 10:24
本公开涉及调用链资源隔离方法、装置、存储介质和电子设备。上述调用链资源隔离方法包括确定调用链关联的至少两个第一实例资源,各个所述第一实例资源位于不同的调用链节点;获取所述调用链对应的第一标签,所述第一标签指向所述调用链关联资源所对应的分区;针对所述至少两个第一实例资源中的每一第一实例资源,将所述第一标签对应的标签值注入所述第一实例资源,得到所述第一实例资源对应的第二实例资源;调用至少两个所述第二实例资源,以实现所述调用链的调用。本公开不需要应用部署多套环境来实现资源隔离的要求,以及应用维护集中化的隔离规则配置,在应用启动阶段即可自动完成隔离资源的规则定制和调用链自动隔离。成隔离资源的规则定制和调用链自动隔离。成隔离资源的规则定制和调用链自动隔离。

【技术实现步骤摘要】
调用链资源隔离方法、装置、存储介质和电子设备


[0001]本公开涉及资源隔离
,尤其涉及调用链资源隔离方法、装置、存储介质和电子设备。

技术介绍

[0002]应用软件开发在微服务化的趋势下,系统架构呈现多模块化、复杂化,应用调用链路也变得更加冗长,架构的变化造成应用多功能并行测试和发布过程中,面临功能测试和发布效果无法跟踪的问题,因此产生了对有限的应用实例资源实现资源隔离的需求。
[0003]传统的资源隔离方法中,往往采用在服务器上部署多套环境而造成服务器资源的消耗,或者要求应用进行侵入性的定制化改造,增加应用接入成本,并且传统的微服务隔离资源隔离方式往往需要应用本身维护复杂的资源隔离规则和条件,增加接入条件限制,增加运维成本。

技术实现思路

[0004]为了解决上述提出的至少一个技术问题,本公开提出了调用链资源隔离方法、装置、存储介质和电子设备。
[0005]根据本公开的一方面,提供了一种调用链资源隔离方法,其包括:确定调用链关联的至少两个第一实例资源,各个所述第一实例资源位于不同的调用链节点;获取所述调用链对应的第一标签,所述第一标签指向所述调用链关联资源所对应的分区;针对所述至少两个第一实例资源中的每一第一实例资源,将所述第一标签对应的标签值注入所述第一实例资源,得到所述第一实例资源对应的第二实例资源;调用至少两个所述第二实例资源,以实现所述调用链的调用。
[0006]在一些可能的实施方式中,所述调用至少两个所述第二实例资源,以实现所述调用链的调用,包括:响应于调用第一目标第二实例资源的情况,获取所述第一目标第二实例资源中的标签值,将所述标签值作为传递标签值;以及,获取所述第一目标第二示例资源所在的第一节点,所述第一目标第二实例资源为位于任一所述调用链节点的第二实例资源;获取第二节点,所述第二节点为基于所述调用链确定的、位于所述第一节点下游并与所述第一节点相邻的节点;在所述第二节点关联的实例资源中查找具备所述传递标签值的第二实例资源;响应于查询结果不为空的情况,调用所述具备所述传递标签值的第二实例资源。
[0007]在一些可能的实施方式中,所述方法还包括:响应于查询结果为空的情况;在所述第二节点关联的实例资源中确定未被注入过标签值的第三实例资源;
调用所述第三实例资源。
[0008]在一些可能的实施方式中,所述在所述第二节点关联的实例资源中确定未被注入过标签值的第三实例资源之后,所述方法还包括:将所述传递标签值注入所述第三实例资源。
[0009]在一些可能的实施方式中,所述将所述传递标签值注入所述第三实例资源,包括:响应于所述第三实例资源为应用程序实例并且所述第三实例资源基于远程进程调用框架通信的情况,将所述传递标签值存入所述远程进程调用框架的上下文信息中;响应于所述第三实例资源被调用的情况,将所述传递标签值传递到所述第三实例资源。
[0010]在一些可能的实施方式中,所述将所述传递标签值注入所述第三实例资源,包括:响应于所述第三实例资源为应用程序实例并且所述第三实例资源基于超文本传输协议进行通信的情况,将所述传递标签值存入所述超文本传输协议的报文头中;响应于所述第三实例资源被调用的情况,将所述传递标签值传递到所述第三实例资源。
[0011]在一些可能的实施方式中,所述将所述传递标签值传递到所述第三实例资源,包括:响应于所述第三实例资源为消息队列中间件的情况,将所述传递标签值存入消息属性的键值对;响应于所述第三实例资源被调用的情况,将所述传递标签值传递到所述第三实例资源。
[0012]在一些可能的实施方式中,所述将所述第一标签对应的标签值注入所述第一实例资源,包括:响应于所述实例资源为应用程序实例并且所述第一实例资源被生成的情况,从环境变量中获取所述标签值,将所述标签值注入所述第一实例资源,所述环境变量为字节增强代理插件访问的、用于存储所述标签值的变量。
[0013]根据本公开的第二方面,提供调用链资源隔离装置,所述装置包括:第一实例资源确定模块,用于确定调用链关联的至少两个第一实例资源,各个所述第一实例资源位于不同的调用链节点;第一标签获取模块,用于获取所述调用链对应的第一标签,所述第一标签指向所述调用链关联资源所对应的分区;标签值注入模块,用于针对所述至少两个第一实例资源中的每一第一实例资源,将所述第一标签对应的标签值注入所述第一实例资源,得到所述第一实例资源对应的第二实例资源;调用链实现模块,用于调用至少两个所述第二实例资源,以实现所述调用链的调用。
[0014]在一些可能的实施方式中,所述调用链模块包括:标签值获取单元,用于响应于起始第二实例资源的调用,获取所述起始第二实例资源的标签值,作为传递标签值,其中所述起始第二实例资源为所述调用链中的其中一个调用链节点;
第二实例资源判断单元,用于根据所述传递标签值,判断下游的实例资源中是否存在其他所述第二实例资源;下游实例资源调用单元,用于若存在所述第二实例资源,调用所述第二实例资源,以实现所述调用链的调用。
[0015]根据本公开的第三方面,提供了一种电子设备,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如第一方面中任意一项所述的调用链资源隔离方法。
[0016]根据本公开的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如第一方面中任意一项所述的调用链资源隔离方法。
[0017]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
[0018]实施本公开,具有如下有益效果:本公开不需要应用部署多套环境来实现资源隔离的要求,以及应用维护集中化的隔离规则配置,在应用启动阶段即可自动完成隔离资源的规则定制和调用链自动隔离,采用无侵入式的方式实现调用链路中实例资源的隔离,接入的应用无需进行二次定制改造;实现微服务场景下有限应用实例资源的隔离,满足软件开发过程中多功能并行测试、链路压测、灰度发布、蓝绿发布等应用场景下,应用实例资源的隔离需求。
[0019]根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
[0020]为了更清楚地说明本说明书实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
[0021]图1示出根据本公开实施例的一种调用链资源隔离方法的流程示意图;图2示出根据本公开实施例的应用程序隔离分区的结构示意图;图3示出根据本公开实施例的消息队列隔离分区的结构示意图;图4示出根据本公开实施例的一种调用链资源隔离装置的结构示意图;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种调用链资源隔离方法,其特征在于,所述方法包括:确定调用链关联的至少两个第一实例资源,各个所述第一实例资源位于不同的调用链节点;获取所述调用链对应的第一标签,所述第一标签指向所述调用链关联资源所对应的分区;针对所述至少两个第一实例资源中的每一第一实例资源,将所述第一标签对应的标签值注入所述第一实例资源,得到所述第一实例资源对应的第二实例资源;调用至少两个所述第二实例资源,以实现所述调用链的调用。2.根据权利要求1所述的方法,其特征在于,所述调用至少两个所述第二实例资源,以实现所述调用链的调用,包括:响应于调用第一目标第二实例资源的情况,获取所述第一目标第二实例资源中的标签值,将所述标签值作为传递标签值;以及,获取所述第一目标第二示例资源所在的第一节点,所述第一目标第二实例资源为位于任一所述调用链节点的第二实例资源;获取第二节点,所述第二节点为基于所述调用链确定的、位于所述第一节点下游并与所述第一节点相邻的节点;在所述第二节点关联的实例资源中查找具备所述传递标签值的第二实例资源;响应于查询结果不为空的情况,调用所述具备所述传递标签值的第二实例资源。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:响应于查询结果为空的情况;在所述第二节点关联的实例资源中确定未被注入过标签值的第三实例资源;调用所述第三实例资源。4.根据权利要求3所述的方法,其特征在于,所述在所述第二节点关联的实例资源中确定未被注入过标签值的第三实例资源之后,所述方法还包括:将所述传递标签值注入所述第三实例资源。5.根据权利要求4所述的方法,其特征在于,所述将所述传递标签值注入所述第三实例资源,包括:响应于所述第三实例资源为应用程序实例并且所述第三实例资源基于远程进程调用框架通信的情况,将所述传递标签值存入所述远程进程调用框架的上下文信息中;响应于所述第三实例资源被调用的情况,将所述传递标签值传递到所述第三实例资源。6.根据权利要求4所述的方法,其特征在于,所述将所述传递标签值注入所述第三实例资源,包括:响应于所述第三实例资源为应用程序实例并且所述第三实例资源基于超文本传输协议进行通信的情况,将所述传递标签值存入所述超文本传输协议的报文头中;响应于所述第三实例资源被调用的情况,将所述传递标签值传递到所述第三实例资源。7.根据权利要求4所述的方法,其特...

【专利技术属性】
技术研发人员:陈俊维吕仁琦周涛明赖浩杰
申请(专利权)人:连连杭州信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1