CN110046040B - 分布式任务处理方法及系统和存储介质 - Google Patents
分布式任务处理方法及系统和存储介质 Download PDFInfo
- Publication number
- CN110046040B CN110046040B CN201910280104.5A CN201910280104A CN110046040B CN 110046040 B CN110046040 B CN 110046040B CN 201910280104 A CN201910280104 A CN 201910280104A CN 110046040 B CN110046040 B CN 110046040B
- Authority
- CN
- China
- Prior art keywords
- data storage
- node
- data
- storage units
- resources
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000013500 data storage Methods 0.000 claims abstract description 165
- 238000012545 processing Methods 0.000 claims abstract description 89
- 238000000034 method Methods 0.000 claims description 21
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例涉及云服务技术领域,公开了一种分布式任务处理方法及系统和存储介质。其包括:第一节点接收资源的数据,根据资源的信息得到资源对应的数据存储单元,并将资源的数据存储在对应的数据存储单元中;第二节点响应于第三节点的请求,向第三节点返回参与处理所述资源的数据的第三节点的数量;第三节点根据参与处理资源的数据的第三节点的数量以及第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从目标数据存储单元中获取对应的资源的数据进行处理。本发明不仅可减少对处理任务的竞争带来的消耗,而且可保证所有的任务均被及时处理。
Description
技术领域
本发明涉及云服务技术领域,特别涉及一种分布式任务处理方法及系统和存储介质。
背景技术
随着科技的发展,云服务的应用越来越广泛。在云服务系统中,通过一些节点监测云服务的虚拟机的CPU以及内存等的资源的使用率等数据,供用户决策是否需要扩容。同时,还需要对资源的数据做其他处理,例如计算CPU使用率平均值等,以便更好地维护云服务。在对资源的数据做其他处理时,例如每分钟接收到一个资源的一条相关数据,并需要在单位时间处理完接收到的新数据。其中,同一资源的数据之间相关,而不同资源的数据之间互不相关,因此同一个资源的数据不能同时被多个节点处理,避免出现错误。由于云服务系统的资源不断增长,需要处理的数据量也持续增长,所以采用分布式系统对资源的数据进行处理。分布式系统便于扩展,可以灵活增加系统的处理能力。
现有的分布式系统中采用以下方法分配资源的数据处理任务:通过第一节点将接收到的新数据放入一个集合里(例如Redis的data集合中),处理数据的节点(以下简称第二节点)通过遍历这个集合,获取到所有需要处理的数据,根据数据与资源的对应关系,得到所有需要处理的资源,并对资源进行排序,同时获取所有第二节点,并进行排序,然后根据本第二节点的顺序和需要处理的任务数量,从所有资源中按顺序截取对应数量的资源作为本第二节点需要处理的任务。其中,每个第二节点处理的资源数量例如为进程数乘以每个进程的任务数(常量)。由于接收数据和处理数据同步动态进行,所以所有第二节点不是同时获取任务,因此,每个第二节点获取到的所有任务资源列表可能会不一致,而各第二节点仅截取属于本节点的任务,因此在截取的任务之间可能有一部分任务没有被分配出去,导致任务在这一分钟内没有被处理,并且可能导致同一个资源的数据长时间不被处理。比如,第一节点接收到50个新数据,此时第二节点A得到当前有两个第二节点(第二节点A以及B)共同处理新数据,则第二节点A会截取25个资源的新数据进行处理,当第二节点B进行处理时,第一节点又接收到10个新数据,则第二节点B得到每个节点应处理30个新数据,因此第二节点B会截取第31~60个新数据进行处理,这样第25~30个数据则可能会一直得不到处理,因此,需要重启服务,改变各第二节点获取任务列表的时间及各第二节点的节点顺序来处理没有被处理的任务。同时,上述方法中各第二节点在任务的分配上可能会出现竞争,导致额外的时间消耗,并且还可能会导致排列在后面的第二节点没有任务处理,影响处理效率。
发明内容
本发明实施方式针对现有技术问题之一提供一种分布式任务处理方法及系统和存储介质,不仅可减少对处理任务的竞争带来的消耗,而且可保证所有的任务均被及时处理。
为解决上述技术问题,本发明的实施方式提供了一种分布式任务处理方法,应用于分布式系统,所述分布式系统包括第一节点、第三节点以及若干个第二节点,所述第二节点分别与所述第一节点和所述第三节点通信连接;所述方法包括:
所述第一节点接收资源的数据,根据所述资源的信息得到所述资源对应的数据存储单元,并将所述资源的数据存储在对应的数据存储单元中;其中,所述资源和所述数据存储单元均为多个;
所述第三节点响应于所述第二节点的请求,向所述第二节点返回参与处理所述资源的数据的第二节点的数量;
所述第二节点根据所述参与处理所述资源的数据的第二节点的数量以及所述第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从所述目标数据存储单元中获取对应的资源的数据进行处理。
本发明的实施方式还提供了一种分布式任务处理系统,包括:第一节点、第三节点以及若干个第二节点,所述第二节点分别与所述第一节点和所述第三节点通信连接;
所述第一节点用于接收资源的数据,根据所述资源的信息得到所述资源对应的数据存储单元,并将所述资源的数据存储在对应的数据存储单元中;其中,所述资源和所述数据存储单元均为多个;
所述第三节点用于响应所述第二节点的请求,向所述第二节点返回参与处理所述资源的数据的第二节点的数量;
所述第二节点用于根据所述参与处理所述资源的数据的第二节点的数量以及所述第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从所述目标数据存储单元中获取对应的资源的数据进行处理。
本发明的实施方式还提供了一种存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行如上所述的分布式任务处理方法。
本发明实施方式相对于现有技术而言,第一节点根据接收的资源的信息得到资源对应的数据存储单元,并将资源的数据存储在对应的数据存储单元中,而第二节点从第一节点获取数据存储单元的数量,从第三节点获取参与处理资源的数据的第二节点的数量,并根据数据存储单元的数量以及参与处理资源的数据的第二节点的数量确定各第二节点对应的目标数据存储单元,从目标数据存储单元中获取对应的资源的数据进行处理。由于不同资源的数据对应存储在不同的数据存储单元中,所以第二节点无需遍历所有数据以确定资源与数据的对应关系,从而可以减少对处理任务的竞争带来的消耗,并且第二节点是根据数据存储单元的数量确定需要处理的目标数据存储单元,所以可保证所有的资源都能及时得到处理。
作为一个实施例,所述根据所述资源的信息得到所述资源对应的数据存储单元,具体包括:对所述资源的信息进行哈希转换后再取模得到所述资源对应的数据存储单元;其中,模数为所述数据存储单元的数量。
作为一个实施例,所述第二节点根据所述参与处理所述资源的数据的第二节点的数量以及所述第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,具体包括:通过将所有数据存储单元平均分配至所述参与处理所述资源的数据的第二节点的方式得到各自对应的目标数据存储单元。
作为一个实施例,所述通过将所有数据存储单元平均分配至所述参与处理所述资源的数据的第二节点的方式得到各自对应的目标数据存储单元,具体包括:将所有数据存储单元按照所述参与处理所述资源的数据的第二节点的数量进行分组;按照所述参与处理所述资源的数据的第二节点的预设顺序从每组中的数据存储单元中挑选出对应的数据存储单元作为各所述第二节点的目标数据存储单元。
作为一个实施例,从所述目标数据存储单元中获取对应的资源的数据进行处理,具体包括:计算得到以下任意一者或其组合:CPU的使用率平均值、内存使用率平均值、URL请求数。
作为一个实施例,还包括:所述第二节点在从所述目标数据存储单元中获取对应的资源的数据进行处理后删除处理过的数据。
作为一个实施例,所述第一节点和所述第三节点为同一服务器。
附图说明
图1是根据本发明分布式任务处理系统的结构框图;
图2是根据本发明第一实施方式中的分布式任务处理方法的流程图;
图3是根据本发明第二实施方式中的分布式任务处理方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本发明所要求保护的技术方案。
本发明的第一实施方式涉及一种分布式任务处理方法,应用于如图1所示的分布式系统,该系统包括:第一节点101、第三节点103以及若干个第二节点102,第二节点102分别与第一节点101和第三节点103通信连接。其中,各第二节点102定时向第三节点103上报自身的相关信息,例如第二节点是否处于可用状态等,以供第三节点103统计能够参与数据资源的数据的第二节点的数量。然不限于此,比如,第一节点101和第三节点103可以为同一台服务器。本实施方式中,第一节点101也可以同时兼具第二节点102的功能。本实施方式的分布式任务处理方法包括:第一节点接收资源的数据,根据资源的信息得到资源对应的数据存储单元,并将资源的数据存储在对应的数据存储单元中;其中,资源和数据存储单元均为多个;第三节点响应于第二节点的请求,向第二节点返回参与处理资源的数据的第二节点的数量;第二节点根据参与处理资源的数据的第二节点的数量以及第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从目标数据存储单元中获取对应的资源的数据进行处理。本发明实施方式相对于现有技术而言,第一节点根据接收的资源的信息得到资源对应的数据存储单元,并将资源的数据存储在对应的数据存储单元中,而第二节点从第一节点获取数据存储单元的数量,从第三节点获取参与处理资源的数据的第二节点的数量,并根据数据存储单元的数量以及参与处理资源的数据的第二节点的数量确定各第二节点对应的目标数据存储单元,从目标数据存储单元中获取对应的资源的数据进行处理。由于不同资源的数据对应存储在不同的数据存储单元中,所以第二节点无需遍历所有数据以确定资源与数据的对应关系,从而可以减少对处理任务的竞争带来的消耗,并且第二节点是根据数据存储单元的数量确定需要处理的目标数据存储单元,所以可保证所有的资源都能及时得到处理。
下面对本实施方式的分布式任务处理方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
请参阅图2,本实施方式的分布式任务处理方法包括步骤201至步骤103。
步骤201:第一节点接收资源的数据,根据资源的信息得到资源对应的数据存储单元,并将资源的数据存储在对应的数据存储单元中。
其中,资源和数据存储单元均为多个。资源例如是云服务系统中虚拟机的CPU、内存等的资源,资源的数据例如是CPU每分钟的使用率,内存每分钟的使用率等。然不限于此,资源还可以是URL、页面等,资源的数据可以是URL访问率,页面请求数等。本实施方式对于资源及其数据均不作具体限制。其中,资源的数据可由云服务系统中的一些节点监测得到,并上报至第一节点。本实施方式中的分布式系统可以为云服务系统的一部分。
本实施方式中,数据存储单元例如为Redis等数据库的数据(data)集合,本实施方式对于数据存储单元不做具体限制。本实施方式中,可以在第一节点中创建固定数量的多个数据存储单元,例如创建1024个数据存储单元,并对1024个数据存储单元编号,例如为1~1024,本实施方式对于数据存储单元的数量不做具体限制,数据存储单元的数量也可以根据资源的规模增加或者减小,数据存储单元数量的增加方式请参见下文。
步骤201中可以对资源的信息进行哈希转换后再取模得到资源对应的数据存储单元,其中,模数为数据存储单元的数量,从而可以根据资源的信息映射得到与该资源对应的数据存储单元。
下面对该映射的计算过程进行举例说明:资源例如为云服务器A的CPU,该资源的信息可以为UUID,该UUID可以采用32位16进制字表示,例如为0986e0ac-09e8-4f2d-a3c2-66a2473ead40。将该UUID通过哈希转换得到一个128位二进制表示的整数(12366578741376259739645328858664875L),然后对数据存储单元的总数取模,得到对应的数据存储单元的编号,模数假如为1024,则12366578741376259739645328858664875L%1024得到320,由于数据存储单元的编号从1开始,所以将取模的结果加1即可得到该资源对应的数据存储单元的编号321。
步骤201通过取模运算在模数不变的情况下,不同资源对应的数据存储单元也不变,因此资源和数据存储单元之间具有固定的对应关系。在一些例子中,随着资源规模不断增长,也可以增加数据存储单元的数量,例如成倍增加数据存储单元的数量,使得大部分的资源与数据存储单元之间的对应关系保持不变。
步骤201中的将资源的数据存储在对应的数据存储单元中,具体可以为将上述UUID为0986e0ac-09e8-4f2d-a3c2-66a2473ead40的资源的数据存储在编号为321的数据存储单元中。
步骤202:第三节点响应于第二节点的请求,向第二节点返回参与处理资源的数据的第二节点的数量。
第三节点可以根据各第二节点定时上报的信息得到可用于对资源的数据进行处理的第二节点的数量。在接收到第二节点的请求时,可向其返回参与处理资源的数据的第二节点的数量。
步骤203:第二节点根据参与处理资源的数据的第二节点的数量以及第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从目标数据存储单元中获取对应的资源的数据进行处理。
具体地,各第二节点可以根据参与处理资源的数据的第二节点的数量对第一节点中的数据存储单元的数量进行平均分配以得到各自对应的目标数据存储单元。然不限于此,只要保证第一节点中的每个数据存储单元均对应有第二处理节点即可。在实际应用中,第二节点还可以在从目标数据存储单元中获取对应的资源的数据进行处理后删除处理过的数据,从而可以节省第一节点的存储空间。
其中,从目标数据存储单元中获取对应的资源的数据进行处理可以为计算得到以下任意一者或其组合:CPU的使用率平均值、内存使用率平均值、URL请求数,从而可供服务方更好地维护云服务的服务性能。本实施方式对于处理对象以及处理结果均不作具体限制。
本实施方式相对于现有技术而言,通过预先创建多个数据存储单元,并根据接收到的资源的信息通过取模运算等快速将资源映射到对应的数据存储单元,并将资源的数据存储到对应的存储单元中,从而使得不同资源之间的数据单独存储,大幅减轻第二节点为了避免对同一资源的数据同时进行处理的竞争所造成的消耗,并且由于第一节点中的数据存储单元的数量相对固定,且各第二节点是以数据存储单元为单位获取待处理的资源的数据,所以可有效避免数据被漏处理。
本发明的第二实施方式涉及一种分布式任务处理方法,第二实施方式在第一实施方式的基础上进一步限定了各第二节点平均分配数据处理单元的方法,从而可确保数据处理任务平均分配至各第二节点,保证处理效率。
请参阅图3,本实施方式的分布式任务处理方法包括步骤301至步骤304。
其中,步骤301、步骤302分别与第一实施方式中的步骤201、步骤202对应相同,此处不再赘述。
步骤303:通过将所有数据存储单元平均分配至参与处理资源的数据的第二节点的方式得到各自对应的目标数据存储单元。
其中,数据存储单元的数量为第一节点中预先创建的数据存储单元的总数,其可以是固定不变的,例如为1024个。第二节点可以为分布式系统中配置为用于对资源的数据进行处理的节点,第二节点的数量可以不变,也可以根据资源的规模进行水平扩展,例如增加第二节点的数量。本实施方式对此不做具体限制。
步骤303通过将所有数据存储单元平均分配至参与处理资源的数据的第二节点的方式得到各自对应的目标数据存储单元可以包括:将所有数据存储单元按照参与处理资源的数据的第二节点的数量进行分组,按照参与处理资源的数据的第二节点的预设顺序从每组中的数据存储单元中挑选出对应的数据存储单元作为各第二节点的目标数据存储单元。其中,在得到参与处理资源的数据的第二节点后需要对其进行排序。若数据存储单元的数量为第二节点的数量的整数倍且没有余数,则该整数倍即为分组数量,若有余数,则该整数倍加1即为分组数量。举例而言,第二节点的数量例如为100个,分别编号为1~100,数据存储单元的数量为1024个,分别编号为1~1024,因此按照数据存储单元的编号将其分为11组,并将前10组每组按照第二节点的顺序分别分配一个数据存储单元给第二节点,而第11组中的24个数据存储单元则可以按照从前到后的顺序分别分配一个给第二节点即可。然不限于此,只要能够将数据存储单元较为平均地分配至各第二节点即可。
步骤304:从目标数据存储单元中获取对应的资源的数据进行处理。
本实施方式相对于现有技术而言,通过预先创建多个数据存储单元,并根据接收到的资源的信息通过取模运算等快速将资源映射到对应的数据存储单元,并将资源的数据存储到对应的存储单元中,从而使得不同资源之间的数据单独存储,大幅减轻第二节点为了避免对同一资源的数据同时进行处理的竞争所造成的消耗,并且由于第一节点中的数据存储单元的数量相对固定,且各第二节点是以数据存储单元为单位获取待处理的资源的数据,所以可有效避免数据被漏处理。并且,由于各第二节点平均分配数据存储单元,从而可以更高效地处理数据。
本发明的第三实施方式涉及一种分布式任务处理系统,请继续参阅图1,该系统包括:第一节点101、第三节点103以及若干个第二节点102,第二节点102分别与第一节点101和第三节点103通信连接。其中,各第二节点102定时向第三节点103上报自身的相关信息,例如第二节点是否处于可用状态等,以供第三节点103统计能够参与数据资源的数据的第二节点的数量。然不限于此,比如,第一节点101和第三节点103可以为同一台服务器。
其中,第一节点101用于接收资源的数据,根据资源的信息得到资源对应的数据存储单元,并将资源的数据存储在对应的数据存储单元中;其中,资源和数据存储单元均为多个;
第三节点103用于响应第二节点的请求,向第二节点返回参与处理资源的数据的第二节点的数量;
第二节点102用于根据参与处理资源的数据的第二节点102的数量以及第一节点101中的数据存储单元的数量确定各自对应的目标数据存储单元,并从目标数据存储单元中获取对应的资源的数据进行处理。
在一个例子中,第一节点101具体用于对资源的信息进行哈希转换后再取模得到资源对应的数据存储单元。其中,模数为数据存储单元的数量。第二节点102用于通过将所有数据存储单元平均分配至参与处理所述资源的数据的第二节点的方式得到各自对应的目标数据存储单元。具体地,第二节点102用于将所有数据存储单元按照参与处理资源的数据的第二节点102的数量进行分组,并按照参与处理所述资源的数据的第二节点102的预设顺序从每组中的数据存储单元中挑选出对应的数据存储单元作为各第二节点102的目标数据存储单元。其中,第二节点102具体用于计算得到以下任意一者或其组合:CPU的使用率平均值、内存使用率平均值、URL请求数。第二节点102还用于在从目标数据存储单元中获取对应的资源的数据进行处理后删除处理过的数据。
本实施方式相对于现有技术而言,通过预先创建多个数据存储单元,并根据接收到的资源的信息通过取模运算等快速将资源映射到对应的数据存储单元,并将资源的数据存储到对应的存储单元中,从而使得不同资源之间的数据单独存储,大幅减轻第二节点为了避免对同一资源的数据同时进行处理的竞争所造成的消耗,并且由于第一节点中的数据存储单元的数量相对固定,且各第二节点是以数据存储单元为单位获取待处理的资源的数据,所以可有效避免数据被漏处理。并且,由于各第二节点平均分配数据存储单元,从而可以更高效地处理数据。
不难发现,本实施方式为与第二实施方式相对应的系统实施例,本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
本发明的第四实施方式涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (10)
1.一种分布式任务处理方法,其特征在于,应用于分布式系统,所述分布式系统包括第一节点、第三节点以及若干个第二节点,所述第二节点分别与所述第一节点和所述第三节点通信连接;所述方法包括:
所述第一节点创建多个数据存储单元;接收资源的数据,根据所述资源的信息得到所述资源对应的数据存储单元,并将所述资源的数据存储在对应的数据存储单元中;其中,所述资源和所述数据存储单元均为多个;
所述第三节点响应于所述第二节点的请求,向所述第二节点返回参与处理所述资源的数据的第二节点的数量;
所述第二节点根据所述参与处理所述资源的数据的第二节点的数量以及所述第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从所述目标数据存储单元中获取对应的资源的数据进行处理。
2.根据权利要求1所述的分布式任务处理方法,其特征在于,所述根据所述资源的信息得到所述资源对应的数据存储单元,具体包括:
对所述资源的信息进行哈希转换后再取模得到所述资源对应的数据存储单元;其中,模数为所述数据存储单元的数量。
3.根据权利要求1所述的分布式任务处理方法,其特征在于,所述第二节点根据所述参与处理所述资源的数据的第二节点的数量以及所述第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,具体包括:
通过将所有数据存储单元平均分配至所述参与处理所述资源的数据的第二节点的方式得到各自对应的目标数据存储单元。
4.根据权利要求3所述的分布式任务处理方法,其特征在于,所述通过将所有数据存储单元平均分配至所述参与处理所述资源的数据的第二节点的方式得到各自对应的目标数据存储单元,具体包括:
将所有数据存储单元按照所述参与处理所述资源的数据的第二节点的数量进行分组;
按照所述参与处理所述资源的数据的第二节点的预设顺序从每组中的数据存储单元中挑选出对应的数据存储单元作为各所述第二节点的目标数据存储单元。
5.根据权利要求1所述的分布式任务处理方法,其特征在于,从所述目标数据存储单元中获取对应的资源的数据进行处理,具体包括:
计算得到以下任意一者或其组合:CPU的使用率平均值、内存使用率平均值、URL请求数。
6.根据权利要求1所述的分布式任务处理方法,其特征在于,还包括:所述第二节点在从所述目标数据存储单元中获取对应的资源的数据进行处理后删除处理过的数据。
7.根据权利要求1所述的分布式任务处理方法,其特征在于,所述第一节点和所述第三节点为同一服务器。
8.一种分布式任务处理系统,其特征在于,包括:第一节点、第三节点以及若干个第二节点,所述第二节点分别与所述第一节点和所述第三节点通信连接;
所述第一节点用于创建多个数据存储单元;接收资源的数据,根据所述资源的信息得到所述资源对应的数据存储单元,并将所述资源的数据存储在对应的数据存储单元中;其中,所述资源和所述数据存储单元均为多个;
所述第三节点用于响应所述第二节点的请求,向所述第二节点返回参与处理所述资源的数据的第二节点的数量;
所述第二节点用于根据所述参与处理所述资源的数据的第二节点的数量以及所述第一节点中的数据存储单元的数量确定各自对应的目标数据存储单元,并从所述目标数据存储单元中获取对应的资源的数据进行处理。
9.根据权利要求8所述的分布式任务处理系统,其特征在于,所述第一节点具体用于对所述资源的信息进行哈希转换后再取模得到所述资源对应的数据存储单元;其中,模数为所述数据存储单元的数量。
10.一种存储介质,其特征在于,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行如权利要求1至6中任一项所述的分布式任务处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910280104.5A CN110046040B (zh) | 2019-04-09 | 2019-04-09 | 分布式任务处理方法及系统和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910280104.5A CN110046040B (zh) | 2019-04-09 | 2019-04-09 | 分布式任务处理方法及系统和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110046040A CN110046040A (zh) | 2019-07-23 |
CN110046040B true CN110046040B (zh) | 2021-11-16 |
Family
ID=67276483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910280104.5A Expired - Fee Related CN110046040B (zh) | 2019-04-09 | 2019-04-09 | 分布式任务处理方法及系统和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110046040B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463214B (zh) * | 2019-09-09 | 2023-11-03 | 北京京东振世信息技术有限公司 | 数据处理方法及装置、计算机可读存储介质以及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007017557A1 (en) * | 2005-08-08 | 2007-02-15 | Techila Technologies Oy | Management of a grid computing network using independent softwqre installation packages |
CN103347055A (zh) * | 2013-06-19 | 2013-10-09 | 北京奇虎科技有限公司 | 云计算平台中的任务处理系统、设备及方法 |
CN106095597A (zh) * | 2016-05-30 | 2016-11-09 | 深圳市鼎盛智能科技有限公司 | 客户端数据处理方法及装置 |
CN108733493A (zh) * | 2018-05-25 | 2018-11-02 | 北京车和家信息技术有限公司 | 资源利用率的计算方法、计算装置及计算机可读存储介质 |
CN108763299A (zh) * | 2018-04-19 | 2018-11-06 | 贵州师范大学 | 一种大规模数据处理计算加速系统 |
CN108874528A (zh) * | 2017-05-09 | 2018-11-23 | 北京京东尚科信息技术有限公司 | 分布式任务存储系统和分布式任务存储/读取方法 |
-
2019
- 2019-04-09 CN CN201910280104.5A patent/CN110046040B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007017557A1 (en) * | 2005-08-08 | 2007-02-15 | Techila Technologies Oy | Management of a grid computing network using independent softwqre installation packages |
CN103347055A (zh) * | 2013-06-19 | 2013-10-09 | 北京奇虎科技有限公司 | 云计算平台中的任务处理系统、设备及方法 |
CN106095597A (zh) * | 2016-05-30 | 2016-11-09 | 深圳市鼎盛智能科技有限公司 | 客户端数据处理方法及装置 |
CN108874528A (zh) * | 2017-05-09 | 2018-11-23 | 北京京东尚科信息技术有限公司 | 分布式任务存储系统和分布式任务存储/读取方法 |
CN108763299A (zh) * | 2018-04-19 | 2018-11-06 | 贵州师范大学 | 一种大规模数据处理计算加速系统 |
CN108733493A (zh) * | 2018-05-25 | 2018-11-02 | 北京车和家信息技术有限公司 | 资源利用率的计算方法、计算装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110046040A (zh) | 2019-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109660607B (zh) | 一种业务请求分发方法、接收方法、装置及服务器集群 | |
CN111522641B (zh) | 任务调度方法、装置、计算机设备和存储介质 | |
US20220156115A1 (en) | Resource Allocation Method And Resource Borrowing Method | |
CN111857992B (zh) | 一种Radosgw模块中线程资源分配方法和装置 | |
CN109800204B (zh) | 数据分配方法及相关产品 | |
CN108933829A (zh) | 一种负载均衡方法及装置 | |
CN111722918A (zh) | 业务标识码生成方法、装置、存储介质及电子设备 | |
CN110244901B (zh) | 任务分配方法及装置、分布式存储系统 | |
CN107105013B (zh) | 文件的处理方法、服务器、终端和系统 | |
EP3958122A1 (en) | Memory management method, apparatus, and system | |
US20180225147A1 (en) | Resource allocation method and apparatus | |
CN115334082A (zh) | 负载均衡方法、装置、计算机设备、存储介质和产品 | |
CN112087401B (zh) | 分布式存储中实现服务质量的方法和装置 | |
CN110597879B (zh) | 时序数据的处理方法和装置 | |
CN112269661A (zh) | 基于Kafka集群的分区迁移方法和装置 | |
CN110046040B (zh) | 分布式任务处理方法及系统和存储介质 | |
CN108153494A (zh) | 一种io请求处理方法及装置 | |
CN110178119B (zh) | 处理业务请求的方法、装置与存储系统 | |
CN109788013B (zh) | 分布式系统中作业资源分配方法、装置及设备 | |
CN111400241B (zh) | 数据重构方法和装置 | |
CN112711587B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN116303418A (zh) | 基于物联网平台的海量规则处理方法、系统及存储介质 | |
CN114860460A (zh) | 一种数据库加速的方法、装置、计算机设备 | |
CN110708374B (zh) | 一种边缘节点的分配方法、分配装置及可读存储介质 | |
JP2019528521A (ja) | 統計を集約するための方法および分散ストレージシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211116 |