我的问题是我在处理要求苛刻的网络应用程序时思考过的一个问题,该应用程序将使用服务器在网络上明确共享任务,将作业分别分配给每台计算机并“分担负载”。
我想知道:这可以以更隐含的方式完成吗?
问题
是否有可能将处理器密集型任务分布在自愿和公共的计算机网络上,以使作业更有效地运行,而无需在每台计算机上安装作业的程序或进程?
设想
假设我们有一个非常密集的数学场景,我试图让我的计算机计算从 1 到 10,000,000 的所有数字的每个素数分解分解并将它们存储在数据库中(假设我有空间并且算法已经实现在他们自己的类、程序、动态链接库或任何可运行的进程中。)
现在通过网络或在多核超级计算机上共享这个负担过程会更有效,但是这些都很昂贵。据我所知,您将需要一个专门设计的程序来运行特定算法并在所述云/分布式计算网络上安装该程序,同时您有一个服务器跟踪每台计算机正在做什么(即他们当前正在计算的数量)的素数)。
结论
总体:
是否有可能创建一个云程序/操作系统/套件,您可以在其中为未指定类型的进程共享处理器时间?
如果是这样,您将如何实施它,您将从哪里开始?
您是否会制作一个专用于能够运行未指定的非显式任务的操作系统,或者是否可以使用安装在志愿者计算机上的启用云的程序来做志愿者愿意分享他们的处理器时钟百分比来帮助一般社区的志愿者) .
如果这是可以实施的,你会自愿加入更大的云吗?
我很想听听每个人的想法和可能的解决方案,因为这将是一个很棒的项目。