1、akka通信:
①akka是一个通信框架,基于Actor编程模型实现,底层使用Netty来实现远程RPC通信;
②可以是单机的,也可以是分布式的;Akka中内置了许多的mailboxes;
③在akka里,Actor之间通信的唯一机制就是消息传递;
④spark1.6版本之前,spark分布式节点之间的消息传递使用的就是Akka,底层也就是actor实现的;1.6之后底层使用的netty传输。
2、Actor简介:
①Actor是用来收发消息,处理逻辑的,Actor就是通过收发消息实现并发的;
②Actor和Actor直接是可以发送消息的,Actor自己也可以给自己发送消息;
③消息是有类型的,里面封装的数据(case class);
④Actor是有生命周期的,是由ActorSystem创建的,ActorSystem负责创建、管理和监控Actors;
⑤ActorSystem是单例的(object),一个进程只要有一个即可;Actor是多例的可以创建多个实例;
⑥消息的接收者可以将消息返回给消息的发送者;
⑦会有一个Actor池,每个Actor会处理不同的事件;
⑧Actor做的事情可能会抛出异常,而它自己无法从中恢复。在这种情况下,需要再生成(created )一个新的Actor来顶替它。换句话说,这个新的Actor会忽略刚才那条消息&