英文:
Cluster Computing in Go
问题
有没有Go语言的集群计算框架?(我希望将多台计算机组合起来进行自定义并行计算,想知道Go语言是否适合使用)。
英文:
Is there a framework for cluster computing in Go? (I wish to bring together multiple PC's to for custom parallel computation, and wonder whether Go might be a suitable language to use).
答案1
得分: 7
我不知道你计划在集群中拥有多高的连接性水平,但是Go的RPC包使节点之间的通信变得简单。它很可能成为你工作的支柱,你可以在其之上构建抽象(例如,如果你需要将请求组播到不同的节点)。文档中给出的示例假设你的节点将通过HTTP进行通信,但在net/rpc中将该部分抽象出来以允许使用不同的传输方式。
http://golang.org/pkg/net/rpc/
英文:
I don't know the level of connectedness you plan to have in your cluster, but go's RPC package makes communication among nodes trivial. It will likely serve as the backbone of your work and you can build abstractions on top of it (for instance if you need to multicast requests to different nodes). The examples given in the doc assume your nodes will communicate over HTTP, but that bit is abstracted out in net/rpc to allow different transports.
答案2
得分: 2
你可以使用Go语言与Hadoop Streaming一起使用。在这里可以看到一个(有点过时的)例子。
英文:
You can use Hadoop Streaming with Go. See (a bit dated) example here.
答案3
得分: 2
你应该看一下Go Circuit。
引用自介绍:
电路将复杂的大规模系统的人力开发和维护成本几乎降低到了单进程的水平。...
...还有:
例如,我们已经能够从零开始编写大型实际云应用程序,例如流式多阶段MapReduce管道,只需200行代码。
此外,对于一些更简单的用例,你可能想看看Golem。
英文:
You should have a look at Go Circuit.
Quoting from the introduction:
> The circuit reduces the human development and sustenance costs of complex massively-scaled
> systems nearly to the level of their single-process counterparts. ...
... and:
> For isntance, we have been able to write large real-world cloud applications — e.g.
> streaming multi-stage MapReduce pipelines — in as many as 200 lines of code from
> the ground up.
Also, for some simpler use cases, you might want to check out Golem.
答案4
得分: 1
你可以尝试使用https://github.com/bketelsen/skynet。这是一个基于doozer的面向服务的框架。
英文:
You can try to use https://github.com/bketelsen/skynet . This is service oriented framework based on doozer.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论