2

我们必须使用 CORBA 或 ICE 进行分布式计算的学期项目。这是一个单人项目,我们有几个月的时间。

对于编程语言,我想专注于 c#,因为它可能是 C++ 之类的任何其他语言。

我不想写百万分之一的素数生成器,也许还有更有趣的东西我还没有想到..

4

4 回答 4

2

我发现容错使分布式计算项目更有趣。任务本身可以相对简单,但确保它可以处理不可用的系统或错误数据增加了一个很好的额外要求。

于 2009-11-25T02:23:22.430 回答
2

不确定项目的重点是分布式处理部分还是您决定的实际任务。

CORBA 在现实世界中比 ICE 更普遍,尽管这几乎不是你想要的职业。它仍在各种嵌入式项目中使用,并且在某些军事应用中仍然相当流行。

ICE 更易于使用,但几乎没有 CORBA 的行业渗透率(据我所知)。但是,如果您的目标是完成一个项目并学习分布式原理,那么我会接受它。与 CORBA 相比,学习和使用它的痛苦要小得多。事实上,ICE 是由前 CORBA 工程师开发的,他们希望纠正他们在 CORBA 中看到的一些错误。

于 2009-11-25T03:43:04.577 回答
0

如果您的项目要求您使用 CORBA 或 ICE。我会说两个都试一下,看看你先在哪一个上取得进展,然后再用那个。他们似乎都有 C# 接口(来自谷歌搜索)。

否则,您可以考虑使用 .Net Remoting。有一次我被要求做这件事时,让这些基础知识为我工作并不是太难……现在是 2 年前。

于 2009-11-25T02:55:05.143 回答
0

如果我是你,....我会去你的教授那里,要求在界外工作。要求解除 CORBA 或 ICE 要求。

询问您是否可以使用不是 Corba 的东西。询问您是否可以使用 REST、XML Web 服务,甚至 protobufs。

就原则而言,CORBA 并非无关紧要,但它在商业吸引力方面几乎无关紧要。做一些能教给你一些最新技能的事情。

对我来说,这就像研究真空管。有趣的学术和科学,但...

而不是一个素数生成器,为什么不变得更有趣一点呢?

  • 分布式哈希表,类似于新的 BitTorrent 设计。

  • 计算场的工作分配系统。您将如何在该农场中构建分布式地图/减少?你可以做加密、压缩、视频翻录。使用模块化架构构建适用于任何这些工作的通用分布式工作管理系统。您将如何检测故障(主机脱机或无响应)?你会如何处理复苏的主人?

  • SETI-@Home 类型的网络。或蛋白质折叠。或气候趋势分析(使用公共领域数据库 - http://en.wikipedia.org/wiki/Public_Domain_Resource)您正在做的事情比计算素数更实用。

  • 或 - 实际上做素数问题,但将其应用于密码学,破解密钥。

  • 代理网络,您实际上将代码分发到要执行的节点。像 JavaSpaces 之类的东西。

  • 一个扑克机器人。

只是一些想法。

于 2009-11-25T04:15:50.907 回答