Bha*_*waj 47 scala akka vert.x
我是Scala程序员,从开发人员的角度理解Akka.我没有查看过Akka库的代码.已经阅读了Akka模型中的两种类型的演员 - 基于线程和基于事件 - 但没有大规模运行Akka我没有配置Akka用于生产的经验.我是Vert.x的新手.所以,从选择的角度来构建一个我想知道的反应式应用程序堆栈 -
cla*_*ccs 57
在肤浅的视图中,它们非常相似,尽管我个人认为更多类似的vert.x想法到某个MQ系统而不是akka ... vert.x拓扑更平坦:Verticle与其他Verticle共享一条消息并接收一个响应......相反,akka更像是一棵树,你有几个演员,但是你可以用其他演员来监督演员......对于简单的项目,也许它们不是那么大,但对于大项目,你可以欣赏一个更多"等级制"......
另一方面,vert.x在非常流行的语言之间提供了更好的互操作性*.对于我来说,这是一个重点,你需要将演员与MQ系统混合并处理更多的复杂性,vert.x使它变得简单而优雅.所以答案,哪个更好?...依赖,如果你的系统将只在scala上构建,然后akka可能是最好的方式...如果你需要与javascript,ruby,python,java等进行通信......并且不需要复杂的层次结构,那么vert.x就是要走的路..
*(使用json,相比之下可能是优势或劣势)
你还必须考虑vert.x是一个完整的解决方案,tcp,http服务器,路由,甚至websocket !!! 这是非常了不起的,因为它们提供了完整的堆栈,api非常干净......如果你选择akka,你需要使用像play,xitrum o spray这样的框架.我不喜欢它们中的任何一个.
还要记住,vertx是一个不固定的平台,你可以使用akka或kafka,例如,几乎没有任何开销.系统的每个部分如何在一个垂直内部解耦的方式使它变得如此简单......
Vert.x是一个具有惊人观点的大项目,但是真的很新,如果你现在需要一个解决方案可能它不是更好的选择,幸运的是你可以学习这两个并在同一个项目中使用它们...
tux*_*dna 38
在做了一些谷歌搜索后,我发现在Akka与Vert.x的详细比较还没有完成(至少我找不到它).
计算模型:
反应流:
HTTP支持
Scala支持
远程服务
参考文献: