Akka Actor模型开发库

Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 AcTor 模型应用。

Actor模型并非什么新鲜事物,它由Carl Hewitt于上世纪70年代早期提出,目的是为了解决分布式编程中一系列的编程问题。其特点如下:

  • 系统中的所有事物都可以扮演一个Actor

  • Actor之间完全独立

  • 在收到消息时Actor所采取的所有动作都是并行的,在一个方法中的动作没有明确的顺序

  • Actor由标识和当前行为描述

  • Actor可能被分成原始(primitive)和非原始(non primitive)类别

  • 非原始Actor有

    • 由一个邮件地址表示的标识

    • 当前行为由一组知识(acquaintances)(实例变量或本地状态)和定义Actor在收到消息时将采取的动作组成

  • 消息传递是非阻塞和异步的,其机制是邮件队列(mail-queue)

  • 所有消息发送都是并行的

Java 代码:

public class Greeting implements Serializable {
  public final String who;
  public Greeting(String who) { this.who = who; }
}
 
public class GreetingActor extends UntypedActor {
  LoggingAdapter log = Logging.getLogger(getContext().system(), this);
 
  public void onReceive(Object message) throws Exception {
    if (message instanceof Greeting)
      log.info("Hello " + ((Greeting) message).who);
  }
}
 
ActorSystem system = ActorSystem.create("MySystem");
ActorRef greeter = system.actorOf(Props.create(GreetingActor.class), "greeter");
greeter.tell(new Greeting("CharlIE Parker"), ActorRef.nosender());

Scala 代码:

case class Greeting(who: String)
 
class GreetingActor extends Actor with ActorLogging {
  def receive = {
    case Greeting(who) ⇒ log.info("Hello " + who)
  }
}
 
val system = ActorSystem("MySystem")
val greeter = system.actorOf(Props[GreetingActor], name = "greeter")
greeter ! Greeting("Charlie Parker")

 

Actor 模型开发库 Akka 2.5.9 发布,2.4.x 结束生命周期
Akka 2.5.9 已发布,这是一个新的补丁版本,包含了一些小的修复,值得关注的 bug 修复有:为 Artery 的 Aeron 升级至 1.7.0 #24169集群分片的优化 #24064 和 #24191用于 Address 的新的顶层 protobuf 序列化程序 #24265该版本关闭了自 2.5.8 以来的 42 个 issue,完整的列表可点此查看

发布于 2018-01-13 00:25:13 | 223 次阅读

Lakka v2.5.9 发布,游戏机用的 Linux 发行版
Lakka v2.5.9 发布了。Lakka 是将计算机转换为游戏机的轻量级 Linux 发行版,该项目已经宣布发布 Lakka 2.1 RC5,现在可以在各种平台上进行测试。更新内容:Update LevelDB Update whitesourceTyped stream adapters[WIP] supervise also deferred initializationTyped guardian shutdown race完整更新列表请查看发布

发布于 2018-01-11 23:53:23 | 218 次阅读

Akka v2.5.6 发布,Actor 模型开发库
Akka v2.5.6 已发布,Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。除了正常的维护和改进,该版本还增加了很多新特性,主要如下:Support for Java 9 across the board (while maintaining Java 8 support)Support for java.util.concurrent.Flow interfac

发布于 2017-09-30 00:57:12 | 170 次阅读

Akka 2.5.4 和 2.4.20 发布,Actor 模型开发库
Akka 2.5.4 和 2.4.20 已发布,Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。由于 Camel 的安全漏洞,akka-camel 的用户建议将 Camel 更新至 2.17.7,将 akka-camel 更新至 2.5.4。2.5.4 版本中一些值得关注的改进:New PartitionHub for routing of eleme

发布于 2017-08-10 23:22:48 | 167 次阅读

Akka 2.5.3 发布,Actor 模型开发库
Akka v2.5.3 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。Akka v2.5.3 是 2.5 的新补丁版本,包含一些显着的改进和错误修复:Fix Akka Remoting issue (ResendUnfulfillableException) after transport failure detection, #23010Fix OversizedPa

发布于 2017-06-19 23:52:32 | 140 次阅读

Akka 2.4.19 发布,Actor 模型开发库
Akka 2.4.19 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。该版本包含一些改进和 bug 修复,具体如下:修复在 transport 故障检测后的 Akka Remoting 问题(ResendUnfulfillableException)报告引起 Akka IO TCP CommandFailed 事件的原因始终尝试将致

发布于 2017-06-14 00:24:15 | 122 次阅读

Akka v2.4.11.2 发布,Actor 模型开发库
Akka v2.4.11.2 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。更新内容请参考提交记录。往期版本更新内容请查看发布说明。下载地址:Source code (zip)Source code (tar.gz)

发布于 2017-05-03 23:53:37 | 136 次阅读

Akka 2.5.0 发布,Actor 模型开发库
Akka 2.5.0 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。该版本暂无更新内容。下载地址:Source code (zip)Source code (tar.gz)

发布于 2017-04-12 23:49:00 | 202 次阅读

Akka 2.5.0-RC2 发布,Actor 模型开发库
Akka 2.5.0-RC2 发布了。官方表示,除非发现问题,否则打算把这个版本当作 2.5.0 最终版,所以请仔细检查并报告。自从两周前的上一个候选版发布以来,他们已经在分布式数据中修改了新的 delta-CRDT 协议中的一些错误。已关闭的 tickets 的完整列表可以在 github 上的 2.5.0-RC2 milestone 上找到。有关即将到来的 Akka 2.5.

发布于 2017-03-30 23:57:00 | 144 次阅读

Akka 2.5.0-RC1 发布,Actor 模型开发库
Akka 2.5.0-RC1 发布了。自从 Akka 2.4.0(18 个月前)发布以来,我们已经为 2.4.x 版本系列增加了许多新功能,包括 Akka Streams 和 HTTP。但像以前一样,总会有一些变更不能在补丁版本中实现,因此 Akka 2.5 诞生了。其中的一个变化是将一些实验模块推广到完全稳定的模块,并在宣布它们稳定之前加入一些 API 改进。2.5.0-

发布于 2017-03-17 23:31:39 | 172 次阅读

Akka v2.4.17 发布,Actor 模型开发库
Akka v2.4.17 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。该版本是为了发布即时可用的安全补丁,解决Java反序列化的潜在安全问题。该版本还包括一些其他的改进和bug修复,如:Cluster Sharding with remember entities doesn’t recover properly after sn

发布于 2017-02-10 23:48:31 | 152 次阅读

Akka v2.5-M1 发布,Actor 模型开发库
Akka v2.5-M1 发布了,更新内容较多,下面是一些本次更新的主要新特性:The Java API for AbstractActor was promoted to fully stable API. While doing this we did some small, but important, improvements to the API that will require some mechanical changes of your source code.Distributed

发布于 2017-01-26 23:48:23 | 140 次阅读

Akka v2.4.15 和 2.4.16 发布,Actor 模型开发库
Akka v2.4.15 和 2.4.16 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。暂无更新内容,相关链接:http://akka.io/news/https://github.com/akka/akka/releases下载地址:v2.4.15Source code (zip)Source code (tar.gz)v2.4.16Source code (zip)Source code (t

发布于 2016-12-20 00:31:00 | 208 次阅读

Akka v2.4.14 发布,Actor 模型开发库
Akka v2.4.14 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。更新内容:Add BalancingHub stream elementsImprove CircuitBreaker documenta

发布于 2016-11-22 00:18:16 | 95 次阅读

Akka v2.4.13_2.12 发布,Actor 模型开发库
Akka v2.4.13_2.12 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。此版本暂无更新内容。了解更多请关注发行日志和提交记录。下载地址:Sourc

发布于 2016-11-18 23:49:14 | 106 次阅读

Akka v2.4.12 发布,Actor 模型开发库
Akka v2.4.12 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。暂无改进内容。更多详情请关注发行日志和提交记录。下载地址:Source code (zip)Source code (tar.gz)

发布于 2016-10-28 23:59:36 | 107 次阅读

Akka v2.4.11 发布,Actor 模型开发库
Akka v2.4.11 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。改进内容,请点击此处查看。更多详情请关注发行日志和提交记录。下载地址:Source code (zip)Source code (tar.gz)

发布于 2016-10-01 00:03:04 | 116 次阅读

Akka v2.4.10_2.12.0-RC1,Actor 模型开发库
Akka v2.4.10_2.12.0-RC1 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。本次主要的更新内容是将Scala升级至2.12.0-RC1。暂无发现其他更新内容,相关链接:http://akka.io/news/https://github.com/akka/akka/releases/tag/v2.4.10_2.12.0-RC1https://gi

发布于 2016-09-13 23:19:57 | 85 次阅读

Akka v2.4-ARTERY-M4,Actor 模型开发库
Akka v2.4-ARTERY-M4 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。暂未发现该版本更新内容,点击下面链接保持关注更新:http://akka.io/news/https://github.com/akka/akka/releases/tag/v2.4-ARTERY-M4https://github.com/akka/akka/compare/v2.4-ART

发布于 2016-09-10 23:27:31 | 97 次阅读

Akka v2.4.10 发布,Actor 模型开发库
Akka v2.4.10 发布了。Akka 是一个用 Scala 编写的库,用于简化编写容错的、高可伸缩性的 Java 和 Scala 的 Actor 模型应用。该版本更新如下:An addition of MergeHub and BroadcastHub which enables dynamic fan-in and fan-out streams. Find more information in the ticket and documentation (Scala 

发布于 2016-09-09 04:22:07 | 88 次阅读

如何用sbt新建akka项目
本篇内容为大家讲解的是如何用sbt新建akka项目,感兴趣的同学参考学习下,本文内容如下:

发布于 2016-01-10 01:53:31 | 192 次阅读


Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务