Actor

  • UntypedActor actor的基类,继承并实现onReceive方法就可以得到一个Actor。
  • Props 配置类,用Props.create可以创建一个按指定配置生成的Actor。
  • Props的推荐实践,创建Actor时,搞一个static的Props.create方法。可以少写不少重复代码。
  • system.actorOf 会创建顶级的actor,将被系统监控。
  • getContext().acrtorOf 会创建子actor。
  • ActorRef 由actorOf产生,可以是一个网络actor。
  • ActorRef.forward 与tell、ask的区别,性能最好的是tell,发完就走。ask是发完等Future,要等的话性能是个问题。forward用于从一个actor转 发消息给另一个actor,原始的sender信息会被保留,在>做路由、负载均衡、备份时非常有用。ask会拦住reply消息直接给 onsuccess等,sender不会再得到reply。
  • Inbox 当actor不能满足需要时,可以使用inbox,比如收多个回复,watch其他actor的生命周期。

spring集成

  • 实现SpringExtProvider在spring context中去寻找actor class,实现akka.actor.Extension和akka.actor.IndirectActorProducer。
  • system.actorOf(SpringExtProvider.get(system).props(“CountingActor”), “counter”);即可取到bean为CountingActor的class。

else

  • PoisonPill 这毒药,给哪个actor一发就挂。myActor.tell(akka.actor.PoisonPill.getInstance(), sender);
  • TypedActor 是比较好的连接actor系统与非actor内容的东东。
  • mailbox 每个actor的消息存放处,默认为 java.util.concurrent.ConcurrentLinkedQueue,akka.dispatch.SingleConsumerOnlyUnboundedMailbox 为更高效的一个box,但不能用在BalancingDispatcher时。还可以自已定义mailbox的细节。
  • UntypedProcessor 继承它可得到一个processor。用来做persistence用的。
  • SupervisorStrategy 定义出错处理。
  • routing 定义路由选择机制。cluster中使用。

akka笔记的更多相关文章

  1. AKKA 笔记 - 有限状态机 -2

    AKKA 笔记 - 有限状态机 -2 原文地址: http://rerun.me/2016/05/22/akka-notes-finite-state-machines-2/ 在上一节的Akka FS ...

  2. 翻译:AKKA笔记 - Actor消息 -1(一)

    从第一篇Akka笔记的介绍中,我们是从很高的高度去观察Akka工具箱中的Actors.在这篇笔记的第二篇,我们会看一下Actors中的消息部分.而且延续上一次的例子,我们还会使用同样的学生与老师的例子 ...

  3. 翻译:AKKA笔记 - 介绍Actors

    任何以前做过多线程的人都不会否认管理多线程程序是困难并且痛苦的. 我说管理是因为它开始很容易而且当你看到性能提升时会很兴奋.但是,当你看到你没法从子线程的错误中恢复 或者 这些僵尸bug很难重现 或者 ...

  4. [翻译] AKKA笔记- ACTORSYSTEM (配置CONFIGURATION 与调度SCHEDULING) - 4(一)

    原文在http://rerun.me/2014/10/06/akka-notes-actorsystem-in-progress/ 像我们前面看到的,我们可以用ActorSystem的actorof方 ...

  5. [翻译]AKKA笔记 - 有限状态机 -1

    原文地址:http://rerun.me/2016/05/21/akka-notes-finite-state-machines-1/ 我最近有个机会在工作上使用了Akka FSM,是个非常有趣的例子 ...

  6. [翻译]AKKA笔记 -ACTOR SUPERVISION - 8

    失败更像是分布式系统的一个特性.因此Akka用一个容忍失败的模型,在你的业务逻辑与失败处理逻辑(supervision逻辑)中间你能有一个清晰的边界.只需要一点点工作,这很赞.这就是我们要讨论的主题. ...

  7. [翻译]AKKA笔记 - DEATHWATCH -7

    当我们说Actor生命周期的时候,我们能看到Actor能被很多种方式停掉(用ActorSystem.stop或ActorContext.stop或发送一个PoisonPill - 也有一个kill和g ...

  8. [翻译]AKKA笔记 - CHILD ACTORS与ACTORPATH -6

    原文:http://rerun.me/2014/10/21/akka-notes-child-actors-and-path/ Actor是完全的继承结构.你创建的任何Actor肯定都是一个其他Act ...

  9. [翻译]AKKA笔记 - ACTOR生命周期 - 基本 -5

    原文地址:http://rerun.me/2014/10/21/akka-notes-actor-lifecycle-basic/ (请注意这了讨论的生命周期并不包括 preRestart 或者pos ...

  10. [翻译]AKKA笔记 - ACTOR MESSAGING - REQUEST AND RESPONSE -3

    上次我们看Actor消息机制,我们看到开火-忘记型消息发出(意思是我们只要发个消息给Actor但是不期望有响应). 技术上来讲, 我们发消息给Actors就是要它的副作用. 这就是这么设计的.除了不响 ...

随机推荐

  1. The Python Tutorial

    1. >>> print('C:\some\name') # here \n means newline! C:\some ame >>> print(r'C:\s ...

  2. 简单粗暴下载Spring

    http://repo.springsource.org/libs-release-local/org/springframework/spring/4.3.3.RELEASE/(想要下载什么版本,替 ...

  3. 《奥威Power-BI销售计划填报 》精彩回顾

    我们经常遇到这样的问题:业务单据是来自ERP系统,销售计划是EXCEL做的,想把两者整合在一起做分析,怎么办? 单据大,导出EXCEL太费劲,也很难分析到历史数据,但又不能动ERP系统 (自己也不会改 ...

  4. java虚拟机内部介绍

    一.介绍 java 的内存管理和垃圾回收在某种程度是同一个问题来着.对于java程序员来说,在虚拟机自动内存管理机制的帮助下,不在需要为每一个new操作去写配对的delete/free代码,不容易出现 ...

  5. PHP---------PHP函数里面的static静态变量

    工作一年了,一年里很少用到static这个关键词,不管是类里面还是方法里面基本都没怎么用过.平时看到类里面有这个都没什么好奇的,今天在函数里面看到了这个,就去百度了一下. <?phpfuncti ...

  6. C# App.config文件配置数据的读写

    添加程序集引用  System.configuration.dll 和命名空间 using System.Configuration; 读: ConfigurationManager.AppSetti ...

  7. WIN7远程桌面连接方法!

    WIN7远程桌面连接方法!

  8. 微信中修改title

    //需要jQuery.zepto版 function weixinTitle(){ var $body = $('body'); document.title = 'title'; // hack在微 ...

  9. svn提交时强制添加注释

    1,找到Repositories 文件夹 2,在Repositories 中找到对应的工程, 3,在工程下找到hooks文件夹 4.在hooks文件夹下添加 :pre-commit.bat文件;文件内 ...

  10. CSS:opacity 的取值范围是 0~1

    CSS:opacity 的取值范围是 0~1,难怪设置为 1~100 看不到效果.