akka note

  • if invoked from an instance that is not an Actor the sender will be deadLetters actor reference by default.
  • 在akka中使用ask模式可设置超时时间,因为ask模式需等待对方的回应
implicit val timeout = Timeout(2 seconds)
(userAggregateManager ? GetUser(user)).map( _ match {
          case u: User if pass.isBcrypted(u.pass) => Some(u)
          case _ => None
})
时间: 2025-01-02 18:30:42

akka note的相关文章

Apache Spark-1.0.0浅析(八):资源调度——Akka通信建立

Spark使用Akka作为各种功能和组件之间的通信工具.同样,在资源调度过程中也使用其作为消息传递系统.之前,在分析了Apache Spark-1.0.0资源调度过程中,明确了主要消息的传递过程和引起的相关动作,本文主要分析Spark资源调度过程中所用到的Akka通信的初始化过程. (I)Job相关(DagScheduler.scala) SparkContext中实例化DAGScheduler @volatile private[spark] var dagScheduler: DAGSche

Akka(10): 分布式运算:集群-Cluster

Akka-Cluster可以在一部物理机或一组网络连接的服务器上搭建部署.用Akka开发同一版本的分布式程序可以在任何硬件环境中运行,这样我们就可以确定以Akka分布式程序作为标准的编程方式了. 在上面两篇讨论里我们介绍了Akka-Remoting.Akka-Remoting其实是一种ActorSystem之间Actor对Actor点对点的沟通协议.通过Akka-Remoting来实现一个ActorSystem中的一个Actor与另一个Actorsystem中的另一个Actor之间的沟通.在Re

Akka(22): Stream:实时操控:动态管道连接-MergeHub,BroadcastHub and PartitionHub

在现实中我们会经常遇到这样的场景:有一个固定的数据源Source,我们希望按照程序运行状态来接驳任意数量的下游接收方subscriber.又或者我需要在程序运行时(runtime)把多个数据流向某个固定的数据流终端Sink推送.这就涉及到动态连接合并型Merge或扩散型Broadcast的数据流连接点junction.从akka-stream的技术文档得知:一对多,多对一或多对多类型的复杂数据流组件必须用GraphDSL来设计,产生Graph类型结果.前面我们提到过:Graph就是一种运算预案,

Akka Stream文档翻译:Quick Start Guide: Reactive Tweets

Quick Start Guide: Reactive Tweets 快速入门指南: Reactive Tweets (reactive tweets 大概可以理解为“响应式推文”,在此可以测试下GFW是否还在正常工作 Twitter) A typical use case for stream processing is consuming a live stream of data that we want to extract or aggregate some other data fr

Akka(26): Stream:异常处理-Exception handling

akka-stream是基于Actor模式的,所以也继承了Actor模式的“坚韧性(resilient)”特点,在任何异常情况下都有某种整体统一的异常处理策略和具体实施方式.在akka-stream的官方文件中都有详细的说明和示范例子.我们在这篇讨论里也没有什么更好的想法和范例,也只能略做一些字面翻译和分析理解的事了.下面列出了akka-stream处理异常的一些实用方法: 1.recover:这是一个函数,发出数据流最后一个元素然后根据上游发生的异常终止当前数据流 2.recoverWithR

akka在spring下的测试例子

1.测试目标:证实Akka确保Actor的每个实例都运行在自己的轻量级线程里,并拥有自己的队列,保证先进先出的处理每一条消息. 2.akka中actor既是发射器又是接收器,发消息和收消息时必经过自己的onReceive方法. 3.如果使用从spring获取的同一实例测试,得出每个actor实例是自包含一个队列的,发和收的顺序一致. AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();

Scalable, Distributed Systems Using Akka, Spring Boot, DDD, and Java--转

原文地址:https://dzone.com/articles/scalable-distributed-systems-using-akka-spring-boot-ddd-and-java When data that needs to be processed grows large and can’t be contained within a single JVM, AKKA clusters provides features to build such highly scalabl

Akka 编程(20):容错处理(一)

我们在前面介绍Actor系统时说过每个Actor都是其子Actor的管理员,并且每个Actor定义了发生错误时的管理策略,策略一旦定义好,之后不能修改,就像是Actor系统不可分割的一部分.实用错误处理首先我们来看一个例子来显示一种处理数据存储错误的情况,这是现实中一个应用可能出现的典型错误.当然实际的应用可能针对数据源不存在时有不同的处理,这里我们使用重新连接的处理方法.下面是例子的源码,比较长,需要仔细阅读,最好是实际运行,参考日志来理解: 1 import akka.actor._ 2 i

Akka FSM 源代码分析

Akka FSM 源代码分析 萧猛 <[email protected]> 啰嗦几句 有限状态机本身不是啥新奇东西,在GoF的设计模式一书中就有状态模式, 也给出了实现的建议.各种语言对状态机模式都有非常多种实现的方式.我自己以前用C++和java实现过,也以前把 apache mina 源代码中的一个状态机实现抠出来单独使用. 但Akka的状态机是我见过的最简洁美丽实现.充分利用了Scala的很多先进的语言机制让代码更加简洁清晰.利用了Akka Actor实现并发.用户基本不用考虑线程安全的