Java-Akka:汇集来自多个参与者的消息

时间:2015-06-29 07:48:29

标签: java akka akka-stream

我是Akka的新手。我有4个演员。

Actor1将Message1发送给Actor4。 Actor2将Message2发送给Actor4。 Actor3将Message3发送给Actor4。

当Actor4收到1条Message1类型的消息,1条Message2类型的消息和2条Message3类型的消息时,应该创建Message4。

Message4 =(Message1,Message2,Message3a,Message3b,Message3c)

这样做的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

如果你的任务依赖于其他任务正在完成,而其他任务可以并行完成,你想使用期货,我已经回答了这样的问题,这可能是一个重复的问题,只是一个变体更普遍的问题是并行执行任务并尽可能地跨资源分配它们,但无论如何,期货在我看来为这个问题提供了更清晰的解决方案,请在这里查看我的答案 Executing Dependent tasks in parallel in Java

答案 1 :(得分:1)

我同意Snickers3192,你可以使用期货。你也可以看看Jamie Allen的Cameo Pattern。我在另一个stackoverflow线程中创建了一些粗略的例子。这些都是Scala而不是Java。

Futures and Cameo Pattern