1
我在Play Framework中使用Akka而不是Job,計劃每X秒運行一次代碼。我的代碼在Heroku免費套餐上運行,我相信它有時暫停一段時間,然後由Heroku系統恢復。Akka是否同時運行同一事件的多個實例?
當Heroku dyno醒來時,它是否有可能注意到它有一些「它欠」的事件,因此同時運行它們?我的代碼不是線程安全的,並且假定在任何給定時間只有一個事件會被運行。
這是在遊戲啓動時運行的演員設置:
object Global extends GlobalSettings {
override def onStart(app: Application) {
val monitorActor = Akka.system.actorOf(Props[MonitorLoadJob], name = "monitorLoad")
Akka.system.scheduler.schedule(0 seconds, 10 seconds, monitorActor, Tick)
}
}