Akka 编程

背景介绍:学会 akka 编程,自己编写一个分布式的 RPC 通信框架,为学习 spark 的源码做准备。

一、Akka 简介

Akka 基于 Actor 模型,提供了一个用于构建可扩展的(Scalable)、弹性的(Resilient)、快速响应的(Responsive)应用程序的平台。

Actor 模型:在计算机科学领域,Actor 模型是一个并行计算(Concurrent Computation)模型,它把 actor 作为并行计算的基本元素来对待:为响应一个接收到的消息,一个actor能够自己做出一些决策,如创建更多的actor,或发送更多的消息,或者确定如何去响应接收到的下一个消息。

二、重要的类介绍

ActorSystem

在 Akka 中,ActorSystem 是一个重量级的结构,他需要分配多个线程,所以在实际应用中,ActorSystem 通常是一个单例对象,我们可以使用这个 ActorSystem 创建很多 Actor。

Actor

在 Akka 中,Actor 负责通信,在 Actor 中有一些重要的生命周期方法。

  1. preStart() 方法:该方法在 Actor 对象构造方法执行后执行,整个 Actor 生命周期中仅执行一次。
  2. receive() 方法:该方法在 Actor 的 preStart 方法执行完成后执行,用于接收消息,会被反复执行。

三、编程实战,分布式通信框架

你可能感兴趣的:(Akka 编程)