【技术实现步骤摘要】
一种业务回调服务的控制方法、装置、系统及存储介质
[0001]本专利技术涉及业务回调
,更具体地说,涉及一种业务回调服务的控制方法、装置、系统及存储介质。
技术介绍
[0002]系统中,很多业务场景处理耗时较长,所以一般将业务执行异步化,从而减轻客户端的等待压力。
[0003]但由于异步化或任务化,必然涉及到一个完成时间点的感知问题,而最简单和直接的方法是使用回调和主动轮询的方法。其中,主动轮询的方式会加大调用方的实现难度,而回调服务则可以及时有效地告知相关方,从而使其可以推进下一步的操作。因此,实现一个稳定可靠的回调,就变得非常重要。
[0004]常规的回调实现方式中,一般是在任务执行成功之后直接进行同步回调,这种实现方式往往带来较多问题。一方面,客户端会需要自己关注大量的异常情况及其处理,如客户端必须要使用推拉方式结合,方能完成一个基础功能;另一方面,需要增加很多的复杂的逻辑方法于业务代码中,导致整体系统逻辑耦合比较严重。
[0005]总之,现有的回调服务实现方式中,需要客户端自己关注大量异常情况及其处理,并且业务代码中需要增加很多的复杂的逻辑方法,造成系统逻辑耦合严重。
技术实现思路
[0006]有鉴于此,本专利技术提供一种业务回调服务的控制方法,包括:
[0007]服务提供端接收到业务端发出的业务请求后,向回调系统发送与所述业务请求对应的回调请求;其中,所述回调请求包括所述业务端对应的回调地址;
[0008]所述回调系统接收到所述回调请求后,将所述 ...
【技术保护点】
【技术特征摘要】
1.一种业务回调服务的控制方法,其特征在于,包括:服务提供端接收到业务端发出的业务请求后,向回调系统发送与所述业务请求对应的回调请求;其中,所述回调请求包括所述业务端对应的回调地址;所述回调系统接收到所述回调请求后,将所述回调请求存入内存队列中;所述回调系统通过回调线程池,根据所述内存队列中的所述回调请求,对所述回调地址对应的所述业务端执行回调任务。2.如权利要求1所述业务回调服务的控制方法,其特征在于,所述将所述回调请求存入内存队列中之前,还包括:所述回调系统接收到所述回调请求后,将所述回调请求插入数据库中,并赋予待处理的执行状态标签;所述回调系统通过回调线程池,根据所述内存队列中的所述回调请求,对所述回调地址对应的所述业务端执行回调任务之后,还包括:所述回调系统的所述回调任务执行完成之后,将所述执行状态标签变更为回调成功。3.如权利要求2所述业务回调服务的控制方法,其特征在于,所述回调系统通过回调线程池,根据所述内存队列中的所述回调请求,对所述回调地址对应的所述业务端执行回调任务,包括:所述回调系统判断所述回调线程池中的执行线程的数量是否已达到预设最大数量;若是,则将所述执行状态标签变更为等待调度,并根据所述等待调度的执行状态标签将所述回调请求挂起;若否,则将所述回调请求插入所述回调线程池的执行线程内,以便于根据所述执行线程中的所述回调请求对所述业务端执行回调任务。4.如权利要求3所述业务回调服务的控制方法,其特征在于,所述回调线程池中,所述执行线程的所述预设最大数量的计算方法为:预设最大数量=系统并发度
×
每秒可执行回调任务数
×
预设可接受延迟时间。5.如权利要求2所述业务回调服务的控制方法,其特征在于,所述回调系统通过回调线程池,根据所述内存队列中的所述回调请求,对所述回调地址对应的所述业务端执行回调任务之后,还包括:所述回调系统获取所述服务提供端根据所述业务端的业务请求的执行情况所返回的响应信息;若所述响应信息为业务执行成功,则判定执行状态为回调任务执行完成,以便于将所述执行状态标签变更为回调成功。6.如权利要求5所述业务回调服务的控制方法,其特征在于,所述回调系统获取所述服务提供端根据所述业务端的业务请求的执行情况所返回的响应信息之后,还包括:若所述响应信息并非为业务执行成功,则判定执行状态为回调任务执行异常;所述回调系统接收所述服务提供端根据所述业务端的业务请求的执行情况所返回重复回调指令,以便于根据所述重复回调指令对所述业务端执行回调任务。7.如权利要求6所述业务回调服务的控制方法,其特征在于,所述回调系统接收所述服务提供端根据所述业务端的业务请求的执行情况所返回重复回调指令之后,还包括:所述回调系统根据预设的所述回调任务执行异常的执行状态的次数与时间的对应关
系,获取与所述回调任务执行异常的执行状态的次数对应的当前次的时间间隔;所述回调系统根据所述当前次的时间间隔对所述业务端执行回...
【专利技术属性】
技术研发人员:魏勇,
申请(专利权)人:平安银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。