我对编程一个项目感兴趣,该项目在几台计算机上的大文件上分配一定的计算。对分布式计算的需求源于我用来进行实际计算的软件的崩溃和不稳定性 - 所以它可能会在某些计算机上崩溃,但其他人肯定会完成这项工作。 我到目前为止的想法包括: - 使用多个服务器,每个服务器尽可能从主服务器中提取任务 - 使用VMware - 使用负载平衡群集
什么更适合这份工作?我应该注意哪些其他想法?
此外,如果您可以推荐任何可靠的分布式计算C#框架,它将会有所帮助。
答案 0 :(得分:1)
我自己还没有使用过任何这些,但我刚才给this提问了。那里有一些很好的建议。
答案 1 :(得分:0)
你看过Hadoop MapReduce了吗?它是Google MapReduce框架的开源实现。虽然它是Java而不是C#,但听起来它可能非常适合您的场景;主服务器自动处理分布式环境中的负载平衡和容错。
答案 2 :(得分:0)
我会查看Appistry CloudIQ Platform。它将多台计算机连接到一个统一地址标识的单一计算框架中。您的客户端只需将作业提交到统一地址,框架就会将作业分配给各个计算机。它还监视任务执行,并可以自动重启失败的作业。因此,如果您的应用程序容易崩溃,那么这个框架可能是理想的。而不是将相同的作业提交给多台机器(并浪费CPU)以覆盖故障情况,只需提交一次,然后让框架处理重新启动实际失败的作业。我认为它非常适合您的可靠性问题。