问题标签 [akka]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
178 浏览

java - 处理一种未来依赖于另一种未来的两种不同类型的期货的理想方法是什么?

我正在查看 AKKA 的 Java Futures API,我看到了很多方法来处理同一类型的多个期货,但我没有看到任何可以处理不同类型期货的东西。我猜我让这比现在更复杂。

无论如何,假设我们有两个不同的 Actor:actorA 和 actorB。它们基于不同的类,并且各自返回不同的 Future。然而,actorB 依赖于来自 actorA 的 Future。是以下逻辑,如何最好地处理这种情况?

如果我们有一个actorAs 和actorBs 的列表呢?

0 投票
1 回答
2468 浏览

scala - Akka Actors 中的 Quartz CronTriggers 使用或不使用 Camel?

我有一个 Quartz CronTriggers 数据库。我想将整个系统移植到我目前正在构建的基于 Akka 的后端。我正在研究并思考如何做到这一点。

例如,CustomRouteBuilders 和其他类似的东西。我尝试了 Giovani 的优秀 Quartz-Camel-Akka 集成示例,并且对它印象深刻。现在,我的系统中有多个 cron 触发器,它们具有不同的用户创建的 cron 表达式。

如何使用这种依赖于用户的 endpointUri 对 Camel Consumer Actors 系统进行编程?正在考虑很多选择,但还没有弄清楚任何事情。

请帮助我完成这项工作。我也对 Quartz 和 Camel 之外的其他想法持开放态度。我想坚持使用基于 Akka 的后端平台。我的系统由用户定义的作业组成,这些作业在用户定义的 cron 可形成时间触发。

0 投票
1 回答
1272 浏览

unit-testing - 使用 Mokito 模拟 Akka Actor 的日志对象

我尝试了一些似乎可以编译但在单元测试期间抛出 NullPointer 异常的东西,所以我想知道如何才能克服单元测试中的限制。我有一个看起来像这样的类:

但是尝试使用 Specs2 和 Mockito 支持进行单元测试,其中包括:

在编译时会产生上述结果NullPointerException

我尝试将其更改为使用一些覆盖 AkkaLogging特征的“日志”对象的 mixin 特征,但编译器不允许这样做。编译器的回复类似于“我们不希望你犯一个无意的错误”。啊! 我想要那个“错误”。

有人知道另一种方式吗?我不拘泥于 Mockito,欢迎任何建议。

0 投票
4 回答
26467 浏览

java - 如何从 Java 中的 Java 列表创建 scala.collection.immutable.Seq?

我试图让 Akka 进入我的 Java 项目,但我对 Scala 的 Seq 类型的一个小问题感到困惑。我能够将我的 ActorRef 的 Java 列表转换为 scala.collection.Seq,但我尝试使用的 Akka API 需要 scala.collection.immutable.Seq。我怎样才能做一个?

代码:

0 投票
1 回答
455 浏览

java - akka 是否提供对远程参与者之间网络连接的监控?

这是我不久前发布的一个问题的后续问题(Akka 是否适合具有瞬态网络覆盖的系统?)。

我想知道是否有可用于 akka 演员的监控机制(心跳或类似的东西)可用于监控两个演员之间的连接。通常其中一个演员会监督另一个演员,所以我想如果这与 akka 的监督机制相结合会很好。

0 投票
2 回答
1712 浏览

scala - Akka 控制线程池线程

可能是一个非常愚蠢的问题——

是否可以自定义 Akka/Scala 演员,以便您控制演员使用的线程?例如,您可以初始化您自己的一组线程以在线程池中使用,或者以其他方式控制/修改线程吗?

0 投票
1 回答
920 浏览

scala - 大型共享状态的 scala/akka/stm 设计?

我是 Scala 和 Akka 的新手,正在考虑使用它来解决问题。假设我有一个计算引擎(搜索解决方案)。我想通过为每个节点上的每个 cpu 提供自己的引擎实例来并行化跨 cpu 和跨节点的搜索。

引擎输入由少量标量输入和一个非常大的哈希表组成。每个引擎实例将使用其标量输入对哈希表进行一些小的本地更改,计算一个优点,然后丢弃其更改(它们不需要被任何其他引擎实例提交/看到)。善值将返回给将在结果中进行选择的某个协调器。

我正在阅读一些关于 STM TransactionalMap 作为共享状态工具的信息。这似乎很理想,但我并没有真正看到任何完整的示例将其用作共享状态。

问题:

  • actor/stm 模型似乎适合这个问题吗?
  • 你能举一个具体的例子来说明如何分配共享状态吗?(它是 Ref[TransactionalMap[,]] 作为消息吗?
  • 在节点内分配共享状态与在不同节点之间分配共享状态有什么不同吗?

求知之心,

艾伦

0 投票
2 回答
412 浏览

java - 如何实现对瞬态 Actor 失败的重试?

我处于一个典型的情况,我有一组工人演员正在从队列中获得工作。Worker 故障可能是暂时的并且是由于环境引起的,也可能是永久性的并且是由于无效的作业引起的。

在工人演员内部,我正在处理永久性失败案例,但是如何为临时案例实施重试?有了主管,我可以让演员重新启动,这对于尝试重置为工作状态是可取的,但是当它失败时我如何重试它正在处理的消息呢?

谢谢!

0 投票
1 回答
954 浏览

scala - 如何从 Akka 主管那里获取异常详细信息?

我正在测试Actor我正在处理的新消息如何处理意外消息。我想断言它GibberishException在这些情况下会抛出 a 。这是到目前为止的测试和实现:

测试:

执行:

但是,当我运行测试时,异常详细信息会到达Supervisor我建立的位置,但我不知道如何对它们做任何事情(比如记录它们或测试它们的类型)。我希望能够从主管那里获得异常详细信息,以便我可以在我的测试中重新抛出和拦截它们。在测试方法之外,如果您想在正在运行的应用程序的 UI 中报告异常的性质,我可以想象这很有用。有没有办法从Supervisor它发生的时候得到它?

0 投票
2 回答
292 浏览

scala - Akka TypedActor 上的“Unit”方法超时,但应该是异步的

我正在尝试使用 Akka TypedActors (1.1.2)。我有一个类似的界面

我有一个定义明确的 NamespaceImpl 来扩展它。

我通过 Spring 创建了 actor:

在运行时,我会定期对 updateOrCreateCell 的调用超时,据我了解,这不应该发生,因为该方法是 Unit 类型,因此我希望它生成异步调用。

在堆栈跟踪中,我看到:

我看到 'ScalaActorRef$class.$bang$bang' 的事实告诉我有些事情是非常错误的。

任何帮助,将不胜感激。