[发明专利]应用自动降级和恢复方法和系统在审
申请号: | 201910506045.9 | 申请日: | 2019-06-12 |
公开(公告)号: | CN110297648A | 公开(公告)日: | 2019-10-01 |
发明(设计)人: | 李龙 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/71 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许振新;朱文杰 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 外部服务 服务调用请求 应用 标识符 降级 服务 调用请求 服务调用 调用 恢复 查找 响应 | ||
本公开提供了一种应用自动降级和恢复的方法和系统。所述方法包括:接收来自应用的服务调用请求,其中所述服务调用请求包括所述应用所要调用的外部服务的标识符;使用所述标识符来查找相对应的外部服务的服务异常次数,其中所述服务异常次数包括所述外部服务未能对来自应用的调用请求作出响应的次数;确定所述外部服务的服务异常次数是否大于第一预定异常次数阈值;以及如果确定所述外部服务的服务异常次数大于第一预定异常次数阈值则结束所述服务调用请求,并且否则执行服务调用。
技术领域
本公开涉及应用自动降级和恢复方法和系统。
背景技术
随着互联网和分布式技术的发展,应用对于该应用外部的服务(简称为“外部服务”)的依赖越来越多,使得外部服务的稳定性对应用而言变得越来越重要。
然而,外部服务的稳定性很难得到确切保证。当应用所依赖的外部服务发生异常或者不可用而不能对请求作出响应时,应用自身可能仍然不停地作出对该外部服务的网络请求。这样,应用很容易被这些异常的外部服务请求阻塞,从而导致自身不可用。
发明内容
本公开提出了一种应用自动降级和恢复方法和系统,其能够针对所依赖的外部服务的状况(例如,异常、故障、恢复服务,等等)来使应用自动降级和恢复,从而在外部服务不可用时及时地降低大量的不必要的请求开销,节省资源并规避所依赖的外部服务阻塞应用的风险,从而提高应用的稳定性。
根据本公开的第一方面,提供了一种应用自动降级和恢复的方法,包括:接收来自应用的服务调用请求,其中所述服务调用请求包括所述应用所要调用的外部服务的标识符;使用所述标识符来查找相对应的外部服务的服务异常次数,其中所述服务异常次数包括所述外部服务未能对来自应用的调用请求作出响应的次数;确定所述外部服务的服务异常次数是否大于第一预定异常次数阈值;以及如果确定所述外部服务的服务异常次数大于第一预定异常次数阈值则结束所述服务调用请求,并且否则执行服务调用。
在一实施例中,所述方法包括如果所述服务调用未被成功执行,则结束所述服务调用并使所述外部服务的服务异常次数加一。
在另一实施例中,所述方法包括如果所述服务调用被成功执行,则在所述服务调用的执行时长不超过预定执行时长阈值的情况下,将所述预定异常次数阈值重置为零;否则,如果所述服务调用的执行时长超过所述预定执行时长阈值,则使所述外部服务的服务异常次数加一。
在又一实施例中,所述执行时长阈值是根据所述服务调用的各个历史执行时长的最低值、最高值或均值来设置的。
根据本公开的第二方面,提供了一种应用自动降级和恢复的方法,包括:接收来自应用的服务调用请求,其中所述服务调用请求包括所述应用所要调用的外部服务的标识符;使用所述标识符来查找相对应的外部服务的服务异常次数,其中所述服务异常次数包括所述外部服务未能对来自应用的调用请求作出响应的次数;确定所述外部服务的服务异常次数大于第一预定异常次数阈值;获取与所述外部服务相对应的锁;以及如果没有成功获取所述锁则结束所述服务调用请求。
在一实施例中,所述锁是以单线程非阻塞的方式来获取的。
在另一实施例中,所述方法包括如果成功获取了所述锁,则响应于所述服务调用请求来执行服务调用,而非结束所述服务调用请求。
在又一实施例中,所述方法包括如果所述服务调用未被成功执行,则结束所述服务调用并使所述外部服务的服务异常次数加一。
在又一实施例中,所述方法包括如果所述服务调用被成功执行,则在所述服务调用的执行时长不超过预定执行时长阈值的情况下,将所述预定异常次数阈值重置为零;否则,如果所述服务调用的执行时长超过所述预定执行时长阈值,则使所述外部服务的服务异常次数加一。
在又一实施例中,所述执行时长阈值是根据所述服务调用的各个历史执行时长的最低值、最高值或均值来设置的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910506045.9/2.html,转载请声明来源钻瓜专利网。