在Akka 2.2.0中,我有一個循環路由演員,我想要一個自定義調度員坐在上面。Akka Config - application.conf - 設置調度程序和路由器
在我的application.conf
我有;
durable-dispatcher {
mailbox-type = akka.actor.mailbox.filebased.FileBasedMailboxType
}
akka.actor.deployment {
/notificationServiceWorkers {
dispatcher = durable-dispatcher
router = round-robin
nr-of-instances = 5
}
}
現在,當我嘗試創建這樣的演員時,
ActorRef notificationServiceWorkers = akka.actorOf(Props.create(NotificationServiceActor.class)
.withRouter(new FromConfig()), "notificationServiceWorkers")
調度程序沒有從配置中提取,它使用默認的調度程序。
如果我刪除.withRouter
,Akka拿起調度程序的配置就好,但顯然它不再路由。
如果我加上.withDispatcher
這樣;
ActorRef notificationServiceWorkers = akka.actorOf(Props.create(NotificationServiceActor.class)
.withDispatcher("durable-dispatcher")
.withRouter(new FromConfig()), "notificationServiceWorkers")
這一切正常。問題是(從doco中不清楚)如果我想從application.conf加載調度程序和路由器配置,那麼爲什麼我需要在Props創建中提供這兩者?這是一個錯誤?
這是偉大的。感謝cmbaxter。我認爲這也是預期的功能。有興趣知道爲什麼。 – NightWolf