Akka Actor模型开发库是一个为Java和Scala构建高并发、分布式和弹性消息驱动应用程序的工具包,更轻松地构建强大的反应式、并发式和分布式应用。 软件介绍Actor模型并非什么新鲜事物,它由Carl Hewitt于上世纪70年代早期提出,目的是为了解决分布式编程中一系列的编程问题。其特点如下: 1、系统中的所有事物都可以扮演一个Actor; 2、Actor之间完全独立; 3、在收到消息时Actor所采取的所有动作都是并行的,在一个方法中的动作没有明确的顺序; 4、Actor由标识和当前行为描述; 5、Actor可能被分成原始(primitive)和非原始(non primitive)类别; 6、非原始Actor有: 由一个邮件地址表示的标; 当前行为由一组知识(acquaintances)(实例变量或本地状态)和定义Actor在收到消息时将采取的动作组成; 7、消息传递是非阻塞和异步的,其机制是邮件队列(mail-queue); 8、所有消息发送都是并行的。 软件特色简单的并发和分布式系统 Actors和Streams让你构建的系统可以扩展,更有效地使用服务器的资源,出,使用多个服务器。 弹性设计 基于 "反应式宣言 "的原则,Akka允许你编写系统,使其在面对失败时能够自我修复并保持响应。 高效能 在单机上最高可达到 5000 万 msg/秒。小内存占用;每GB堆约250万个角色。 弹性和分散式 无单点故障的分布式系统。跨节点的负载均衡和自适应路由。使用集群共享的事件源和CQRS。使用CRDTs实现最终一致性的分布式数据。 反应式流数据 异步非阻塞流处理与反压。完全异步和流式HTTP服务器和客户端为构建微服务提供了一个很好的平台。与Alpakka进行流式集成。 使用编程语言写的程序,由于每条指令都对应计算机一个特定的基本动作,所以程序占用内存少、执行效率高。 |