首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java的哪个Actor模型库/框架?

Java的哪个Actor模型库/框架?
EN

Stack Overflow用户
提问于 2018-03-07 03:28:24
回答 2查看 0关注 0票数 0

Java(和JVM语言)有很多不同的Actor模型实现。

许多Actor库和框架已经被实现以允许Java中的Actor风格编程(其没有内建Actors)。我认为Actor模型具有很大的优势,但是Java的选择是压倒性的!

有人可以发布最流行的,并提供一些洞察到哪些使用?根据每秒传递的消息,哪些产品具有吞吐量基准?

EN

回答 2

Stack Overflow用户

发布于 2018-03-07 11:59:24

Carl Hewitt在这里解释了Actor计算模型的本质。

Killim和Akka(斯卡拉)表现最佳。我会建议使用Akka。 从Scala 2.11.0开始,Scala Actors库已被弃用。已经在Scala 2.10.0中默认的actor库是Akka。如果您不想在Scala中完成所有编码,请使用akka作为前端并调用您的java代码。Scala和Akka有非常好的语法和API。Akka有一个名为“活动对象”的Java API。请注意,现在Akka发生了很多事情,因此代码库正在快速移动。请参阅Java入门文档

Killim是基于java的,但编译时编织。

Jetlang和FunctionalJava是没有编译时编译的选项(??不确定),但没有Akka和Killim那么快(目前没有这方面的数据,但Jonas Boners和Viktor Klangs在Scala Days中有一些旧数据2010)。

其他选项是使用常规JMS(或其他一些MQ / PubSub)。你也可以做你自己的简单的内部JVM发布渠道/工作者。或者只是使用java util并发 ExecutorService或 com.google.common.util.concurrent

其他具有Actor实现的基于Scala的框架/库是Stambecco,Lift和Scalaz。

其他类似的模型是Hazlecast分布式执行器服务,Oracle Coherence与InvocableService,GigaSpaces执行器或IBM eXtreme Scale。但是这些在一定程度上缺少了“演员是系统”的部分。

票数 0
EN

Stack Overflow用户

发布于 2018-03-07 12:47:29

Jumi Actors是Java的演员库。它被设计成在Java代码中使用是自然的 - 不需要为每条消息创建一个类,但消息在接口上表示为方法。它的演员也是垃圾收集,所以他们不需要明确停止。使用Jumi Actors的代码是可测试的,两个单元都可以在不使用actors容器的情况下进行测试,并且可以使用确定性的单线程容器实现进行集成测试。

与Akka Actors相比,二进制大小(33 KB vs 10+ MB)要小得多,速度要快得多。看看Akka教程中的Pi例子以及使用Jumi Actor的相同例子,Akka的计算大约需要480-520毫秒,但Jumi Actor只需要350-390 ms。(如果演员不做任何工作,我们将仅测量消息传递,这种差异无疑会更大。)在比较启动性能时,启动Akka容器需要620 ms,但启动Jumi Actors容器只需要25 ms。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100001460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档