使用 CORBA 或 ICE 的计算机科学项目的想法

发布于 2024-08-12 11:47:17 字数 149 浏览 5 评论 0原文

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

对于编程语言,我想重点关注 c#,因为它可能是任何其他语言,如 C++。

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

We have to perform a semester project with distributed computing using CORBA or ICE. It is a single-person project and we have a couple of months of time.

For the programming language I'd like to focus on c# for it may be any other like C++.

I don't want to write the one millionth prime generator, maybe there is something much more interesting which I didn't think of yet..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

何以笙箫默 2024-08-19 11:47:17

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

在现实世界中,CORBA 比 ICE 更流行,尽管你可能不想以此为职业。它仍然在各种嵌入式项目中使用,并且在某些军事应用中仍然相当流行。

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

Not sure if the focus of the project is on the distributed processing portion or the actual task you decide upon.

CORBA is more prevalent than ICE in the real world, though hardly something you would want to hang a career around. It's still used in various embedded projects and it is still fairly popular in certain military applications.

ICE is easier to work with but doesn't have nearly the industry penetration (to my knowledge) of CORBA. But if your goal is to complete a project and learn distributed principles then I would go with it. It will be much less painful to learn and work with than CORBA. In fact ICE was developed by former CORBA engineers who wanted to correct some of the mistakes they saw in CORBA.

弄潮 2024-08-19 11:47:17

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

I've found that fault tolerance makes distributed computing projects a little more interesting. The task itself can be relatively simple, but ensuring that it can handle unavailable systems or faulty data adds a nice additional requirement.

财迷小姐 2024-08-19 11:47:17

如果我是你,......我会做的就是去找你的教授并要求在界限之外工作。请求解除 CORBA 或 ICE 要求。

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

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

对我来说,这就像研究真空管。在学术和科学上都很有趣,但是……

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

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

  • 计算场的工作分配系统。您将如何在该农场中构建分布式映射/归约?你可以进行加密、压缩、视频翻录。使用模块化架构构建适合任何这些工作的通用分布式工作管理系统。您如何检测故障(主机离线或无响应)?您将如何处理复苏的宿主?

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

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

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

  • 扑克机器人。

只是一些想法。

If I were you, ....what I would do is go to your prof and ask to work outside the lines. Ask to be released from the CORBA or ICE requirement.

Ask if you can use something that is NOT Corba. Ask if you can use REST, or XML Web services, or even protobufs.

CORBA is not irrelevant, as far as the principles go, but it is nearly irrelevant in commercial appeal. Do something that will teach you some more current skills.

To me, it would be like studying vacuum tubes. Interesting academically and scientifically, but...

Rather than a prime number generator, why not get a little more interesting?

  • a distributed hash table, something like the new BitTorrent design.

  • a work distribution system for a compute farm. How would you build a distributed map/reduce across that farm? you could do encryption, compression, video ripping. Build a general purpose distributed work management system that would be appropriate for any of those jobs, with a modular architecture. How would you detect failures (host offline or non-responsive)? How would you deal with rescusitated hosts?

  • a SETI-@Home type of network. or protein folding. or climate trend analysis (using Public Domain databases - http://en.wikipedia.org/wiki/Public_Domain_Resource ) Something where you're doing something more practical than computing prime numbers.

  • OR - actually do the prime number problem, but apply it to cryptography, breaking keys.

  • a network of agents, where you actually distribute code to the nodes to execute. Something like JavaSpaces.

  • a poker bot.

just some ideas.

旧街凉风 2024-08-19 11:47:17

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

否则,您可以考虑使用 .Net Remoting。当我被要求做这件事时,让这些基础知识为我工作并不是太难......大约两年前。

If your project is asking you use CORBA or ICE. I would say try both and see which one you make progress on first, then go with that one. They both seem to have C# interfaces (from google searches).

Otherwise you could look into using .Net Remoting. It wasn't too tough to get the rudiments working for me the one time I was asked to do it... ~2 years ago now.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文