The invention discloses a distributed job slice allocation method, comprising: receiving instruction set, according to the instruction set for each server cluster domain setting load values; detect the cluster server within a domain are expansion or decrease; when the cluster server within a domain are expanded, acquiring cluster domain server load as the first load value, according to the first load value in accordance with the custom rules to get the first job server specified load slice, the expansion server will first job assigned to the corresponding slice expansion; or, when the cluster server within a domain of volume reduction, obtain volume reduction corresponding to the volume reduction server contains second operations slice, and access to non cluster domain server load reduction capacity value as second load value, according to the second load values the second slice operation according to specified rules Assign to non capacity server. The invention also discloses a distributed work piece distributing device. The invention improves the balance of the work piece allocation.
【技术实现步骤摘要】
本专利技术涉及服务器资源分配
,尤其涉及一种分布式作业分片分配方法和装置。
技术介绍
目前,在执行任务的过程中,一般会存在同一集群域内的服务器上作业分片分配不均匀的情况。例如,VLG域有3台服务器分别为node1、node2和node3,有3个作业分别为job1、job2、job3,其中,job1有1个分片,job2有2个分片,job3有2个分片。node1、node2、node3分别可以执行job1、job2、job3,依次启动node1、node2、node3时,在node1上面跑3个作业分片,在node1上面跑2个作业分片,在node3上面跑了0个作业分片,从而导致作业分片分配不均衡,即资源利用不均匀。另外,由于各个服务器之间并不知道其他服务器存在多少作业分片,因此当集群域内的服务器存在扩容或减容时,服务器上的作业分片是任意分配的,使得各个服务器上作业分片存在分配不均衡。
技术实现思路
本专利技术的主要目的在于提供一种分布式作业分片分配方法和装置,旨在提高作业分片分配的均衡性。为实现上述目的,本专利技术提供了一种分布式作业分片分配方法,包括:接收设置指令,根据所述设置指令为集群域内的各个服务器设定负载值;侦测所述集群域内的服务器是否存在扩容或减容;当所述集群域内的服务器存在扩容时,获取所述集群域内服务器的负载值作为第一负载值,根据所述第一负载值按照自定义规则获取所述服务器上指定负载的第一作业分片,将所述第一作业分片分配至扩容对应的扩容服务器上;或者,当所述集群域内的服务器存在减容时,获取减容对应的减容服务器所包含的第二作业分片,及获取所述集群域内 ...
【技术保护点】
一种分布式作业分片分配方法,其特征在于,所述分布式作业分片分配方法包括以下步骤:接收设置指令,根据所述设置指令为集群域内的各个服务器设定负载值;侦测所述集群域内的服务器是否存在扩容或减容;当所述集群域内的服务器存在扩容时,获取所述集群域内服务器的负载值作为第一负载值,根据所述第一负载值按照自定义规则获取所述服务器上指定负载的第一作业分片,将所述第一作业分片分配至扩容对应的扩容服务器上;或者,当所述集群域内的服务器存在减容时,获取减容对应的减容服务器所包含的第二作业分片,及获取所述集群域内非减容服务器的负载值作为第二负载值,根据所述第二负载值将所述第二作业分片按照指定规则分配至所述非减容服务器上。
【技术特征摘要】
1.一种分布式作业分片分配方法,其特征在于,所述分布式作业分片分配方法包括以下步骤:接收设置指令,根据所述设置指令为集群域内的各个服务器设定负载值;侦测所述集群域内的服务器是否存在扩容或减容;当所述集群域内的服务器存在扩容时,获取所述集群域内服务器的负载值作为第一负载值,根据所述第一负载值按照自定义规则获取所述服务器上指定负载的第一作业分片,将所述第一作业分片分配至扩容对应的扩容服务器上;或者,当所述集群域内的服务器存在减容时,获取减容对应的减容服务器所包含的第二作业分片,及获取所述集群域内非减容服务器的负载值作为第二负载值,根据所述第二负载值将所述第二作业分片按照指定规则分配至所述非减容服务器上。2.如权利要求1所述的分布式作业分片分配方法,其特征在于,所述根据所述第一负载值按照自定义规则获取所述服务器上指定负载的第一作业分片,将所述第一作业分片分配至扩容对应的扩容服务器上包括:获取所述集群域内非扩容服务器的个数n-1,根据所述个数n-1及所述第一负载值,在各个非扩容服务器上分别摘取1/n负载的作业分片组成第一作业分片,将所述第一作业分片分配至扩容对应的扩容服务器上,其中n≥2。3.如权利要求1所述的分布式作业分片分配方法,其特征在于,所述根据所述第一负载值按照自定义规则获取所述服务器上指定负载的第一作业分片,将所述第一作业分片分配至扩容对应的扩容服务器上包括:获取所述集群域内非扩容服务器和扩容服务器的总数,以及获取所述集群域内所有非扩容服务器上总的第一作业分片,根据所述第一负载值及所述总数对所述总的第一作业分片进行均分并分配至各个非扩容服务器和扩容服务器上。4.如权利要求1-3任一项所述的分布式作业分片分配方法,其特征在于,所述根据所述第二负载值将所述第二作业分片按照指定规则分配至所述非减容服务器上包括:根据所述第二负载值将各个非减容服务器根据负载值由小到大进行排序,将所述第二作业分片按照负载值从大到小,依次分配至负载值由小到大的各个非减容服务器上。5.如权利要求4所述的分布式作业分片分配方法,其特征在于,所述根据所述第二负载值将各个非减容服务器根据负载值由小到大进行排序,将所述第二作业分片按照负载值从大到小,依次分配至负载值由小到大的各个非减容服务器上包括:获取所述第二作业分片的个数及所述集群域内非减容服务器的个数;当所述第二作业分片的个数大于所述非减容服...
【专利技术属性】
技术研发人员:薛珂,邱戈川,何小鹏,黄国钦,杨镌颖,
申请(专利权)人:广州唯品会信息科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。