Akka工具包的最新版2.3.0版本发布,带来了持久化特性,支持有状态的Actor将其内部状态持久化。该版本也为支持Java 8的Lambda表达式做好了准备。
\Akka的持久化,并不是持久化当前状态,而是持久化Actor状态的每次改变。状态改变会被追加到一个日志上,Actor的内部状态可以通过重放保存的这些改变信息重新构建出来。该版本还支持事件源,支持至少交付一次消息。
\借助Java 8和Lambda表达式, Actor和有限状态机(Finite State Machine,FSM)现在都可以使用Lambda表达式实现,所以不再需要声明匿名内部类。
\目前持久化模块和Lambda支持都被标记为实验特性,希望根据用户的反馈改善API。
\其他改进包括:
\- 当受影响的节点恢复响应时,集群可以从部分不可达状态回归到正常工作状态。\
- 当Actor消耗的资源超出一台机器的供应能力时,可以使用集群分片将有状态的Actor分发到多个节点上。\
- 去掉了Akka IO包的实验特性标记,但是Pipeline基础设施不再使用。\
- 重写了OSGi支持部分,使Akka-Actor可以成为一个OSGi bundle。\
为反映框架的变化,更新了项目文档和上手文档。Akka是一个更大型示例响应式平台Typesafe的一部分。
\新版本有些结构上的修改,所以从2.2.*版本升级时需要修改代码。从更早的版本升级可能还需要一些额外的步骤。
\Akka工具包是Actor模型的一个实现,同时提供了Java API和Scala API。2.3版本是2014年下半年计划中的较大型里程碑版本的第一步。
\Akka是一款开源产品,基于Apache 2许可证发布。
\Vaughn Vernon是《Implementing Domain-Driven Design》一书的作者,去年他曾谈到Actor模型在响应式领域驱动设计中的使用,更早的时候他还谈到过Actor模型与领域驱动设计结合使用的基础。
\大家可以访问Akka用户论坛,目前已经有3000多位成员。
\