控制异步请求的方法、装置及设备制造方法及图纸

技术编号:19751478 阅读:23 留言:0更新日期:2018-12-12 05:48
本说明书实施例提供一种控制异步请求的方法、装置及设备,本说明书实施例通过获取用于表示请求消费端当前资源利用率的指标数据,并至少根据指标数据动态确定对消息存储端中异步请求进行处理的消费速度,以控制请求消费端以所确定的消费速度处理消息存储端中的异步请求,实现动态控制异步请求的消费速度。

【技术实现步骤摘要】
控制异步请求的方法、装置及设备
本说明书涉及数据处理领域,尤其涉及控制异步请求的方法、装置及设备。
技术介绍
在C/S(Client/Server,客户机/服务器)结构或B/S(Brower/Server,浏览器/服务器)结构下,可能采用包括同步请求方式和异步请求方式的请求处理方式处理请求,或者纯异步请求方式处理请求。同步请求方式是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。异步请求方式是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。以互联网的风险监控识别场景为例,同步请求可以是由用户操作触发且需实时返回结果的请求,该请求用于对用户的实际操作进行风险实时拦截、且会对操作结果产生实时影响。异步请求可以是用户操作完成且成功后发出的异步消息,该请求主要用于进行风控行为累计,以便为用户未来的行为风险分析提供参考。用户同步请求的风险监控将会依赖于用户历史上的一段时间内所有异步请求分析的结果,但如果用户的异步请求处理延迟时间较长,则会影响同步请求风险监控的结果。而如果同步请求和异步请求在流量高峰期都被实时处理,对系统资源要求极大,为此,提供一种能最大化利用系统资源、且尽可能降低由于异步请求延迟带来风险的方案尤为重要。
技术实现思路
为克服相关技术中存在的问题,本说明书提供了控制异步请求的方法、装置及设备。根据本公开实施例的第一方面,提供一种控制异步请求的方法,所述方法包括:获取用于表示请求消费端当前资源利用率的指标数据,所述请求消费端至少用于处理异步请求;至少根据所述指标数据确定对消息存储端中异步请求进行处理的消费速度,所述消费速度与请求消费端的资源利用率成负相关关系;控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求。可选的,所述指标数据包括CPU当前使用率、当前在规定时间内处理完请求的次数、当前在规定时间内处理完事物的次数中的一种或多种。可选的,所述控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求之前,还包括:确定请求消费端的资源满足预设资源空闲条件。可选的,预设资源空闲条件包括以下一种或多种条件:当前在规定时间内处理完请求的次数小于请求消费端在规定时间内处理完请求的次数峰值;当前在规定时间内处理完事物的次数小于请求消费端在规定时间内处理完事物的次数峰值。可选的,所述消费速度基于请求消费端在规定时间内处理完请求的次数峰值、与当前在规定时间内处理完请求的次数的差值获得,或,所述消费速度基于请求消费端在规定时间内处理完事物的次数峰值、与当前在规定时间内处理完事物的次数的差值获得。可选的,所述控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求,包括:通知所述请求消费端按所确定的消费速度从所述消息存储端中拉取异步请求并处理;或,通知所述消息存储端以所确定的消费速度向请求消费端下发异步请求,以供请求消费端及时处理所接收的异步请求。可选的,所述消息存储端至少包括两种消息队列,所述方法还包括:通知请求生产端按异步请求的优先级将不同优先级的异步请求存放在不同的消息队列中,其中,优先级高的消息队列中异步请求的消费速度,大于优先级低的消息队列中异步请求的消费速度。可选的,所述消息存储端包括及时处理消息队列和调速处理消息队列,所述通知请求生产端按异步请求的优先级将不同优先级的异步请求存放在不同的消息队列中,包括:在预设流量高峰期达到之前,通知请求生成端将高优先级的异步请求发送至及时处理消息队列,将低优先级的异步请求发送至调速处理消息队列,及时处理消息队列中的异步请求被实时处理,调速处理消息队列中的异步请求被暂停处理。可选的,在预设流量高峰期期间,所述调速处理消息队列中的异步请求按所确定的消费速度被处理,所确定的消费速度基于预设流量高峰期期间的指标数据确定。可选的,所述方法还包括:在预设流量高峰期结束时,通知请求生成端将低优先级的异步请求发送至及时处理消息队列,调速处理消息队列中未处理的异步请求被暂停处理。可选的,在预设流量高峰期结束后每间隔预设时间更新一次消费速度,所述调速处理消息队列中的异步请求按所更新的消费速度被处理,直至调速处理消息队列中的异步请求全部被处理。根据本公开实施例的第二方面,提供一种控制异步请求的装置,所述装置包括:数据采集模块,用于:获取用于表示请求消费端当前资源利用率的指标数据,所述请求消费端至少用于处理异步请求;调度决策模块,用于:至少根据所述指标数据确定对消息存储端中异步请求进行处理的消费速度,所述消费速度与请求消费端的资源利用率成负相关关系;处理模块,用于:控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求。可选的,所述指标数据包括CPU当前使用率、当前在规定时间内处理完请求的次数、当前在规定时间内处理完事物的次数中的一种或多种。可选的,所述调度决策模块,具体用于:确定请求消费端的资源满足预设资源空闲条件,至少根据所述指标数据确定对消息存储端中异步请求进行处理的消费速度。可选的,预设资源空闲条件包括以下一种或多种条件:当前在规定时间内处理完请求的次数小于请求消费端在规定时间内处理完请求的次数峰值;当前在规定时间内处理完事物的次数小于请求消费端在规定时间内处理完事物的次数峰值。可选的,所述消费速度基于请求消费端在规定时间内处理完请求的次数峰值、与当前在规定时间内处理完请求的次数的差值获得,或,所述消费速度基于请求消费端在规定时间内处理完事物的次数峰值、与当前在规定时间内处理完事物的次数的差值获得。可选的,所述处理模块具体用于:通知所述请求消费端按所确定的消费速度从所述消息存储端中拉取异步请求并处理;或,通知所述消息存储端以所确定的消费速度向请求消费端下发异步请求,以供请求消费端及时处理所接收的异步请求。可选的,所述消息存储端至少包括两种消息队列,所述处理模块还用于:通知请求生产端按异步请求的优先级将不同优先级的异步请求存放在不同的消息队列中,其中,优先级高的消息队列中异步请求的消费速度,大于优先级低的消息队列中异步请求的消费速度。可选的,所述消息存储端包括及时处理消息队列和调速处理消息队列,所述处理模块还用于:在预设流量高峰期达到之前,通知请求生成端将高优先级的异步请求发送至及时处理消息队列,将低优先级的异步请求发送至调速处理消息队列,及时处理消息队列中的异步请求被实时处理,调速处理消息队列中的异步请求被暂停处理。可选的,在预设流量高峰期期间,所述调速处理消息队列中的异步请求按所确定的消费速度被处理,所确定的消费速度基于预设流量高峰期期间的指标数据确定。可选的,所述处理模块还用于:在预设流量高峰期结束时,通知请求生成端将低优先级的异步请求发送至及时处理消息队列,调速处理消息队列中未处理的异步请求被暂停处理。可选的,在预设流量高峰期结束后每间隔预设时间更新一次消费速度,所述调速处理消息队列中的异步请求按所更新的消费速度被处理,直至调速处理消息队列中的异步请求全部被处理。根据本公开实施例的第三方面,提供一种计算机设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:获取用于表示请求消费端当前资源利用率的指标数据,所述请求消费端至少用于处理异步请求;至少根据所述指标数据确定对本文档来自技高网...

【技术保护点】
1.一种控制异步请求的方法,所述方法包括:获取用于表示请求消费端当前资源利用率的指标数据,所述请求消费端至少用于处理异步请求;至少根据所述指标数据确定对消息存储端中异步请求进行处理的消费速度,所述消费速度与请求消费端的资源利用率成负相关关系;控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求。

【技术特征摘要】
1.一种控制异步请求的方法,所述方法包括:获取用于表示请求消费端当前资源利用率的指标数据,所述请求消费端至少用于处理异步请求;至少根据所述指标数据确定对消息存储端中异步请求进行处理的消费速度,所述消费速度与请求消费端的资源利用率成负相关关系;控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求。2.根据权利要求1所述的方法,所述指标数据包括CPU当前使用率、当前在规定时间内处理完请求的次数、当前在规定时间内处理完事物的次数中的一种或多种。3.根据权利要求1所述的方法,所述控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求之前,还包括:确定请求消费端的资源满足预设资源空闲条件;预设资源空闲条件包括以下一种或多种条件:当前在规定时间内处理完请求的次数小于请求消费端在规定时间内处理完请求的次数峰值;当前在规定时间内处理完事物的次数小于请求消费端在规定时间内处理完事物的次数峰值。4.根据权利要求1所述的方法,所述消费速度基于请求消费端在规定时间内处理完请求的次数峰值、与当前在规定时间内处理完请求的次数的差值获得,或,所述消费速度基于请求消费端在规定时间内处理完事物的次数峰值、与当前在规定时间内处理完事物的次数的差值获得。5.根据权利要求1所述的方法,所述控制请求消费端以所确定的消费速度处理所述消息存储端中的异步请求,包括:通知所述请求消费端按所确定的消费速度从所述消息存储端中拉取异步请求并处理;或,通知所述消息存储端以所确定的消费速度向请求消费端下发异步请求,以供请求消费端及时处理所接收的异步请求。6.根据权利要求1至5任一项所述的方法,所述消息存储端至少包括两种消息队列,所述方法还包括:通知请求生产端按异步请求的优先级将不同优先级的异步请求存放在不同的消息队列中,其中,优先级高的消息队列中异步请求的消费速度,大于优先级低的消息队列中异步请求的消费速度。7.根据权利要求6所述的方法,所述消息存储端包括及时处理消息队列和调速处理消息队列,所述通知请求生产端按异步请求的优先级将不同优先级的异步请求存放在不同的消息队列中,包括:在预设流量高峰期达到之前,通知请求生成端将高优先级的异步请求发送至及时处理消息队列,将低优先级的异步请求发送至调速处理消息队列,及时处理消息队列中的异步请求被实时处理,调速处理消息队列中的异步请求被暂停处理。8.根据权利要求7所述的方法,在预设流量高峰期期间,所述调速处理消息队列中的异步请求按所确定的消费速度被处理,所确定的消费速度基于预设流量高峰期期间的指标数据确定。9.根据权利要求7所述的方法,所述方法还包括:在预设流量高峰期结束时,通知请求生成端将低优先级的异步请求发送至及时处理消息队列,调速处理消息队列中未处理的异步请求被暂停处理。10.根据权利要求9所述的方法,在预设流量高峰期结束后每间隔预设时间更新一次消费速度,所述调速处理消息队列中的异步请求按所更新的消费速度被处理,直至调速处理消息队列中的异步请求全部被处理。11.一种控制异步请求的装置,所述装置包括:数据采集模块,用于:获取用于表示请求消费端当前资源利用率的指标数据,所述请求消费端至少用于处理异步请求;调度决策模块,用于:至少根据所...

【专利技术属性】
技术研发人员:张维维
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1