Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Akka演员背压/流量控制_Akka - Fatal编程技术网

Akka演员背压/流量控制

Akka演员背压/流量控制,akka,Akka,假设我有一个包含五个参与者的RoundRobinPool路由器,以及一个包含100000个工作项的列表,我需要让这些参与者进行处理 val myrouter: ActorRef = context.actorOf(RoundRobinPool(5).props(Props[Worker]), "myrouter") for (a <- mylist) myrouter ! a val myrouter:ActorRef= context.actorOf(RoundRobinPo

假设我有一个包含五个参与者的RoundRobinPool路由器,以及一个包含100000个工作项的列表,我需要让这些参与者进行处理

val myrouter: ActorRef =
  context.actorOf(RoundRobinPool(5).props(Props[Worker]), "myrouter")

for (a <- mylist)
  myrouter ! a
val myrouter:ActorRef=
context.actorOf(RoundRobinPool(5).props(props[Worker]),“myrouter”)

对于(a),您可以查看工作拉动模式。您还可以使用Akka Streams(源代码是您的工作列表)和ask(通过
mapAsync
)将背压纳入工作处理中。谢谢,工作拉动模式看起来很有趣。我知道Akka streams也可以解决这个问题,但对我当前的代码库来说,这是一个太大的破坏性变化。你可以研究工作拉动模式。你也可以使用Akka streams(源代码是您的工作列表)并要求(通过
mapsync
)将背压纳入您的工作处理中。谢谢,工作拉动模式看起来很有趣。我知道Akka streams也可以解决问题,但对我当前的代码库来说,这是一个太大的破坏性变化。