[发明专利]预防微服务雪崩的服务调用控制方法、装置及存储介质在审
| 申请号: | 202210681838.6 | 申请日: | 2022-06-15 |
| 公开(公告)号: | CN114996041A | 公开(公告)日: | 2022-09-02 |
| 发明(设计)人: | 赵春球;杨峰 | 申请(专利权)人: | 湖南喜宝达信息科技有限公司 |
| 主分类号: | G06F11/00 | 分类号: | G06F11/00;G06F8/71 |
| 代理公司: | 长沙知行亦创知识产权代理事务所(普通合伙) 43240 | 代理人: | 严理佳 |
| 地址: | 410000 湖南省长沙市高*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 预防 微服 雪崩 服务 调用 控制 方法 装置 存储 介质 | ||
本发明提供了一种预防微服务雪崩的服务调用控制方法、装置及存储介质,通过在业务代码块中通过添加注解的方式引入熔断策略,所述熔断策略包括在单位时间内的微服务应用出现服务调用失败的次数达到预设的请求阈值时,启动服务熔断;所述业务代码块执行过程中,实时计算单位时间内的微服务应用出现服务调用失败的次数,并在所述次数达到所述预设请求阈值时,直接执行注解所引入的所述熔断策略,解决任务堆积导致服务瘫痪甚至雪崩,增加维护成本和人员劳动力成本的问题。
技术领域
本发明涉及互联网微服务技术领域,尤其涉及一种预防微服务雪崩的服务调用控制方法、装置及存储介质。
背景技术
在微服务架构中,可以将业务拆分成一个个的服务,服务与服务之间可以相互调用,但是由于网络原因或者自身的原因,微服务并不能保证服务的100%可用性,如果单个服务出现问题,调用这个服务就会出现网络延迟,此时若有大量的请求涌入,则会形成请求任务堆积,最终导致服务瘫痪,甚至雪崩,维护成本和人员劳动力成本也会随之增加。
鉴于此,有必要提供一种预防微服务雪崩的服务调用控制方法,以解决或至少缓解上述任务堆积导致服务瘫痪甚至雪崩,增加维护成本和人员劳动力成本的缺陷。
发明内容
本发明的主要目的是提供一种预防微服务雪崩的服务调用控制方法,旨在解决上述任务堆积导致服务瘫痪甚至雪崩,增加维护成本和人员劳动力成本的技术问题。
为实现上述目的,本发明提供了一种预防微服务雪崩的服务调用控制方法,包括步骤:
S1,在通过Spring Cloud框架开发微服务应用时,在业务代码块中通过添加注解的方式引入熔断策略,所述熔断策略包括在单位时间内的微服务应用出现服务调用失败的次数达到预设的请求阈值时,启动服务熔断;
S2,所述业务代码块执行过程中,实时计算单位时间内的微服务应用出现服务调用失败的次数,并在所述次数达到所述预设请求阈值时,直接执行注解所引入的所述熔断策略,并将所述服务调用失败的信息记录;
S3,在所述服务恢复时,关闭服务熔断。
进一步地,所述步骤S1还包括Spring Cloud框架开发的微服务应用在配置中心里进行注册并交由所述配置中心管理。
进一步地,在所述业务代码块执行过程中,当所述服务调用失败时,所述配置中心通过对应的计数器对所述服务调用失败的次数进行统计。
进一步地,所述步骤S2还包括:所述配置中心统计的所述服务调用失败的次数达到所述预设请求阈值时,通过所述配置中心发出指令对所述服务的优先级优先进行服务降级处理。
进一步地,所述步骤S2之后还包括:通过日志的方式对所述调用失败的信息进行记录,以及通过友好的提示信息将所述调用失败的信息显示在用户所访问的界面上。
进一步地,所述步骤S3还包括步骤:
S30,判断所述服务能否向所述配置中心发送更新通知;
S31,所述服务能够向所述配置中心发送更新通知,则所述服务调用成功,判断所述服务恢复,并关闭服务熔断;
S32,所述服务不能向所述配置中心发送更新通知时,则判断所述服务仍然调用失败,并返回步骤S2。
进一步地,所述服务降级的步骤包括:首先对同一类型的所述服务进行优先级排序,然后对在预设的单位时间与请求阈值内,调用失败的所述服务进行降级,同时将比同一类型的所述服务优先级低的所述服务进行升级;其中,同一类型的所述服务是一个集群,包括多个服务。
进一步地,所述服务恢复的步骤包括:被降级处理的所述服务的优先级恢复。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南喜宝达信息科技有限公司,未经湖南喜宝达信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210681838.6/2.html,转载请声明来源钻瓜专利网。





