首页 文章

是akka Scheduler单身人士吗?

提问于
浏览
2

如果我有一个3个节点的集群,下面的代码会为每个节点创建一个调度程序或3个调度程序吗?我对文档中的上下文感到有点困惑 .

system.scheduler.schedule(50.milliseconds, 5.seconds, wire[SchedulerRunnable])

在那里,您找到了一个返回akka.actor.Scheduler实例的调度程序方法,该实例对于每个ActorSystem都是唯一的,并且在内部用于调度在特定时间点发生的事情 .

https://doc.akka.io/docs/akka/2.5.5/scala/scheduler.html

1 回答

  • 3

    它将创建3个调度程序,每个节点一个 .

    正如詹姆斯在评论中指出的那样,只有一个集群调度程序的一种方法是使用cluster singleton并在 preStart 中设置您的调度(因此,如果具有单例的节点崩溃并在另一个节点上重新创建,则您的调度将重新开始也开始了) .

    如果你看一下AuctionScheduler in the Lagom online auction example,你的调度程序会自动触发,然后从读取端获取需要完成的信息 .

相关问题