一种用于网吧环境的分布式计算系统及方法与流程

文档序号:18792211发布日期:2019-09-29 19:00阅读:390来源:国知局
一种用于网吧环境的分布式计算系统及方法与流程

本发明涉及计算机领域,并且更具体地,涉及一种用于网吧环境的分布式计算系统及方法。



背景技术:

分布式计算是一种计算方法,在技术架构及实现方式上与集中式计算相对。随着计算技术的发展,有些计算任务需要非常巨大的计算力才能完成,如果采用集中式计算,需要耗费相当长的时间来完成。分布式计算将计算任务分解成许多小的部分,分配给多台计算机进行处理。这样可以加快整体计算时间,大大提高计算效率。

中国注册网吧十万家以上,拥有计算机数量超过800万台,属于非常优质的闲置计算资源池。由于网吧特殊的软硬件环境以及用户使用习惯,导致针对网吧环境的分布式计算具有相当大的技术难度。因此,目前国内外现有的分布式计算方法无一能够成功用于网吧环境。



技术实现要素:

针对现有技术存在的问题,本发明实施例提供了一种用于网吧环境的分布式计算系统及方法,将分布式计算技术及边缘计算技术应用于网吧环境,通过部署在网吧无盘站环境镜像中的客户端实现对网吧计算机闲置时的计算资源的远程调用。

第一方面,本申请提供了一种用于网吧环境的分布式计算系统,包括网吧环境局域网内的无盘服务器和若干计算机组成的边缘计算机集群;

所述无盘服务器的镜像部分部署有cotnetwork-ce文件传输系统和cotnetwork-ce客户端软件;所述cotnetwork-ce文件传输系统和cotnetwork-ce客户端软件均映射到网吧环境局域网内的每台计算机;

所述cotnetwork-ce文件传输系统包括连接的监控模块和数据下载模块;所述数据下载模块映射到网吧环境局域网内的每台计算机形成各子数据下载模块,所述监控模块与每台计算机的子数据下载模块连接;

所述监控模块,用于监控所有子数据下载模块已完成下载的任务切片信息,并根据所述任务切片信息向每台计算机的子数据下载模块发送p2p文件传输指令;

每个所述子数据下载模块,用于根据设定的分片策略从存储空间下载相应的任务切片;以及根据监控模块发送的p2p文件传输指令,从其他相应的子数据下载模块下载其对应的任务切片,使每台计算机上的所有任务切片形成完整的任务信息;其中,各子数据下载模块之间采用peer-to-peer点对点传输技术;

所述cotnetwork-ce客户端软件包括工具下载模块和计算模块;

所述工具下载模块,用于根据每台计算机下载的任务切片下载相应的计算工具;

所述计算模块,用于根据每台计算机下载的计算工具和完整的任务信息进行分布式并行化计算不同的任务切片。

进一步,还包括通信模块,与外部设备进行通信以及上传各任务切片的计算结果。

进一步,还包括验证节点和整合节点,

所述验证节点,用于对每个任务切片的计算结果以及计算机上报的工作量进行验证,当所述任务的所有任务切片均验证通过后,将所有任务切片上传至整合节点;

所述整合节点,用于对接收到的所有任务切片进行整合,生成所述任务计算后的完整结果。

进一步,还包括文件调度服务器,用于接收需要执行计算的任务,并按照预设大小分成若干任务切片,基于机器学习算法将每个任务切片与计算机集群中可用的计算机进行匹配,并向匹配对应的计算机发送指令及任务基本信息,同时将每个任务切片及其计算工具上传至存储空间。

进一步,所述文件调度服务器在接收到执行计算任务切片的计算机中断计算时,重新匹配计算机并发送命令至匹配的计算机重新执行该任务切片的下载和计算。

进一步,所述调度服务器通过心跳连接与所述计算机集群中的每台计算机进行连接,用于实时掌握计算机的状态。

第二方面,提供了一种用于网吧环境的分布式计算方法,该方法应用于上述系统,包括以下步骤:

文件调度服务器通过心跳连接与网吧环境局域网内的边缘计算机集群中可用的计算机进行连接;

文件调度服务器按照预设大小将需要执行计算的任务分成若干任务切片,基于机器学习算法将每个任务切片与边缘计算机集群中可用的计算机进行匹配,并向匹配对应的计算机发送指令及任务基本信息,同时将每个任务切片及其计算工具上传至存储空间;

各匹配计算机接收到指令及任务基本信息后,各子数据下载模块从存储空间下载相应的任务切片信息,并将下载的任务切片信息反馈给监控模块;

监控模块根据所述任务切片信息向每台计算机的子数据下载模块发送p2p文件传输指令;

各子数据下载模块根据设定的分片策略从存储空间下载相应的任务切片;以及根据监控模块发送的p2p文件传输指令,从其他相应的子数据下载模块下载其对应的任务切片,使每台计算机上的所有任务切片形成完整的任务信息;其中,各子数据下载模块之间采用peer-to-peer点对点传输技术;

工具下载模块根据每台计算机下载的任务切片下载相应的计算工具;

计算模块根据每台计算机下载的计算工具和完整的任务信息进行分布式并行化计算不同的任务切片。

进一步,当计算机中断计算的任务切片时,文件调度服务器新匹配其他计算机重新对该任务切片进行下载和计算。

进一步,所述方法还包括:上传各任务切片的计算结果,并对每个任务切片的计算结果以及计算机上报的工作量进行验证,当所述任务的所有任务切片均验证通过后,将所有任务切片进行整合,生成所述任务计算后的完整结果。

本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:

本发明实施例提供了一种用于网吧环境的分布式计算系统及方法,针对网吧环境对任务的下载采用分片技术及局域网p2p传输技术。任务被分为大量256kb大小的任务切片(分片数量=任务文件体积/256kb),网吧内不同的计算机对任务的不同切片进行下载,同时在网吧局域网对已经下载完成的任务切片进行点对点传输,最终保证每台计算机在最短的时间内拥有所需的完整任务信息,极大的提升了网吧环境中计算机对任务传输的效率。同时避免了大并发导致的上下行带宽拥塞问题。

计算机完成任务文件及计算工具的下载之后,多台计算机基于各自持有的完整任务信息,对任务的不同部分进行分布式并行计算,极大的缩短了任务计算所需的时间。通过安装的客户端实现网吧环境内计算机与调度服务器的心跳连接,保证其计算状态实时更新。一旦计算机无法继续进行任务计算,比如由于网吧顾客使用、断电、死机等情况导致,调度服务器将立刻重新发送指令至可用计算机,其即刻重新启动相应任务切片的计算。

针对网吧无盘站环境的分布式不稳定计算节点(网吧计算机)的调度及管理技术的应用,极大的改善了网吧环境计算机在无人上网时产生的计算资源浪费问题。通过充分调用网吧无盘站环境中的大量计算机对特定任务进行分布式并行计算,可以提高一个数量级以上的计算速度。比如特定任务使用单台计算机需要耗时1000小时完成计算,如将该任务拆分为1000个任务单元,发送至1000个网吧环境计算机进行分布式并行计算,则计算最快可在1小时完成(不包括文件的传输时间)。

该方案具有巨大的应用价值,可将目前海量闲置的网吧环境计算机变为具有资源价值的边缘计算节点,为很多要求极大计算量的行业,如图形图像处理、大数据处理、基因序列比对、视频处理、工程计算、数值模拟等等提供更快速、更经济的计算服务。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一提供的网吧环境拓扑示意图;

图2为本发明实施例一提供的cotnetwork-ce文件传输系统架构图;

图3为本发明实施例一提供的工作流程图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

中国注册网吧十万家以上,拥有计算机数量超过800万台,属于非常优质的闲置计算资源池。由于网吧特殊的软硬件环境以及用户使用习惯,导致针对网吧环境的分布式计算有相当大的技术难度。针对现有技术存在的问题,本发明实施例提供了一种用于网吧环境的分布式计算系统及方法,包括网吧环境局域网内的无盘服务器和若干计算机组成的边缘计算机集群;

所述无盘服务器的镜像部分部署有cotnetwork-ce文件传输系统和cotnetwork-ce客户端软件;所述cotnetwork-ce文件传输系统和cotnetwork-ce客户端软件均映射到网吧环境局域网内的每台计算机;

所述cotnetwork-ce文件传输系统包括连接的监控模块和数据下载模块;所述数据下载模块映射到每台计算机形成各子数据下载模块,所述监控模块与每台计算机的子数据下载模块连接;

所述监控模块,用于监控所有子数据下载模块下载任务切片的信息,并根据所述任务切片信息向每台计算机的子数据下载模块发送指令;

每个子数据下载模块,首先用于根据设定的分片策略从存储空间下载相应的初始任务切片,当每台计算机都下载了同一任务的不同初始任务切片之后,监控模块发送指令至每台计算机,令其数据下载模块从其他计算机下载除该计算机拥有的初始任务切片之外的所有任务切片,最终使每台计算机上拥有完整的任务信息;其中,网吧环境局域网内各子数据下载模块之间对于任务切片的下载采用peer-to-peer点对点传输技术;

所述cotnetwork-ce客户端软件包括工具下载模块和计算模块;

所述工具下载模块,用于根据每台计算机下载的任务切片下载相应的计算工具;

所述计算模块,用于根据每台计算机下载的计算工具和完整的任务信息进行分布式并行化计算不同的任务切片。

本发明充分调用网吧环境中大量电脑闲置时的计算资源,为各类任务提供新形态的计算服务。通过解决广域网分布式计算、多机并行计算、网吧无盘环境下任务接收及处理、网吧环境p2p文件传输、不稳定计算节点调用等技术问题,将闲时计算资源共享的功能赋予网吧环境中电脑节点,将分布式计算技术及边缘计算技术应用于网吧环境,通过部署在网吧无盘站环境镜像中的客户端实现对网吧计算机闲置时的计算资源的远程调用。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

实施例一

本实施例提供一种用于网吧环境的分布式计算系统,如图1所示,为网吧环境拓扑图所示,包括互联网接入、路由器、主干交换机、无盘服务器(镜像及回写)、收银服务器、子交换机、以及若干计算机。所述无盘服务器的镜像部分部署有cotnetwork-ce文件传输系统和cotnetwork-ce客户端软件;所述cotnetwork-ce文件传输系统和cotnetwork-ce客户端软件均映射到每台计算机。

如图2所示,所述cotnetwork-ce文件传输系统包括连接的监控模块和数据下载模块;所述数据下载模块映射到每台计算机形成各子数据下载模块,所述监控模块与每台计算机的子数据下载模块连接;

所述监控模块,用于监控所有子数据下载模块下载任务切片的信息,并根据所述任务切片信息向每台计算机的子数据下载模块发送指令;

每个子数据下载模块,首先用于根据设定的分片策略从存储空间下载相应的初始任务切片,当每台计算机都下载了同一任务的不同初始任务切片之后,监控模块发送指令至每台计算机,令其数据下载模块从其他计算机下载除该计算机拥有的初始任务切片之外的所有任务切片,最终使每台计算机上拥有完整的任务信息;其中,网吧环境局域网内各子数据下载模块之间对于任务切片的下载采用peer-to-peer点对点传输技术。

所述cotnetwork-ce客户端软件包括工具下载模块和计算模块;

所述工具下载模块,用于根据每台计算机下载的任务切片下载相应的计算工具;

所述计算模块,用于根据每台计算机下载的计算工具和完整的任务信息进行分布式并行化计算不同的任务切片。

为了实现远程调用,还包括通信模块,与外部设备进行通信以及上传各任务切片的计算结果。

上述计算结果,为了使用户看到正确和完整的计算结果,还包括验证节点和整合节点,

所述验证节点,用对每个任务切片的计算结果以及计算机上报的工作量进行验证,当所述任务的所有任务切片均验证通过后,将所有任务切片上传至整合节点;

所述整合节点,用于对接收到的所有任务切片进行整合,生成所述任务计算后的结果。

本实施例中的计算任务是来自于外部计算机,即文件调度服务器,所述调度服务器通过心跳连接与所述计算机集群中的每台计算机进行连接,用于实时掌握计算机的状态。文件调度服务器用于接收需要执行计算的任务,并按照预设大小分成若干任务切片,基于机器学习算法将每个任务切片与计算机集群中可用的计算机进行匹配,并向匹配对应的计算机发送指令及任务基本信息,同时将每个任务切片及其计算工具上传至存储空间。

所述文件调度服务器在接收到执行计算任务切片的计算机中断计算时,重新匹配计算机并发送命令至匹配的计算机执行该任务切片的下载和计算。

如图3所示,为本实施例的工作流程图,其工作过程为:需要执行计算的任务被拆分后首先会被上传至存储空间,同时该任务的基本信息将上传至文件调度服务器。文件调度服务器通过心跳连接与网吧环境中每台计算机进行连接,实时掌握计算机的状态。文件调度服务器接收到待计算任务的信息后,基于特定的人工智能模型将任务的每个切片与可用的计算机进行最优化匹配。匹配完成后,文件调度服务器将发送命令至相应的计算机,使其通过存储空间下载指定的任务切片。下载完成后,计算机将调用本机cpu或gpu等计算资源对任务切片进行计算。对于中断计算的任务切片,文件调度服务器会重新匹配并命令其他计算机对该任务切片进行下载和计算。对于顺利完成的任务切片,计算机会将其上传至验证节点。验证节点会对任务块结果的正确性以及计算机上报的工作量这两个维度进行验证。验证通过的任务切片结果将被上传至整合节点。待该任务的其它任务切片全部完成计算后,整合节点会对任务切片进行整合,生成任务完成的计算结果。

基于同一发明构思,本申请提供了实施例一对应的方法,详见实施例二。

实施例二

相应于实施例一,本实施例提供了一种用于网吧环境的分布式计算方法,包括以下步骤:

文件调度服务器通过心跳连接与网吧环境局域网内的边缘计算机集群中可用的计算机进行连接;

文件调度服务器按照预设大小将需要执行计算的任务分成若干任务切片,基于机器学习算法将每个任务切片与边缘计算机集群中可用的计算机进行匹配,并向匹配对应的计算机发送指令及任务基本信息,同时将每个任务切片及其计算工具上传至存储空间;

各匹配计算机接收到指令及任务基本信息后,各子数据下载模块从存储空间下载相应的任务切片信息,并将下载的任务切片信息反馈给监控模块;

监控模块根据所述任务切片信息向每台计算机的子数据下载模块发送p2p文件传输指令;

各子数据下载模块根据设定的分片策略从存储空间下载相应的任务切片;以及根据监控模块发送的p2p文件传输指令,从其他相应的子数据下载模块下载其对应的任务切片,使每台计算机上的所有任务切片形成完整的任务信息;其中,各子数据下载模块之间采用peer-to-peer点对点传输技术;

工具下载模块根据每台计算机下载的任务切片下载相应的计算工具;

计算模块根据每台计算机下载的计算工具和完整的任务信息进行分布式并行化计算不同的任务切片。

所述方法还包括:上传各任务切片的计算结果,并对每个任务切片的计算结果以及计算机上报的工作量进行验证,当所述任务的所有任务切片均验证通过后,将所有任务切片进行整合,生成所述任务计算后的结果。

当计算机中断计算的任务切片时,文件调度服务器重新匹配其他计算机对该任务切片进行下载和计算。

由于本实施例所介绍的方法为实施本申请实施例一中一种用于网吧环境的分布式计算系统所采用的方法,故而基于本申请实施例一中所介绍的系统,本领域所属技术人员能够了解本实施例的方法的具体实施方式以及其各种变化形式,所以在此对于该方法如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的系统所采用的方法,都属于本申请所欲保护的范围。

本发明实施例提供的系统及方法在网吧环境进行部署和使用,具体的部署及使用方法如下:

1.网吧技术人员需确保网吧环境的计算机拥有inteli5以上cpu配置、20gb以上的无盘站映射系统盘空间、8gb以上的内存空间、以及gtx960以上的显卡配置;

2.网吧技术人员需确保网吧环境的计算机拥有windows7,64位及以上版本的操作系统,vc运行库2013-2015;

3.网吧技术人员需在网吧环境的无盘服务器镜像中安装cotnetwork-ce客户端软件(全套安装需耗时30分钟左右)以及cotnetwork-ce文件传输系统(安装耗时5分钟以内);

4.网吧技术人员需确保计算机主机保持开机状态。

本实施例针对网吧无盘站环境的分布式不稳定计算节点(网吧计算机)的调度及管理技术的应用,极大的改善了网吧环境计算机在无人上网时产生的计算资源浪费问题。通过充分调用网吧无盘站环境中的大量计算机对特定任务进行分布式并行计算,可以提高一个数量级以上的计算速度。比如特定任务使用单台计算机需要耗时1000小时完成计算,如将该任务拆分为1000个任务块,发送至1000个网吧环境计算机进行分布式并行计算,则计算最快可在1小时完成(不包括文件传输时间)。

针对网吧环境有限上下行带宽的任务文件分片技术及p2p传输技术的应用,极大的提升了网吧环境中计算机对任务传输的效率。同时避免了大并发导致的上下行带宽拥塞问题。任务下载完成后,多台计算机基于各自持有的完整任务信息,对任务的不同部分进行分布式并行计算,极大的缩短了任务计算所需的时间。

该方案具有巨大的应用价值,可将目前海量闲置的网吧环境计算机变为具有资源价值的边缘计算节点,为很多要求极大计算量的行业,如图形图像处理、大数据处理、基因序列比对、视频处理、工程计算、数值模拟等等。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1