Akka介绍
**Akka 是 JAVA 虚拟机平台上构建高并发, 分布式和容错应用的工具包。
运行时 Akka 用 Scala 语言编写,同时提供了 Scala 和 java 的开发接口。
Akka处理并发的方法基于Actor 模型 ,Actor 之间通信的唯一机制就是消息传递 **
Akka 特点:
1) 对并发模型进行了更高的抽象
2) 是异步,非阻塞,高性能的事件驱动机构编程模型
3) 是轻量级时间处理(1 GB 内存可容纳百万级别个Actor)
4)它提供了一种称为 Actor 的 并发模型,其粒度比线程更小,你可以在系统中启用大量的Actor
5)它提供了一套容错机制,允许在Actor出现异常时进行一些恢复或重置的操作
6)Akka 既可以在单机上构建高并发程序,也可以在网络中构建分布式程序 ,并提供位置透明的Actor定位服务
**
RPC 通信案例过程分析
**
代码实现
1) 首先创建一个Move 项目 ,添加依赖
<!-- 常量 -->
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<encoding>UTF-8</encoding>
<scala.version>2.12.12</scala.version>
<scala.compat.version>2.12</scala.compat.version>
<akka.version>2.5.32</akka.version>
</properties>
<dependencies>
<!-- scala的依赖 -->
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${
scala.version}</version>
</dependency>
<!-- akka actor依赖 -->
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-actor_${
scala.compat.version}</artifactId>
<version>${
akka.version}</version>
</dependency>
<!-- akka远程通信依赖 -->
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-remote_${
scala.compat.version}</artifactId>
<version>${
akka.version}</version>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<!-- 编译scala的插件 -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</art