[发明专利]服务降级方法、装置、电子设备及存储介质在审
申请号: | 202111640672.5 | 申请日: | 2021-12-29 |
公开(公告)号: | CN114490151A | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 王凯 | 申请(专利权)人: | 贝壳找房网(北京)信息技术有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 李文清 |
地址: | 101500 北京市密云区经济开发区兴盛南路*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 服务 降级 方法 装置 电子设备 存储 介质 | ||
本发明提供一种服务降级方法、装置、电子设备及存储介质,通过在外部服务可用时,调用并执行外部服务的方法体,以使方法体返回目标服务所需的目标数据并存储至缓存中;进而,在外部服务不可用时,直接根据缓存中存储的目标数据对目标服务进行降级处理。如此可以快速灵活的自动实现对目标服务的降级处理,当外部接口不可用时,业务方的接口性能不受影响,提高系统稳定性。
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种服务降级方法、装置、电子设备及存储介质。
背景技术
随着微服务技术的推广,导致系统中不同服务之间依赖较严重,常常某一个单独服务不可用,会导致很多其他服务不可用。为了解决这个问题,需要每个服务针对外部服务的接口功能进行降级处理,从而实现某一服务不可用时,其他服务开启降级模式,即虽仍然依赖外部服务,但不受外部服务不可用的影响。
目前,服务降级的实现方案在正常的调用外部接口代码中,插入大量的降级逻辑代码,用于将数据存入缓存中,同时外部接口不可用时,从缓存中获取数据,避免外部接口不可用时带来的影响。
以上实现方案存在以下不足:
(1)对业务代码侵入性较高,会改变原有的代码结构;
(2)对批量操作的接口性能较差,命中缓存率较低;
(3)与其他业务组件的整合性较难,需要进行大量的代码改造进行适配。
为此,现急需提供一种服务降级方法。
发明内容
本发明提供一种服务降级方法、装置、电子设备及存储介质,用以解决现有技术中存在的缺陷。
本发明提供一种服务降级方法,包括:
确定目标服务所需的目标数据的数据来源;
响应于所述数据来源为外部服务,判断所述外部服务是否可用;
响应于所述外部服务可用,则调用并执行所述外部服务的方法体,以使所述方法体返回所述目标数据;
确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的关键字,将所述目标数据与所述关键字存储至缓存中;
响应于所述外部服务不可用,则基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理。
根据本发明提供的一种服务降级方法,还包括:
响应于所述数据来源为缓存,则确定所述目标服务内配置的预设操作接口的接口参数,并基于所述接口参数,确定所述目标数据对应的关键字;
基于所述关键字,在所述缓存中查找所述目标数据。
根据本发明提供的一种服务降级方法,所述基于所述缓存中存储的所述目标数据与所述关键字,对所述目标服务进行降级处理,具体包括:
基于所述关键字,在所述缓存中查找所述目标数据,以使所述目标服务处于降级模式。
根据本发明提供的一种服务降级方法,所述确定所述目标服务内配置的预设操作接口的接口参数,具体包括:
获取所述预设操作接口的注解信息;
基于所述注解信息,确定所述接口参数,所述接口参数包括关键字参数。
根据本发明提供的一种服务降级方法,所述关键字参数与关键字生成方法相对应;
相应地,所述基于所述接口参数,确定所述目标数据对应的关键字,具体包括:
确定所述关键字参数对应的关键字生成方法;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贝壳找房网(北京)信息技术有限公司,未经贝壳找房网(北京)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111640672.5/2.html,转载请声明来源钻瓜专利网。