分布式任务分配与认领方法以及电子设备技术

技术编号:9840282 阅读:141 留言:0更新日期:2014-04-02 03:31
提供了一种用于局域网中的分布式任务分配与认领方法、以及相应的电子设备。该分布式任务分配方法包括:确定一任务;将所述任务分成多个子任务;将所述多个子任务通过多播地址进行任务发布,以使得所述局域网内的多个第二电子设备能够通过所述多播地址自动地获得所述多个子任务;以及接收所述多个第二电子设备响应愿意执行所述多个子任务中的子任务的响应信息。本发明专利技术的分布式任务分配与认领方法及电子设备通过利用局域网中的网络多播通信方式或者多播通信方式与单播通信方式的组合,在局域网中各对等电子设备之间进行任务分配与执行,从而省略了对调度服务器的需要,能够在本地局域网中零配置地自动组成分布式任务执行网络。

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

【技术保护点】
一种分布式任务分配方法,所述方法应用于一第一电子设备中,所述第一电子设备位于一局域网内,所述局域网具有至少一个多播地址,包括:确定一任务;将所述任务分成多个子任务;将所述多个子任务通过所述多播地址进行任务发布,以使得所述局域网内的多个第二电子设备能够通过所述多播地址自动地获得所述多个子任务;以及接收所述多个第二电子设备响应愿意执行所述多个子任务中的子任务的响应信息。

【技术特征摘要】
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所述的电子设备,其中,所述确认发送部...

【专利技术属性】
技术研发人员:张国晟
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1