1

我正在寻找在 Scala 中使用的简单 Job Scheduler,它可以在 Mongo 中存储作业,或者至少可以简单地扩展为使用 Mongo 作为存储。

任何人都可以提出最好的解决方案吗?

4

1 回答 1

1

使用 Akka 可以构建一个非常简单但可扩展的调度程序系统:

导入 akka.actor._
导入 akka.util.duration._

val system = ActorSystem("SchedulerTest")
案例对象作业

val runnerActor = system.actorOf(道具(
   新演员{
      def receive = { case Job => println("run" + self.path.name)}
   }
))

//在 500 毫秒内向 actor 安排一条 Job 消息
system.scheduler.scheduleOnce(500 毫秒, runnerActor, Job)

//system.scheduler.schedule(0 毫秒, 50 毫秒, runnerActor, Job) //每 50 毫秒重复一条消息

工作人员参与者可以选择安排更多事件。可以通过多种不同的方式将配置序列化到数据库。

关于调度程序的 Akka 2.0 文档

于 2012-05-03T19:25:30.743 回答