[发明专利]数据协同初始化方法及其装置、设备、介质在审
申请号: | 202111628409.4 | 申请日: | 2021-12-28 |
公开(公告)号: | CN114327797A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 黄育才 | 申请(专利权)人: | 广州华多网络科技有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/48;G06F9/52 |
代理公司: | 广州利能知识产权代理事务所(普通合伙) 44673 | 代理人: | 王增鑫 |
地址: | 511442 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 协同 初始化 方法 及其 装置 设备 介质 | ||
本申请涉及计算机资源调度技术领域,公开一种数据协同初始化方法及其装置、设备、介质,包括:拦截分别用于获取多个目标数据的多个并发的数据获取请求,其中,至少存在部分目标数据取决于另一部分目标数据的确定;响应各个数据获取请求而运行各个相应的请求线程;控制其中一个数据获取请求获得控制锁,获得控制锁的数据获取请求启动数据初始化事务以完成所述多个目标数据的后台计算,在所述数据初始化事务执行成功后释放所述控制锁;在所述数据初始化事务执行期间控制未获取到控制锁的其他请求线程根据动态更新的休眠时长进行休眠,休眠结束后尝试获得相应的目标数据以应答各个相应的数据获取请求。本申请实现在并发情况下精准控制线程的等待时长。
技术领域
本申请涉及计算机资源调度技术领域,尤其涉及一种数据协同初始化方法及其相应的装置、计算机设备以及计算机可读存储介质。
背景技术
随着互联网的兴起,使用互联网产品已是常态化现象。一般互联网系统都是分布式部署的,分布式部署确实能带来性能和效率上的提升,不仅如此,还具备极佳的性价比,相比于使用造价较高的硬件配置的系统,分布式部系统使用造价较低硬件作为配置同样能达到与其性能相同,由此,发展至今已是分布式系统的时代。
然而,随着用户体量呈几何趋势不断增多,分布式系统经常需要处理并发场景下的数据初始化业务,即同一时间面临处理大量的相同或不同的数据初始化业务,通常这些数据需要通过并行调用多个接口,数据之间有存在内在的相互关联性,为此,基于以上种种原因,采用分布式锁进行中间协调,在同一时间只会有一个客户端能获取到锁而执行业务,其它客户端则得不到锁而进入休眠等待状态直至休眠结束,为了避免异常,该锁在一段有限的时间之后会被释放,因此,合理地分配休眠时间和持有锁的时间至关重要,关乎大量业务之间高效衔接,影响执行效率,但在现有技术中暂未有该相关的解决方案,因此,本申请人对此作出相应的探索。
发明内容
本申请的首要目的在于解决上述问题至少之一而提供一种数据协同初始化方法及其相应的装置、计算机设备、计算机可读存储介质。
为满足本申请的各个目的,本申请采用如下技术方案:
适应本申请的目的之一而提供的一种数据协同初始化方法,包括如下步骤:
拦截分别用于获取多个目标数据的多个并发的数据获取请求,其中,至少存在部分目标数据取决于另一部分目标数据的确定;
响应各个数据获取请求而运行各个相应的请求线程,用于获取相应的目标数据;
控制其中一个数据获取请求获得控制锁,获得控制锁的数据获取请求启动数据初始化事务以完成所述多个目标数据的后台计算,在所述数据初始化事务执行成功后释放所述控制锁;
在所述数据初始化事务执行期间控制未获取到控制锁的其他请求线程根据动态更新的休眠时长进行休眠,休眠结束后尝试获得相应的目标数据以应答各个相应的数据获取请求。
进一步的实施例中,控制其中一个数据获取请求获得控制锁,获得控制锁的数据获取请求启动数据初始化事务以完成所述多个目标数据的后台计算,在所述数据初始化事务执行成功后释放所述控制锁,包括如下步骤:
向首个运行的请求线程传递控制锁,以排除其他请求线程获得该控制锁;
由获得所述控制锁的请求线程启动数据初始化事务,通过该事务调用多个后台中间组件用于相应计算确定多个目标数据;
当所述数据初始化事务执行完成后,由获得所述控制锁的请求线程标记事务完成状态,将当次执行所消费的时长存储为历史消费时长,释放所述的控制锁;
随后执行该数据获取请求相对应的数据获取逻辑以获得相应的目标数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州华多网络科技有限公司,未经广州华多网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111628409.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置