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

技术编号:39128324 阅读:10 留言:0更新日期:2023-10-23 14:49
本发明专利技术提供一种服务降级容错方法、装置、电子设备及存储介质,通过通过动态开关统一监测服务状态;若服务状态达到预设阈值,则控制降级标识触发服务降级;响应预设服务降级策略,记录依赖服务信息;主服务请求调用依赖服务信息执行服务操作。如此可以解决解决服务降级导致的服务功能不可用,提高了系统的稳定性。性。性。

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


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

技术介绍

[0002]目前随着业务的发展,分布式微服务逐渐普及,网站的服务器经常会遇到在某个时刻流量突然增大的情况,会导致系统异常、高并发或其他不可控的情况,服务降级允许我们有针对性地减少服务的功能或质量,以保证整体系统的稳定性和可用性。服务降级可以在高负载或异常情况下,服务降级可以减轻系统的负担,防止系统因过度负载而崩溃或响应变慢。通过暂时关闭某些功能,系统可以专注于保持核心功能的正常运行。
[0003]但是当下游的依赖服务因服务降级导致不可用,会导致积压大量请求,造成请求线程阻塞,最终导致调用链路被拖垮。为了避免调用链路被拖垮,可以开启服务熔断,在固定时间窗口内,接口调用超时比率达到一个阈值,会开启熔断。进入熔断状态后,后续对该服务接口的调用不再经过网络,直接执行本地的默认方法,达到服务降级的效果。例如双11购物节,淘宝订单通过降级地址编辑服务,保证了订单提交的正常运行。客户只能通过默认地址下单,不能够变更发货地址。虽然保证了交易订单的操作,但是这将会影响用户的购买体验。
[0004]现急需提供一种灵活解决服务降级导致的服务功能不可用的方法。

技术实现思路

[0005]本专利技术提供一种服务降级容错方法、装置、电子设备及存储介质,用以解决现有技术中存在的缺陷。
[0006]本专利技术提供一种服务降级容错方法,包括:
[0007]通过动态开关统一监测服务状态;
[0008]若服务状态达到预设阈值,则控制降级标识触发服务降级;
[0009]响应预设服务降级策略,记录依赖服务信息;
[0010]主服务请求调用依赖服务信息执行服务操作。
[0011]根据本专利技术提供的一种服务降级容错方法,所述响应预设服务降级策略,记录依赖服务信息,具体包括:
[0012]执行补偿服务降级策略,记录服务请求操作参数,所述操作参数包括降级标识、时间戳、参与者信息、相关数据或状态;
[0013]当依赖服务降级恢复,通过定时任务方式请求依赖服务,触发补偿操作,依赖服务恢复正常流程。
[0014]根据本专利技术提供的一种服务降级容错方法,所述响应预设服务降级策略,记录依赖服务信息,具体包括:
[0015]执行缓存服务降级策略,将依赖服务的数据存储至缓存中,保存依赖服务的数据
到本地表。
[0016]根据本专利技术提供的一种服务降级容错方法,所述通过动态开关统一监测服务状态,具体包括:
[0017]初始化降级标识;基于AOP原理声明异常切面类;在所述异常切面类中定义切入点位置;基于所述切入点位置捕捉异常,异常可以是RpcException异常、token异常、鉴权失败中的一个或多个;基于单位时间内捕捉到的异常作为当前的服务状态。
[0018]根据本专利技术提供的一种服务降级容错方法,还包括:
[0019]若服务降级,则启动定时任务器,预设轮询间隔时间循环调用服务,当轮询间隔内成功调用服务满足预设数值范围,则唤醒服务升级。
[0020]根据本专利技术提供的一种服务降级容错方法,还包括:
[0021]基于当前网络状况,响应当前服务异常,触发服务告警策略,调整服务降级模式。
[0022]根据本专利技术提供的一种服务降级容错方法,所述响应预设服务降级策略,记录依赖服务信息,具体包括:
[0023]将依赖服务信息进行序列化处理,得到json数据,将所述json数据存储至所述缓存中。
[0024]本专利技术还提供一种服务降级容错装置,包括:
[0025]监测模块,用于通过动态开关统一监测服务状态;
[0026]判断模块,用于若服务状态达到预设阈值,则控制降级标识触发服务降级;
[0027]存储模块,用于响应预设服务降级策略,记录依赖服务信息;
[0028]执行处理模块,用于主服务请求调用依赖服务信息执行服务操作。
[0029]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述服务降级容错方法的步骤。
[0030]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述服务降级容错方法的步骤。
[0031]本专利技术提供的服务降级方法、装置、电子设备及存储介质,通过在统一监测拦截服务状态,若服务状态达到预设阈值,则控制降级标识触发服务降级;根据不同服务类型,选择不同策略记录依赖服务信息,包括执行补偿服务降级策略和缓存服务降级策略,从而解决服务降级导致的服务功能不可用。
附图说明
[0032]通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
[0033]图1是本专利技术提供的服务降级容错方法的流程示意图;
[0034]图2是本专利技术提供的监测服务状态的流程示意图;
[0035]图3是本专利技术提供的服务降级容错装置的结构示意图;
[0036]图4是本专利技术提供的服务降级容错方法的电子设备的方框图。
具体实施方式
[0037]以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性
的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
[0038]在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
[0039]在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
[0040]在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。术语“第一”、“第二”仅用于命名区分,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。
[0041]由于现有技术中存在的服务降级容错方案存在诸多问题,为此,本专利技术实施例中提供了一种服务降级容错方法。
[0042]图1为本专利技术实施例中提供的服务降级容本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务降级容错方法,其特征在于,包括:通过动态开关统一监测服务状态;若服务状态达到预设阈值,则控制降级标识触发服务降级;响应预设服务降级策略,记录依赖服务信息;主服务请求调用依赖服务信息执行服务操作。2.根据权利要求1所述的服务降级容错方法,其特征在于,所述响应预设服务降级策略,记录依赖服务信息,具体包括:执行补偿服务降级策略,记录服务请求操作参数,所述操作参数包括降级标识、时间戳、参与者信息、相关数据或状态;当依赖服务降级恢复,通过定时任务方式请求依赖服务,触发补偿操作,依赖服务恢复正常流程。3.根据权利要求2所述的服务降级容错方法,其特征在于,所述响应预设服务降级策略,记录依赖服务信息,具体包括:执行缓存服务降级策略,将依赖服务的数据存储至缓存中,保存依赖服务的数据到本地表。4.根据权利要求1所述的服务降级容错方法,其特征在于,所述通过动态开关统一监测服务状态,具体包括:初始化降级标识;基于AOP原理声明异常切面类;在所述异常切面类中定义切入点位置;基于所述切入点位置捕捉异常,异常可以是RpcException异常、token异常、鉴权失败中的一个或多个;基于单位时间内捕捉到的异...

【专利技术属性】
技术研发人员:王芙云
申请(专利权)人:百安居网络技术上海有限公司
类型:发明
国别省市:

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

1