【技术实现步骤摘要】
分布式任务分配与认领方法以及电子设备
本专利技术涉及任务的分配与认领,并且更具体地涉及一种分布式任务分配与认领方法、以及相应的电子设备。
技术实现思路
分布式计算把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。也就是说,分布式计算实现了资源共享并且在多台计算机上平衡计算负载。例如,分布式计算已经被用来分析来自外太空的电讯号、寻找并发现对抗艾滋病病毒的更为有效的药物,等等。这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的目前,分布式计算网络的组网配置都很复杂,至少需要调度服务器来给网络内的各计算节点(电子设备)分配调度任务。在一些情况下,还需要数据服务器。此外,分布式计算的应用程序一般也非常专业、配置非常复杂,普通的消费者通常很难使用分布式计算来执行任务。因此,需要一种不需要调度服务器的方便使用的分布式任务分配与认领方法。
技术实现思路
:考虑到上述问题而作出了本专利技术。本专利技术旨在提供一种应用于局域网内的分布式任务分配与认领方法,其在无需专门的调度服务器的情况下,通过在对等的局域网内各电子设备之间的通信而实现任务分配与认领,从而在局域网中零配置地自动组成分布式计算/任务执行网络。根据本专利技术的一方面,提供了一种分布式任务分配方法,所述方法应用于一第一电子设备中,所述第一电子设备位于局域网中,所述局域网具有至少一个多播地址,包括:确定一任务;将所述任务分成多个子任务;将所述多个子任务通过所述多播地址进行任务发 ...
【技术保护点】
一种分布式任务分配方法,所述方法应用于一第一电子设备中,所述第一电子设备位于一局域网内,所述局域网具有至少一个多播地址,包括:确定一任务;将所述任务分成多个子任务;将所述多个子任务通过所述多播地址进行任务发布,以使得所述局域网内的多个第二电子设备能够通过所述多播地址自动地获得所述多个子任务;以及接收所述多个第二电子设备响应愿意执行所述多个子任务中的子任务的响应信息。
【技术特征摘要】
1.一种分布式任务分配方法,所述方法应用于一第一电子设备中,所述第一电子设备位于一局域网内,所述局域网具有至少一个多播地址,包括:确定一任务;将所述任务分成多个子任务;将所述多个子任务通过所述多播地址进行任务发布,以使得所述局域网内的多个第二电子设备能够通过所述多播地址自动地获得所述多个子任务;接收所述多个第二电子设备响应愿意执行所述多个子任务中的子任务的响应信息;基于所述多个响应信息,从所述多个第二电子设备中选择至少一个第二电子设备;其中,当发现某些子任务已经被下载完成,针对尚未被所述第二电子设备下载完成的子任务,确定执行所述子任务的第二电子设备,以及向所述至少一个第二电子设备发出确认响应,以便使得接收到确认响应的第二电子设备能够开始执行所述子任务;从所述多个第二电子设备获得所述多个子任务的执行结果;其中,在局域网中,所述第一电子设备和第二电子设备是完全对等的。2.如权利要求1所述的分布式任务分配方法,其中,所述将所述多个子任务通过所述多播地址进行任务发布包括:对于每个子任务,生成任务发布请求,该任务发布请求至少包括子任务标识;通过所述多播地址多播所述任务发布请求。3.如权利要求1所述的分布式任务分配方法,其中,每个响应信息至少包括该响应信息所针对的子任务的子任务标识、发出该响应信息的第二电子设备的地址、以及为该子任务所分配的端口号。4.如权利要求3所述的分布式任务分配方法,其中,通过多播方式或单播方式接收所述响应信息。5.如权利要求3所述的分布式任务分配方法,其中,每个响应信息还包括用于表示发出该响应信息的第二电子设备接收该子任务的意愿程度的意愿值。6.如权利要求2所述的分布式任务分配方法,其中,所述向所述至少一个第二电子设备发出确认响应包括:通过所述多播地址多播所述确认响应,并且在所述确认响应中包括该子任务的子任务标识、以及所述至少一个第二电子设备的地址。7.如权利要求2所述的分布式任务分配方法,其中,所述向所述至少一个第二电子设备发出确认响应包括:向所述至少一个第二电子设备中的每个第二电子设备单播所述确认响应,并且在所述确认响应中包括该子任务的子任务标识。8.一种第一电子设备,其位于局域网中,所述局域网具有至少一个多播地址,包括:任务确定部件,用于确定一任务;任务划分部件,用于将所述任务分成多个子任务;任务发布部件,用于将所述多个子任务通过所述多播地址进行任务发布,以使得所述局域网内的多个第二电子设备能够通过所述多播地址自动地获得所述多个子任务;以及响应接收部件,用于接收所述多个第二电子设备响应愿意执行所述多个子任务中的子任务的响应信息;选择部件,用于基于所述响应信息来确定至少一个第二电子设备作为执行设备;其中,当所述第一电子设备发现某些子任务已经被下载完成,针对尚未被所述第二电子设备下载完成的子任务,确定执行所述子任务的第二电子设备;确认发送部件,用于向所述至少一个第二电子设备发出确认响应,以便使得接收到确认响应的第二电子设备能够开始执行所述子任务;执行结果获得部件,用于接收所述多个第二电子设备对所述多个子任务的执行结果;其中,在局域网中,所述电子设备和第二电子设备是完全对等的。9.如权利要求8所述的电子设备,其中,所述任务发布部件包括:发布请求生成部件,用于对于每个子任务生成任务发布请求,该任务发布请求至少包括子任务标识;以及任务请求发布部件,用于通过所述多播地址多播所述任务发布请求。10.如权利要求8所述的电子设备,其中,每个响应信息至少包括该响应信息所针对的子任务的子任务标识、发出该响应信息的第二电子设备的地址、以及为该子任务所分配的端口号。11.如权利要求10所述的电子设备,其中,所述响应接收部件通过多播方式或单播方式接收所述响应信息。12.如权利要求10所述的电子设备,其中,每个响应信息还包括用于表示发出该响应信息的第二电子设备接收该子任务的意愿程度的意愿值。13.如权利要求8所述的电子设备,其中,所述确认发送部件通过所述多播地址多播所述确认响应,并且在所述确认响应中包括该子任务的子任务标识、以及所述至少一个第二电子设备的地址。14.如权利要求8所述的电子设备,其中,所述确认发送部...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。