[发明专利]服务限流方法及装置、存储介质、计算机设备在审
申请号: | 202211083414.6 | 申请日: | 2022-09-06 |
公开(公告)号: | CN115373854A | 公开(公告)日: | 2022-11-22 |
发明(设计)人: | 何辉 | 申请(专利权)人: | 平安付科技服务有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京中强智尚知识产权代理有限公司 11448 | 代理人: | 郭晓迪 |
地址: | 518031 广东省深圳市福田区福田*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 服务 限流 方法 装置 存储 介质 计算机 设备 | ||
本申请公开了一种服务限流方法及装置、存储介质、计算机设备,该方法包括:接收对目标功能服务的服务请求,确定所述目标功能服务对应的功能计数资源,其中,所述功能计数资源包括预设服务限流数量的令牌分配线程,所述令牌分配线程用于为服务请求分配访问令牌;查询所述功能计数资源中是否包含第一空闲线程;若所述功能计数资源中包含第一空闲线程,则利用所述第一空闲线程为所述目标功能服务分配访问令牌;依据所述目标访问令牌,处理所述服务请求,其中,所述目标功能服务被配置为允许被携带访问令牌的请求访问。本申请实现了对目标功能服务的限流,改善了后台在限流时因多线程竞争容易导致计数出现偏差的问题。
技术领域
本申请涉及计算机应用技术领域,尤其是涉及到一种服务限流方法及装置、存储介质、计算机设备。
背景技术
现代的操作系统和编程语言支持线程,且许多大型商业应用程序是多线程的。由于目前更新了很多热门的产品功能,这些功能的点击流量非常大,为了系统能够稳定的运行,常常会对请求进行限流,如果不进行限流的话,海量的请求很可能会把系统给压垮,当产品功能被大量使用时,由于线程竞争太大的缘故,后台的计数往往会出现偏差,导致限流会出现问题,所以改善后台在限流时的计数偏差是目前亟待解决的问题。
发明内容
有鉴于此,本申请提供了一种服务限流方法及装置、存储介质、计算机设备,有助于减少对计数资源的竞争,改善了后台在限流时计数偏差的问题。
根据本申请的一个方面,提供了一种服务限流方法,所述方法包括:
接收对目标功能服务的服务请求,确定所述目标功能服务对应的功能计数资源,其中,所述功能计数资源包括预设服务限流数量的令牌分配线程,所述令牌分配线程用于为服务请求分配访问令牌;
查询所述功能计数资源中是否包含第一空闲线程;
若所述功能计数资源中包含第一空闲线程,则利用所述第一空闲线程为所述目标功能服务分配访问令牌;
依据所述目标访问令牌,处理所述服务请求,其中,所述目标功能服务被配置为允许被携带访问令牌的请求访问。
可选地,所述若所述功能计数资源中包含第一空闲线程,则利用所述第一空闲线程为所述目标功能服务分配访问令牌,包括:
若所述功能计数资源中包含第一空闲线程,则将任意一个第一空闲线程确定为所述服务器请求的目标令牌分配线程;
将所述目标功能服务的服务请求写入所述目标令牌分配线程中,通过所述目标令牌分配线程为所述服务请求分配访问令牌,并将所述目标令牌分配线程标记为占用线程。
可选地,所述依据所述目标访问令牌,处理所述服务请求之后,所述方法还包括:
监控所述服务请求的访问进度;
若所述服务请求完成访问,则清空所述目标令牌分配线程中的任务,并将所述目标令牌分配线程标记为空闲线程。
可选地,所述功能计数资源还包括与每个所述令牌分配线程对应的线程记录数据,所述线程记录数据包括所述令牌分配线程的序号以及状态值,所述状态值为第一数值时表示对应的令牌分配线程处于空闲状态,所述状态值为第二数值时表示对应的令牌分配线程处于占用状态;
所述查询所述功能计数资源中是否包含第一空闲线程,包括:
查询对应的状态值为所述第一数值的所述令牌分配线程;
所述将所述目标令牌分配线程标记为占用线程,包括:
将所述目标令牌分配线程的状态值从第一数值变更为第二数值;
所述将所述目标令牌分配线程标记为空闲线程,包括:
将所述目标令牌分配线程的状态值从第二数值变更为第一数值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安付科技服务有限公司,未经平安付科技服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211083414.6/2.html,转载请声明来源钻瓜专利网。