【技术实现步骤摘要】
基于Hook的业务请求处理方法及相关设备
[0001]本申请涉及数据处理
,尤其涉及一种基于Hook的业务请求处理方法、装置、计算机设备及存储介质。
技术介绍
[0002]在业务处理过程中,不同业务系统之间存在大量的交互过程,使的业务请求的并发量大,增加了业务系统负载,同时业务系统在处理业务请求时,需按照一定顺序执行多个异步任务,例如在长列表中进行数据加载时,在业务系统的React应用程序中进行大量的AP I调用,将产生过多的并发网络请求,容易导致应用程序性能下降,同时在长列表中进行数据加载时,这些网络请求为异步请求,需要异步获取数据,对此React应用程序中使用Promi se来对异步请求进行处理,异步请求的数量过大可能会导致React应用程序变得缓慢或崩溃,容易出现数据错位、数据缺失或数据加载顺序错乱的情况。此外,在业务系统的多个组件之间进行数据交互时,也存在因数据更新需要控制更新顺序而出现数据不一致或数据错乱的情况。
技术实现思路
[0003]本申请实施例的目的在于提出一种基于Hook的业务请求处 ...
【技术保护点】
【技术特征摘要】
1.一种基于Hook的业务请求处理方法,其特征在于,所述方法包括:基于Web端的函数组件创建请求队列,通过Hook函数State Hook预定义所述请求队列的状态,获取所述Web端发起的业务请求,将所述业务请求加入所述请求队列,其中,预定义的所述请求队列的状态中封装有请求处理函数;通过所述请求处理函数周期性检查所述请求队列,在所述请求队列非空时,调取其中一个所述业务请求并发送至服务器端;更新被调取的所述业务请求的状态为第一状态,并对所述请求队列中的请求数量进行减一操作;处理下一个业务请求,以进行业务请求的异步处理;接收所述服务器端根据所述异步处理的业务请求所返回的资源数据,根据所述资源数据渲染所述Web端的函数组件。2.根据权利要求1所述的基于Hook的业务请求处理方法,其特征在于,所述通过所述请求处理函数周期性检查所述请求队列包括:提供Hook函数Effect Hook,当所述函数组件首次渲染时,通过所述Hook函数Effect Hook启动所述请求处理函数;获取预设的定时器,根据所述定时器每隔预设时间调用所述请求处理函数检查所述请求队列。3.根据权利要求2所述的基于Hook的业务请求处理方法,其特征在于,在所述调取其中一个所述业务请求并发送至服务器端的步骤之前,所述方法还包括:调用所述请求处理函数检查当前状态为处理中的业务请求的数量,判断该数量是否大于预设的最大并发请求数量,若是则等待下一轮定时器调用。4.根据权利要求3所述的基于Hook的业务请求处理方法,其特征在于,在所述调取其中一个所述业务请求并发送至服务器端的步骤之后,所述方法还包括:对发送至所述服务器端的所述业务请求的执行状态进行监控,当接收到所述服务器端返回的资源数据时,通过所述请求处理函数将该资源数据对应的业务请求的状态调整为第二状态,并调用预设的回调函数将所述第二状态反馈至所述Web端;当接收到发送至所述服务器端的所述业务请求的处理异常信息时,通过所述请求处理函数将该资源数据对应的业务请求的状态调整为第三状态,并调用预设的错误回调函数将所述第三状态反馈至所述Web端。5.根据权利要求1至4任一项所述的基于Hook的业务请求处理方法...
【专利技术属性】
技术研发人员:梁德金,何俊泽,
申请(专利权)人:深圳复临科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。