一种调用虚拟资源的数据处理方法、装置、服务器制造方法及图纸

技术编号:29799126 阅读:15 留言:0更新日期:2021-08-24 18:20
本公开关于一种调用虚拟资源的数据处理方法、装置、服务器。一个方法实施例中,接收目标虚拟资源的调用请求;根据所述调用请求,在存储所述虚拟资源的发放记录的发放记录表进行查询;若查询到目标发放记录,则获取对应的任务的执行状态;根据所述执行状态,相应的执行所述调用请求的预设操作。本公开实施例改变了现有的通过常规redis数据缓存/存储式和Zset数据结构来实现获取虚拟资源的方式,通过虚拟资源发放记录的发放记录表来实现更加高效、可靠的虚拟资源调用和发放,更加简易、高效、可靠的实现虚拟资源发放的幂等性,提供系统处理性能。

【技术实现步骤摘要】
一种调用虚拟资源的数据处理方法、装置、服务器
本公开涉及计算机数据处理
,尤其涉及一种调用虚拟资源的数据处理方法、装置、服务器。
技术介绍
视频直播时可以进行内容分享,销售产品或服务,还可以实现用户(包括主播)之间的互动,因此,各种各样的直播活动受到越来越多用户的喜爱和关注。在直播活动中,用户和主播可以得到各种荣誉奖励,例如进场特效、勋章、特效头像框、主播荣誉称号等。这些荣誉奖励可以由直播服务方的服务器发放给满足荣誉发放条件的用户。目前,常规的方式主要是通过redis(一种开源的缓存/存储实现方案)临时存储准备发放的荣誉奖励zset(有序集合,一种redis的数据结构)列表,然后通过排序过滤的方式拿到用户奖励。而这种方式在实现幂等时的约束条件较多,实现较为复杂,且常常出现少量参数变化就会导致不符合幂等要求进而重新触发资源调用请求的情况,影响系统吞吐性能。
技术实现思路
本公开提供一种调用虚拟资源的数据处理方法、装置、服务器,以至少解决相关技术中幂等实现复杂的技术问题。本公开的技术方案如下:根据本公开实施例的第一方面,提供一种调用虚拟资源的数据处理方法,包括:接收目标虚拟资源的调用请求,所述调用请求包括虚拟资源调用方的第一识别标识、发起所述调用请求的业务的第二识别标识;根据所述调用请求,在存储所述虚拟资源的发放记录的发放记录表进行查询,所述虚拟资源的发放记录包括虚拟资源发送至的使用方的第三识别标识、发起调用所述虚拟资源的业务的第四识别标识;若查询到所述第三识别标识与所述第一识别标识相同且所述第四识别标识与所述第二识别标识相同的目标发放记录,则获取所述目标发放记录所对应的任务的执行状态;根据所述执行状态,相应的执行所述调用请求的预设操作。可选的,所述方法中,所述发起所述调用请求的业务的第二识别标识包括所述业务的业务类型标识,所述发放记录中的第四识别标识包括所述业务类型标识;所述在存储所述虚拟资源的发放记录的发放记录表进行查询包括:在存储所述虚拟资源的发放记录的发放记录表查询与所述第二识别标识所包括的业务类型标识相同的第四识别标识。可选的,所述方法中,所述在存储所述虚拟资源发放记录的发放记录表进行查询之后,还包括:若未查询到所述目标发放记录,则加载所述目标虚拟资源,并将所述目标虚拟资源发放至所述虚拟资源调用方;将所述目标虚拟资源的发放记录更新到所述发放记录表中。可选的,所述方法中,若所述执行状态为处理成功,则取消所述调用请求。可选的,所述方法中,还包括:当所述任务的执行状态为处理失败或处理中时,等待预设时长;在经过所述预设时长后,重新获取所述任务的执行状态,根据所述执行状态执行相应的处理;当重新获取的所述任务的执行状态为处理失败或处理中的总次数达到重加载阈值,则初始化所述任务,并重新执行所述任务。可选的,所述方法中,所述加载所述目标虚拟资源包括:从数据库的缓存中读取所述目标虚拟资源,所述数据库用于存储虚拟资源,所述缓存为执行调用虚拟资源的数据处理方法的设备在所述设备本地缓存的数据。可选的,所述方法中,从数据库的缓存中读取所述目标虚拟资源之前或之后,还包括:基于监听到的所述数据库的更新事件对所述缓存进行重加载。可选的,所述方法中,当预期的调用请求的数量达到并发阈值时,所述基于监听到的所述数据库的更新事件对所述缓存进行重加载包括:在延迟缓存时长后,基于监听到的所述数据库的更新事件对所述缓存进行重加载。根据本公开实施例的第二方面,还供一种调用虚拟资源的数据处理装置,包括:请求接收模块,其被配置为,接收目标虚拟资源的调用请求,所述调用请求包括虚拟资源调用方的第一识别标识、发起所述调用请求的业务的第二识别标识;去重模块,其被配置为,根据所述调用请求,在存储所述虚拟资源的发放记录的发放记录表进行查询,所述虚拟资源的发放记录包括虚拟资源发送至的使用方的第三识别标识、发起调用所述虚拟资源的业务的第四识别标识;第一处理模块,其被配置为,若查询到所述第三识别标识与所述第一识别标识相同且所述第四识别标识与所述第二识别标识相同的目标发放记录,则获取所述目标发放记录所对应的任务的执行状态;策略执行模块,其被配置为,根据所述执行状态,相应的执行所述调用请求的预设操作。可选的,所述装置还包括:第二处理模块,其被配置为,在存储所述虚拟资源发放记录的发放记录表进行查询之后,若未查询到所述目标发放记录,则加载所述目标虚拟资源,并将所述目标虚拟资源发放至所述虚拟资源调用方;记录添加模块,其被配置为,将所述目标虚拟资源的发放记录更新到所述发放记录表中。可选的,所述装置中,所述发起所述调用请求的业务的第二识别标识包括所述业务的业务类型标识,所述发放记录中的第四识别标识包括所述业务类型标识;所述去重模块在存储所述虚拟资源的发放记录的发放记录表进行查询包括:在存储所述虚拟资源的发放记录的发放记录表查询与所述第二识别标识所包括的业务类型标识相同的第四识别标识。可选的,所述装置中,所述策略执行模块在所述执行状态为处理成功时,取消所述调用请求。可选的,所述装置中,所述策略执行模块在所述任务的执行状态为处理失败或处理中时,等待预设时长;在经过所述预设时长后,重新获取所述任务的执行状态,根据所述执行状态执行相应的处理;当重新获取的所述任务的执行状态为处理失败或处理中的总次数达到重加载阈值,则初始化所述任务,并重新执行所述任务。可选的,所述装置中,所述装置还包括缓存,用于从数据库的缓存中读取所述目标虚拟资源,所述数据库用于存储虚拟资源,所述缓存为执行调用虚拟资源的数据处理方法的设备在所述设备本地缓存的数据。可选的,所述装置中,所述装置还包括:缓存更新模块,其被配置为,从数据库的缓存中读取所述目标虚拟资源之前或之后,基于监听到的所述数据库的更新事件对所述缓存进行重加载。可选的,所述装置中,所述装置还包括:并发优化模块,其被配置为,当预期的调用请求的数量达到并发阈值时,延迟缓存时长;所述缓存更新模块在延迟所述缓存时长后,基于监听到的所述数据库的更新事件对所述缓存进行重加载。根据本公开实施例的第三方面,还提供一种服务器,包括:至少一个处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现本公开中实施于服务器的任一项实施例所述的方法。根据本公开实施例的第四方面,还提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令服务器的处理器执行时,使得所述服务器能够执行本公开中实施于服务器的任一项所述的方法。根据本公开实施例的第五方面,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现本公开中实施于服务器的任一项实施例所述的方法。本公开的实施例提供的技术方案至少带来以下本文档来自技高网...

【技术保护点】
1.一种调用虚拟资源的数据处理方法,其特征在于,包括:/n接收目标虚拟资源的调用请求,所述调用请求包括虚拟资源调用方的第一识别标识、发起所述调用请求的业务的第二识别标识;/n根据所述调用请求,在存储所述虚拟资源的发放记录的发放记录表进行查询,所述虚拟资源的发放记录包括虚拟资源发送至的使用方的第三识别标识、发起调用所述虚拟资源的业务的第四识别标识;/n若查询到所述第三识别标识与所述第一识别标识相同且所述第四识别标识与所述第二识别标识相同的目标发放记录,则获取所述目标发放记录所对应的任务的执行状态;/n根据所述执行状态,相应的执行所述调用请求的预设操作。/n

【技术特征摘要】
1.一种调用虚拟资源的数据处理方法,其特征在于,包括:
接收目标虚拟资源的调用请求,所述调用请求包括虚拟资源调用方的第一识别标识、发起所述调用请求的业务的第二识别标识;
根据所述调用请求,在存储所述虚拟资源的发放记录的发放记录表进行查询,所述虚拟资源的发放记录包括虚拟资源发送至的使用方的第三识别标识、发起调用所述虚拟资源的业务的第四识别标识;
若查询到所述第三识别标识与所述第一识别标识相同且所述第四识别标识与所述第二识别标识相同的目标发放记录,则获取所述目标发放记录所对应的任务的执行状态;
根据所述执行状态,相应的执行所述调用请求的预设操作。


2.根据权利要求1所述的方法,其特征在于,所述在存储所述虚拟资源发放记录的发放记录表进行查询之后,还包括:
若未查询到所述目标发放记录,则加载所述目标虚拟资源,并将所述目标虚拟资源发放至所述虚拟资源调用方;
将所述目标虚拟资源的发放记录更新到所述发放记录表中。


3.根据权利要求2所述的方法,其特征在于,所述加载所述目标虚拟资源包括:
从数据库的缓存中读取所述目标虚拟资源,所述数据库用于存储虚拟资源,所述缓存为执行调用虚拟资源的数据处理方法的设备在所述设备本地缓存的数据。


4.根据权利要求3所述的方法,其特征在于,从数据库的缓存中读取所述目标虚拟资源之前或之后,还包括:
基于监听到的所述数据库的更新事件对所述缓存进行重加载。


5.一种调用虚拟资源的数据处理装置,其特征在于,包括:
请求接收模块,其被配置为,接收目标虚拟资源的调用请求,所述调用请求包括虚拟资源调用方的第一识别标识、发起所述调用请求的业务的第二识别标识;
去重模块,其被配置为,根据所述调用请求,在存储所述虚拟资源的...

【专利技术属性】
技术研发人员:李舜民
申请(专利权)人:北京达佳互联信息技术有限公司
类型:发明
国别省市:北京;11

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

1