【技术实现步骤摘要】
全局限流系统、方法、电子设备、存储介质、程序产品
[0001]本公开涉及计算机
,尤其涉及流量限流领域
。
技术介绍
[0002]分布式部署的微服务架构是大型互联网公司主流的后端服务架构
。
微服务架构的主要特点是:实例多
、
应用多
、
依赖关系复杂
、
局部故障往往影响到整个链路的稳定性,服务的可用性得不到保障
。
为了保障微服务架构的可用性,一个必要的措施是对收到的访问请求进行限流处理,避免微服务架构被短时间内大幅流量波动所影响
。
技术实现思路
[0003]本公开提供了一种全局限流系统
、
方法
、
电子设备
、
存储介质
、
程序产品
。
[0004]根据本公开的第一方面,提供了一种全局限流系统,包括:
[0005]至少两个限流组件,各个限流组件分别对接分布式服务集群包含的至少一个业务服务;所述限流组件用于拦截与所述限流组件对接的业务服务的访问请求,并将所述访问请求对应的请求信息转发至限流服务器;
[0006]限流服务器,所述限流服务器存储有与限流组件对接的所有业务服务的限流规则;所述限流服务器用于根据所述限流规则对所述请求信息进行全局限流校验,并返回所述全局限流校验的校验结果至所述限流组件;
[0007]所述限流组件还用于根据所述校验结果对所述访问请求进行限流
。
[00 ...
【技术保护点】
【技术特征摘要】
1.
一种全局限流系统,包括:至少两个限流组件,各个限流组件分别对接分布式服务集群包含的至少一个业务服务;所述限流组件用于拦截与所述限流组件对接的业务服务的访问请求,并将所述访问请求对应的请求信息转发至限流服务器;限流服务器,所述限流服务器存储有与限流组件对接的所有业务服务的限流规则;所述限流服务器用于根据所述限流规则对所述请求信息进行全局限流校验,并返回所述全局限流校验的校验结果至所述限流组件;所述限流组件还用于根据所述校验结果对所述访问请求进行限流
。2.
根据权利要求1所述的全局限流系统,其中,所述限流组件包括:存储介质,存储有限流规则;限流插件,用于确定所拦截的访问请求的所需消耗配额和目标规则标识,并将包含所需消耗配额和目标规则标识的请求信息转发至限流服务器
12
;其中,所述目标规则标识为所述存储介质中存储的且针对所拦截的访问请求的限流规则的标识
。3.
根据权利要求2所述的全局限流系统,还包括:扩展服务器,用于确定关联服务执行业务逻辑所需的第一消耗配额,并将所述第一消耗配额发送至所述限流组件,以由所述限流插件根据所述第一消耗配额和第二消耗配额确定所述所需消耗配额;其中,所述关联服务为所述业务服务执行业务逻辑的过程中需调用的业务服务
。4.
根据权利要求1所述的全局限流系统,还包括:扩展服务器,用于确定关联服务执行业务逻辑所需的第一消耗配额并将所述第一消耗配额发送至限流服务器,以由所述限流服务器根据第二消耗配额和所述第一消耗配额确定所述访问请求的所需消耗配额,并根据限流规则对所述所需消耗配额进行全局限流校验;其中,所述关联服务为所述业务服务执行业务逻辑的过程中需调用的业务服务;所述第二消耗配额为所拦截的访问请求针对的业务服务执行业务逻辑所需的消耗配额
。5.
根据权利要求2或3所述的全局限流系统,其中,所述限流插件为
Java
探针
。6.
根据权利要求1所述的全局限流系统,其中,当所述访问请求为针对所述业务服务的接口的访问请求时,所述限流组件直接拦截所述访问请求;或者,当所述访问请求为针对所述业务服务的数据库的访问请求时,所述限流组件调用数据库连接插件
JDBC
,以拦截所述访问请求
。7.
根据权利要求2或3所述的全局限流系统,其中,所述限流服务器包括:计数器,用于确定各业务服务在滑动窗口内所有访问请求的已消耗配额;校验模块,用于根据与所述目标规则标识相匹配的限流规则和所述已消耗配额确定限流阈值,并当所述所需消耗配额小于等于所述限流阈值时,返回允许访问的校验结果至所述限流组件;否则,返回拒绝访问的校验结果至所述限流组件
。8.
根据权利要求1所述的全局限流系统,还包括:规则管理组件,用于获取针对所述业务服务配置的限流规则,并将所述限流规则下发至所述限流服务器;所述规则管理组件,还用于将所述限流规则下发至与所述业务服务对接的限流组件,或者将所述限流规则包含的规则属性下发至与所述业务服务对接的限流组件;其中,所述
限流规则包括规则属性和限流逻辑
。9.
一种全局限流方法,应用于限流组件,所述限流组件对接分布式服务集群包含的至少一个业务服务,所述全局限流方法包括:拦截业务服务的访问请求,并将所述访问请求对应的请求信息转发至限流服务器,以由所述限流服务器根据所述限流服务器存储的限流规则对所述请求信息进行全局限流校验;获取所述全局限流校验的校验结果,并根据所述校验结果对所述访问请求进行限流
。10.
根据权利要求9所述的全局限流方法,其中,将所述访问请求对应的请求信息转发至限流服务器,包括:确定所拦截的访问请求的所需消耗配额和目标规则标识;将包含所述所需消耗配额和所述目标规则标识的请求信息转发至限流服务器;其中,所述目标规则标识为针对所述访问...
【专利技术属性】
技术研发人员:范立岩,刘涛,李奇原,张佳,
申请(专利权)人:百度时代网络技术,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。