Akka简介
Spark 的RPC是通过Akka类库实现的,Akka用Scala语言开发,基于Actor并发模型实现,
Akka具有高可靠、高性能、可扩展等特点,使用Akka可以轻松实现分布式RPC功能。
Actor是Akka中最核心的概念,它是一个封装了状态和行为的对象,Actor之间可以通过交换消息的方式进行通信,
每个Actor都有自己的收件箱(Mailbox)。通过Actor能够简化锁及线程管理,
可以非常容易地开发出正确地并发程序和并行系统,Actor具有如下特性:
1.提供了一种高级抽象,能够简化在并发(Concurrency)/并行(Parallelism)应用场景下的编程开发
2.提供了异步非阻塞的、高性能的事件驱动编程模型
3.超级轻量级事件处理(每GB堆内存几百万Actor)
ActorSystem
在Akka中,ActorSystem是一个重量级的结构,
他需要分配多个线程,所以在实际应用中,ActorSystem通常是一个单例对象,
我们可以使用这个ActorSystem创建很多Actor。
Actor
在Akka中,Actor负责通信,在Actor中有一些重要的生命周期方法。
1.preStart()方法:该方法在Actor对象构造方法执行后执行,整个Actor生命周期中仅执行一次。
2.receive()方法:该方法在Actor的preStart方法执行完成后执行,用于接收消息,会被反复执行。
案例需求
用Akka实现RPC通信
模拟实现Spark启动机制
akka简介
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Akka是一个构建在JVM上,基于Actor模型的的并发框架,为构建伸缩性强,有弹性的响应式并发应用提高更好的平台...
- Javas cript是世界上最流行的脚本编程语言,主要用于Web开发,也可用于服务器、PC、笔记本电脑、平板电脑...
- 最近在和小伙伴聊天的时候发现初学者很容易将 设计模式、架构模式、框架给弄混,所以想将最近设计模式和架构模式做个...
- hue:Hadoop User Experience Hue是一个开源的Apache Hadoop UI系统,最早...