本申请涉及金融领域或数据处理,特别是涉及一种基于双重加锁的批处理方法、装置及相关产品。
背景技术:
1、随着科技的不断发展,各个不同的领域都在向信息化、数据化的方向发展。在金融领域中存在资源管理系统,用户可以通过资源管理系统自由的管理自己持有的资源,例如用户可以将自己的资源投入一个产品中,用户还可以将自己的资源从一个产品中取出。用户通过资源管理系统对自己资源的管理会通过任务的形式发送至为用户保存资源的资源保存方,在一种可能的实现方式中,资源保存方可以是银行。资源保存方会在特定的时间对所有用户发送的任务进行批量的处理。
2、现有技术的批处理使用一个服务器处理,利用一个服务器对批处理任务的不同节点进行处理。但是通过一个服务器处理批处理任务效率较低。
3、因此,如何提高批处理任务的效率成为了本领域技术人员亟需解决的技术问题。
技术实现思路
1、基于上述问题,本申请提供了一种基于双重加锁的批处理方法、装置及相关产品以解决现有技术处理批处理任务效率较低的问题。
2、本申请提供了一种基于双重加锁的批处理方法,所述方法包括以下步骤:
3、为任务队列进行第一加锁使所述任务队列只能被第一设备访问;
4、利用所述第一设备查询所述任务队列,每两次相邻的查询所述任务队列之间经过相同的预设时间;
5、当所述第一设备查询到所述任务队列中存在批处理任务时,为所述批处理任务对应的数据库进行第二加锁使所述批处理任务对应的数据库只能被第二设备访问;
6、利用所述第二设备基于所述批处理任务对应的数据库处理所述批处理任务。
7、在一种可能的实现方式中,所述当所述第一设备查询到所述任务队列中存在批处理任务时,为所述批处理任务对应的数据库进行第二加锁使所述批处理任务对应的数据库只能被第二设备访问包括:
8、当所述任务队列中存在开始批处理任务的节点时,为所述节点对应的数据库进行第二加锁使所述批处理任务的节点对应的数据库只能被第二设备访问;
9、所述利用所述第二设备基于所述批处理任务对应的数据库处理所述批处理任务包括:
10、利用所述第二设备基于所述节点对应的数据库处理所述批处理任务的节点。
11、在一种可能的实现方式中,所述当所述任务队列中存在开始批处理任务的节点时,为所述节点对应的数据库进行第二加锁使所述批处理任务的节点对应的数据库只能被第二设备访问包括:
12、当所述任务队列中存在开始批处理任务的多个节点时,为多个所述节点对应的数据库进行第二加锁使多个所述节点对应的数据库只能被对应的第二设备访问。
13、在一种可能的实现方式中,所述为任务队列进行第一加锁使所述任务队列只能被第一设备访问包括:
14、为多个任务队列进行第一加锁使多个所述任务队列只能被对应的第一设备访问;
15、所述利用所述第一设备查询所述任务队列,每两次相邻的查询所述任务队列之间经过相同的预设时间包括:
16、利用多个所述任务队列与所述第一设备的对应关系,通过所述第一设备访问对应的任务队列,每两次相邻的查询所述任务队列之间经过相同的预设时间。
17、本申请还提供了一种基于双重加锁的批处理装置,所述设备包括以下模块:
18、第一加锁模块,用于为任务队列进行第一加锁使所述任务队列只能被第一设备访问;
19、查询模块,用于利用所述第一设备查询所述任务队列,每两次相邻的查询所述任务队列之间经过相同的预设时间;
20、第二加锁模块,用于当所述第一设备查询到所述任务队列中存在批处理任务时,为所述批处理任务对应的数据库进行第二加锁使所述批处理任务对应的数据库只能被第二设备访问;
21、批处理模块,用于利用所述第二设备基于所述批处理任务对应的数据库处理所述批处理任务。
22、在一种可能的实现方式中,所述第二加锁模块具体用于:
23、当所述任务队列中存在开始批处理任务的节点时,为所述节点对应的数据库进行第二加锁使所述批处理任务的节点对应的数据库只能被第二设备访问;
24、所述批处理模块具体用于:
25、利用所述第二设备基于所述节点对应的数据库处理所述批处理任务的节点。
26、在一种可能的实现方式中,所述第二加锁模块具体用于:
27、当所述任务队列中存在开始批处理任务的多个节点时,为多个所述节点对应的数据库进行第二加锁使多个所述节点对应的数据库只能被对应的第二设备访问。
28、在一种可能的实现方式中,所述第一加锁模块具体用于:
29、为多个任务队列进行第一加锁使多个所述任务队列只能被对应的第一设备访问;
30、所述查询模块具体用于:
31、利用多个所述任务队列与所述第一设备的对应关系,通过所述第一设备访问对应的任务队列,每两次相邻的查询所述任务队列之间经过相同的预设时间。
32、本申请还提供了一种电子设备,所述电子设备包括处理器以及存储器:
33、所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
34、所述处理器用于根据所述计算机程序中的指令执行上述基于双重加锁的批处理方法的步骤。
35、本申请还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序被电子设备执行时实现上述基于双重加锁的批处理方法的步骤。
36、相较于现有技术,本申请具有以下有益效果:
37、本申请提供的方法在处理批处理任务时,进行了双重加锁。为任务队列进行第一加锁使任务队列只能被第一设备访问。通过对任务队列的第一加锁,使得任务队列不会被多个设备查询,任务队列只可被第一设备查询,使得在存在多个任务队列和多个设备时,对任务队列的查询不会出现多个设备查询同一个任务队列的情况。为批处理任务对应的数据库进行第二加锁使批处理任务对应的数据库只能被第二设备访问。通过进行第二加锁使得在处理批处理任务时,对应的数据库只能被第二设备访问。若批处理任务存在多个对应的数据库,每一个数据库都只能被对应的第二设备访问。通过双重加锁机制使得在利用多个服务器处理一个批处理任务时不会出现混乱,同时利用多个服务器处理一个批处理任务的效率更高。
1.一种基于双重加锁的批处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述当所述第一设备查询到所述任务队列中存在批处理任务时,为所述批处理任务对应的数据库进行第二加锁使所述批处理任务对应的数据库只能被第二设备访问包括:
3.根据权利要求2所述的方法,其特征在于,所述当所述任务队列中存在开始批处理任务的节点时,为所述节点对应的数据库进行第二加锁使所述批处理任务的节点对应的数据库只能被第二设备访问包括:
4.根据权利要求1所述的方法,其特征在于,所述为任务队列进行第一加锁使所述任务队列只能被第一设备访问包括:
5.一种基于双重加锁的批处理装置,其特征在于,包括:
6.根据权利要求5所述的装置,其特征在于,所述第二加锁模块具体用于:
7.根据权利要求6所述的装置,其特征在于,所述第二加锁模块具体用于:
8.根据权利要求5所述的装置,其特征在于,所述第一加锁模块具体用于:
9.一种电子设备,其特征在于,包括存储器和处理器,其中:
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-4任意一项所述的基于双重加锁的批处理方法。