【技术实现步骤摘要】
一种请求处理方法、装置及API网关和可读存储介质
本专利技术涉及通信
,特别是涉及一种请求处理方法、装置及API网关和可读存储介质。
技术介绍
应用程序编程接口(ApplicationProgrammingInterface,API)网关,是对外开放的API服务统一的出入口,负责所有API服务的公共业务,如签名,鉴权,请求转发,返回结果处理,日志统计等。API网关接收到服务请求后,需要获取服务请求中包括的API对应的API配置信息,进而根据该API配置信息,将服务请求转发至对应的API请求服务。现有技术中,API网关从该API网关外部的外部缓存或者数据库中获取该API配置信息。若API网关依赖的该外部缓存或者数据库出现问题时,例如,服务不可用、网络抖动,等等,会造成API无法正常处理服务请求,影响API的稳定性。
技术实现思路
本专利技术实施例的目的在于提供一种请求处理方法、装置及API网关和可读存储介质,以提高API网关的稳定性。具体技术方案如下:第一方面,本专利技术实施例提供了一 ...
【技术保护点】
1.一种请求处理方法,其特征在于,应用于应用程序编程接口API网关,包括:/n接收服务请求,所述服务请求指示待访问的API;/n从所述API网关的内部缓存中获取数据更新信息;/n确定所述数据更新信息是否达到预设更新条件;/n如果未达到所述预设更新条件,则从所述内部缓存中获取与所述待访问的API对应的API配置信息,并根据所述API配置信息处理所述服务请求。/n
【技术特征摘要】
1.一种请求处理方法,其特征在于,应用于应用程序编程接口API网关,包括:
接收服务请求,所述服务请求指示待访问的API;
从所述API网关的内部缓存中获取数据更新信息;
确定所述数据更新信息是否达到预设更新条件;
如果未达到所述预设更新条件,则从所述内部缓存中获取与所述待访问的API对应的API配置信息,并根据所述API配置信息处理所述服务请求。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果达到所述预设更新条件,则向与所述API网关通信连接的外部缓存发送第一访问请求。
3.根据权利要求2所述的方法,其特征在于,在向与所述API网关通信连接的外部缓存发送第一访问请求之后,所述方法还包括:
如果未在第一预设时间范围内接收到所述外部缓存反馈的第一响应消息,则从所述内部缓存中获取与所述待访问的API对应的API配置信息,并根据所述API配置信息处理所述服务请求;
如果在所述第一预设时间范围内接收到所述外部缓存反馈的第一响应消息,且所述第一响应消息包括与所述待访问的API对应的API配置信息,则根据所述API配置信息处理所述服务请求;
如果在所述第一预设时间范围内接收到所述外部缓存反馈的第一响应消息,且所述第一响应消息不包括与所述待访问的API对应的API配置信息,则向与所述API网关通信连接的数据库发送第二访问请求。
4.根据权利要求3所述的方法,其特征在于,在向与所述API网关通信连接的数据库发送第二访问请求之后,所述方法还包括:
如果在第二预设时间范围内接收到所述数据库反馈的第二响应消息,且所述第二响应消息包括与所述待访问的API对应的API配置信息,则根据所述API配置信息处理所述服务请求;
如果未在所述第二预设时间范围内接收到所述数据库反馈的第二响应消息,则从所述内部缓存中获取与所述待访问的API对应的API配置信息,并根据所述API配置信息处理所述服务请求。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
如果在所述第一预设时间范围内接收到所述外部缓存反馈的第一响应消息,且所述第一响应消息包括与所述待访问的API对应的API配置信息,则将所述API配置信息更新至所述内部缓存中,并更新所述数据更新信息。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
如果在所述第二预设时间范围内接收到所述数据库反馈的第二响应消息,且所述第二响应消息包括与所述待访问的API对应的API配置信息,则将所述API配置信息更新至所述内部缓存中,并更新所述数据更新信息。
7.根据权利要求2所述的方法,其特征在于,当接收的所述服务请求的数量为多个,则在向与所述API网关通信连接的外部缓存发送第一访问请求之前,所述方法还包括:
对所述外部缓存增加加锁机制;
针对各个服务请求,判断该服务请求是否通过所述加锁机制中的解锁验证;
所述向与所述API网关通信连接的外部缓存发送第一访问请求,包括:
在该服务请求通过所述解锁验证时,向所述外部缓存发送第一访问请求。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述数据更新信息包括:最新更新时间和更新周期;所述预设更新条件为:当前时间与所述最新更新时间的时间差不小于所述更新周期;
所述确定数据更新信息是否达到预设更新条件,包括:
获取当前时间;
将当前时间与所述最新更新时间的时间差与所述更新周期进行比较;
如果所述时间差小于所述更新周期,则确定不满足所述预设更新条件;
如果所述时间差不小于所述更新周期,则确定满足所述预设更新条件。
9.一种请求处理装置,其特征在于,应用于应用程序编程接口API网关,包括:
接收模块,用于接收服务请求,所述服务请求指示待访问的API;
第一获取模块,用于从所述API网关的内部缓存中获取数据更新信息;
判断模块,用于确定所述数据更新信息是否达到预设更新条件;
第二获取模块,用于如果未达到所述预...
【专利技术属性】
技术研发人员:武林,
申请(专利权)人:北京金山云网络技术有限公司,北京金山云科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。