23

我目前正在研究可用于开发分布式应用程序的选项(开源和商业)。

“分布式系统由多个通过计算机网络进行通信的自主计算机组成。” 维基百科

该应用程序专注于分发高度cpu 密集型操作(而不是数据密集型),因此我确信 MapReduce 解决方案不符合要求。

您可以推荐的任何框架(+ 简要总结任何经验或与其他框架进行比较)将不胜感激。

4

8 回答 8

10

MPAPI 框架- http://www.codeplex.com/MPAPI

我的想法

  • 似乎是更简单的解决方案之一。
  • 我看不到故障转移支持的证据。
  • 是开源 =] 并且兼容 MONO 耶!
  • 使用“RemotingLite”框架来增强单声道兼容性。
  • 编写单台计算机或多台计算机(集群)应用程序同样简单。
  • 开发者的理念是“性能至上”。所以可以肯定地说他已经优化了。
  • 不断更新的框架。
于 2009-11-18T12:52:53.470 回答
4

我是 Alchemi 的主要开发人员之一。我们不得不改变方向,重新开始,结果就是利用平台。在概念上与 Alchemi 相似,Utilify 平台建立在从 Alchemi 吸取的经验教训的基础上,并提供更灵活的编程模型来在 Windows 网络上构建分布式 .NET 应用程序。

请访问 www.utilify.com 了解更多信息。目前,有一个免费的测试版可供下载。

问候,克里希纳。

于 2010-03-09T06:23:36.787 回答
3

Appistry CloudIQ 平台 http://www.appistry.com

  • 将使数百台机器作为一个计算资源出现。
  • 目前在FedEx生产中用于运行路由算法
  • 允许您使用 C、C++、Java 和 .Net 编写应用程序
  • 无单点故障
  • 自动恢复/重试失败的任务
于 2009-12-04T21:25:49.080 回答
2

Alchemi“.NET 网格计算框架”

http://www.gridbus.org/~alchemi/publications.html

http://sourceforge.net/projects/alchemi/files/

Alchemi 是一个 .NET 网格计算框架,可让您轻松地将 Intranet 和 Internet 连接机器的计算能力聚合到虚拟超级计算机(计算网格)中,并开发在网格上运行的应用程序。

快速笔记:

  • 在 2007 版本 1.0.6 (.NET 2.0) 中停止更新。
  • 有据可查的正式这样做。
  • 使用 XML 定义作业。(在 2007 年风靡一时,一切都使用 XML)
  • 与 MPAPI 相比相对复杂,但不要认为这是一个很大的负面因素。
  • 需要很长时间才能跟上进度。
  • 是开源的 =)。
  • 是可扩展的,可以通过 Gridbus 代理 ( http://www.gridbus.org )与其他集群技术结合使用
  • 似乎被广泛使用(参见出版物http://www.gridbus.org/~alchemi/publications.html)=)
于 2009-11-18T13:02:16.070 回答
1

Azure 网格- http://azuregrid.codeplex.com/

于 2009-11-18T12:55:54.040 回答
1

DryadLINQ是一个 Microsoft Research 项目,它允许 LINQ 查询分布在多台计算机之间,而不是像并行 LINQ 那样只分布在多个内核中。

带有简短示例的博客文章。

于 2009-11-19T03:22:50.640 回答
0

NGrid - http://ngrid.sourceforge.net/

概述

NGrid 是一个用 C# 编写的开源 (LGPL) 网格计算框架。

  • 通过 Mono 项目独立于平台。
  • 用于网格编程的透明多线程编程模型。
  • 物理网格框架和一些网格实现。
  • 用于网格编程或网格实现的通用实用程序。
  • 最后更新于 2008 年 5 月
于 2009-11-18T13:50:00.763 回答
0

适用于 .NET 的 AWS 开发工具包- http://aws.amazon.com/sdkfornet/

我认为这种云产品和 .NET api 也可能符合要求。亚马逊提供高性能机器(参见价目表),允许委派大规模执行高 CPU 密集型操作。

于 2009-11-19T11:58:11.523 回答