如何在akka(scala)中将RoundRobinRouter修改为RoundRobinPool或RoundRobinGroup

时间:2018-02-28 10:17:27

标签: scala akka router actor

在我之前的代码中,使用了RoundRobinRouter(在akka版本2.11-2.3.10中)。

 val workerRouter = context.actorOf(Props(new DistanceCalculatingWork(frag)).withRouter(RoundRobinRoutor(groups)),name="workerRouter")

当我使用新版本的akka​​(v2.54)时,代码是由

加入的
val workerRouter = context.actorOf(
            Props(new DistanceCalculatingWork(frag)).withRouter(RoundRobinPool(groups)), name = "workerRouter")

val workerRouter = context.actorOf(RoundRobinPool(groups).props(Props(new DistanceCalculatingWork(frag))), name = "workerRouter")

但是演员无法运行,并且INFO报道:

[INFO] [02/28/2018 17:42:40.202] [CalculateDistances-akka.actor.default-dispatcher-7] [akka://CalculateDistances/user/DistanceCalculatingActor_Master] Message [com.panyl.protax.distance.DistanceActorCounter] from Actor[akka://CalculateDistances/user/DistanceCalculatingActor_Master/workerRouter/$h#2021427677] to Actor[akka://CalculateDistances/user/DistanceCalculatingActor_Master#-384110236] was not delivered. [1] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'.

问题是什么?以及如何解决它?

0 个答案:

没有答案