服务降级方法、装置、电子设备及存储介质制造方法及图纸

技术编号:33531974 阅读:16 留言:0更新日期:2022-05-19 02:04
本发明专利技术提供一种服务降级方法、装置、电子设备及存储介质,通过在外部服务可用时,调用并执行外部服务的方法体,以使方法体返回目标服务所需的目标数据并存储至缓存中;进而,在外部服务不可用时,直接根据缓存中存储的目标数据对目标服务进行降级处理。如此可以快速灵活的自动实现对目标服务的降级处理,当外部接口不可用时,业务方的接口性能不受影响,提高系统稳定性。系统稳定性。系统稳定性。

【技术实现步骤摘要】
服务降级方法、装置、电子设备及存储介质


[0001]本专利技术涉及计算机软件
,尤其涉及一种服务降级方法、装置、电子设备及存储介质。

技术介绍

[0002]随着微服务技术的推广,导致系统中不同服务之间依赖较严重,常常某一个单独服务不可用,会导致很多其他服务不可用。为了解决这个问题,需要每个服务针对外部服务的接口功能进行降级处理,从而实现某一服务不可用时,其他服务开启降级模式,即虽仍然依赖外部服务,但不受外部服务不可用的影响。
[0003]目前,服务降级的实现方案在正常的调用外部接口代码中,插入大量的降级逻辑代码,用于将数据存入缓存中,同时外部接口不可用时,从缓存中获取数据,避免外部接口不可用时带来的影响。
[0004]以上实现方案存在以下不足:
[0005](1)对业务代码侵入性较高,会改变原有的代码结构;
[0006](2)对批量操作的接口性能较差,命中缓存率较低;
[0007](3)与其他业务组件的整合性较难,需要进行大量的代码改造进行适配。
[0008]为此,现急需提供一种服务降级方法。

技术实现思路

[0009]本专利技术提供一种服务降级方法、装置、电子设备及存储介质,用以解决现有技术中存在的缺陷。
[0010]本专利技术提供一种服务降级方法,包括:
[0011]确定目标服务所需的目标数据的数据来源;
[0012]响应于所述数据来源为外部服务,判断所述外部服务是否可用;
[0013]响应于所述外部服务可用,则调用并执行所述外部服务的方法体,以使所述方法体返回所述目标数据;
[0014]确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的关键字,将所述目标数据与所述关键字存储至缓存中;
[0015]响应于所述外部服务不可用,则基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理。
[0016]根据本专利技术提供的一种服务降级方法,还包括:
[0017]响应于所述数据来源为缓存,则确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的关键字;
[0018]基于所述关键字,在所述缓存中查找所述目标数据。
[0019]根据本专利技术提供的一种服务降级方法,所述基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理,具体包括:
[0020]基于所述关键字,在所述缓存中查找所述目标数据,以使所述目标服务处于降级模式。
[0021]根据本专利技术提供的一种服务降级方法,所述确定所述目标服务内配置的预设操作接口的接口参数,具体包括:
[0022]获取所述预设操作接口的注解信息;
[0023]基于所述注解信息,确定所述接口参数,所述接口参数包括关键字参数。
[0024]根据本专利技术提供的一种服务降级方法,所述关键字参数与关键字生成方法相对应;
[0025]相应地,所述基于所述接口参数,确定所述目标数据对应的关键字,具体包括:
[0026]确定所述关键字参数对应的关键字生成方法;
[0027]基于所述关键字生成方法,确定所述目标数据对应的关键字。
[0028]根据本专利技术提供的一种服务降级方法,所述方法基于所述预设操作接口以及所述注解信息,采用动态代理类实现。
[0029]根据本专利技术提供的一种服务降级方法,所述将所述目标数据与所述关键字存储至缓存中,具体包括:
[0030]将所述目标数据进行序列化处理,得到json数据;
[0031]将所述json数据与所述关键字存储至所述缓存中。
[0032]本专利技术还提供一种服务降级装置,包括:
[0033]数据来源确定模块,用于确定目标服务所需的目标数据的数据来源;
[0034]判断模块,用于响应于所述数据来源为外部服务,判断所述外部服务是否可用;
[0035]调用执行模块,用于响应于所述外部服务可用,则调用并执行所述外部服务的方法体,以使所述方法体返回所述目标数据;
[0036]存储模块,用于确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的关键字,将所述目标数据与所述关键字存储至缓存中;
[0037]降级处理模块,用于响应于所述外部服务不可用,则基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理。
[0038]本专利技术还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述服务降级方法的步骤。
[0039]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述服务降级方法的步骤。
[0040]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述服务降级方法的步骤。
[0041]本专利技术提供的服务降级方法、装置、电子设备及存储介质,通过在外部服务可用时,调用并执行外部服务的方法体,以使方法体返回目标服务所需的目标数据并存储至缓存中;进而,在外部服务不可用时,直接根据缓存中存储的目标数据对目标服务进行降级处理。如此可以快速灵活的自动实现对目标服务的降级处理,当外部接口不可用时,业务方的接口性能不受影响,提高系统稳定性。
附图说明
[0042]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0043]图1是本专利技术提供的服务降级方法的流程示意图之一;
[0044]图2是本专利技术提供的服务降级方法的流程示意图之二;
[0045]图3是本专利技术提供的服务降级装置的结构示意图;
[0046]图4是本专利技术提供的电子设备的结构示意图。
具体实施方式
[0047]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术中的附图,对本专利技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0048]由于现有技术中存在的服务降级方案存在诸多问题,为此,本专利技术实施例中提供了一种服务降级方法。
[0049]图1为本专利技术实施例中提供的服务降级方法的流程示意图,如图1所示,该方法包括:
[0050]S1,确定目标服务所需的目标数据的数据来源;
[0051]S2,响应于所述数据来源为外部服务,判断所述外部服务是否可用;
[0052]S3,响应于所述外本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务降级方法,其特征在于,包括:确定目标服务所需的目标数据的数据来源;响应于所述数据来源为外部服务,判断所述外部服务是否可用;响应于所述外部服务可用,则调用并执行所述外部服务的方法体,以使所述方法体返回所述目标数据;确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的关键字,将所述目标数据与所述关键字存储至缓存中;响应于所述外部服务不可用,则基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理。2.根据权利要求1所述的服务降级方法,其特征在于,还包括:响应于所述数据来源为所述缓存,则确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的所述关键字;基于所述关键字,在所述缓存中查找所述目标数据。3.根据权利要求1所述的服务降级方法,其特征在于,所述基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理,具体包括:基于所述关键字,在所述缓存中查找所述目标数据,以使所述目标服务处于降级模式。4.根据权利要求1所述的服务降级方法,其特征在于,所述确定所述目标服务内配置的预设操作接口的接口参数,具体包括:获取所述预设操作接口的注解信息;基于所述注解信息,确定所述接口参数,所述...

【专利技术属性】
技术研发人员:王凯
申请(专利权)人:贝壳找房网北京信息技术有限公司
类型:发明
国别省市:

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

1