Jae*_*aen 2 erlang distributed scala clojure akka
我参与了一个编写游戏传播和服务平台的项目,这将使游戏开发者能够轻松地外包游戏发布和更新,以及提供多人/社区的某些部分,如成就,排名,朋友等. web服务,采用SOAP或REST API的形式.
我不确定它在获得市场份额方面的可行性,但是应该编写应用程序,以便横向扩展以吸收任何数量的可能用户.由于该项目仍处于早期阶段,因此对所使用的语言和技术有一定程度的影响.
到目前为止,我的研究已经将选择范围缩小到Erlang或基于JVM的语言.
Erlang因其专注于可扩展和容错的分布式应用程序以及成熟的跟踪记录而广为人知,但另一方面,它的库生态系统远没有JVM那么丰富.另一方面,JVM语言享有一个拥有众多库的大社区,其中许多都致力于提供分布式和可靠的服务,例如Terracota或Akka(这似乎是受到Erlang的启发,尽管我不知道有多少它接近并希望听到它的力量).
由于语言生产力与平台强度和可靠性同等重要,如果我使用JVM,我会倾向于Scala或Clojure而不是Java.当然,如果你认为还有另一种语言(JVM或非语言)更适合这样的任务,我很想知道它.
我不想阅读语言的酷炫功能的清单列表,因为我可以自己谷歌,我宁愿对你自己编写这样一个应用程序的经历感兴趣(有点像这些博客的链接 - 链接)虽然不仅涉及原始性能,还涉及语言和库问题.
我想听听您(或贵公司)对这类项目的语言和技术选择是什么,这种选择的动机是什么,您使用所选平台的经历是什么,并最终实现了它.
我们将非常感谢所有的见解; )
鉴于你最初对Erlang的兴趣,我不得不说Scala.
Scala演员直接受到了Erlang的启发,而Akka(很久以前就已经开始)作为Erlang对Scala语言的OTP的一个端口.
Scala和Akka都是商业环境中使用的强大解决方案,并得到了最近成立的"Typesafe"公司的大力支持.此外,您还可以获得在JVM平台上运行的所有优势.