英文:
Current state of multi-machine distributed Clojure?
问题
在“开发多机分布式并发应用的最佳语言是什么”的问题中,似乎有几个领先的语言:Go、Erlang、Clojure、Scala,还有可能有其他语言,如Termite/Gambit Scheme、Haskell等。我进行了相当多的研究,从我所了解的情况来看,Erlang似乎更受人们对真正分布式并发应用的认可,即独立的网络机器应用。据我所读,Clojure的并发性首先是为了在同一台机器上编写多核应用。Clojure是否提出了更多的多机分布式策略?还是这是一个不幸的权衡,即以良好的同一台机器多核策略为代价而获得良好的多机策略...反之亦然?
英文:
There seems to be a few leading horses in the "what is the best language for developing multi-machine distributed concurrent apps": Go, Erlang, Clojure, Scala, and possibly others such as Termite/Gambit Scheme, Haskell et al. I've researched quite a bit, and from what I can tell, Erlang seems to get more approval for truly distributed concurrent, i.e., separate networked machine, apps. As I read somewhere, Clojure's concurrency was meant, first and foremost, to center on same-machine multi-core app writing. Has Clojure come up with more of a multi-machine distributed strategy? Or is this an unfortunate trade-off, i.e., good same-machine multi-core strategy at the expense of a good multi-machine strategy ... and vice-versa?
答案1
得分: 4
Clojure的内置并发工具在单个地址空间中解决了协调和非协调操作的几个不同角色。Terracotta将单个地址空间扩展到多台计算机上,并且在单个地址空间之外,actor模型似乎最受欢迎。
Akka-clojure为Clojure中的分布式actor提供了一个很好的接口。
英文:
Clojure's build in concurrency tools solve several different roles for coordinated and uncoordinated opperations in a single address space. Terracotta extends the single address space to more than one computer, and <b>beyond a single address space the actor model seems to be most popular</b>
The Akka-clojure provides a nice interface for distributed actors in Clojure.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论