基于数据库的作业调度器

0 投票
2 回答
748 浏览
提问于 2025-04-16 18:39

我需要一个工作调度器(一个库),它每5分钟查询一次数据库,根据时间触发已经过期的事件,并在失败时重新运行。

这个调度器应该用Python或PHP写的。

我查了一下,发现了Advanced Python Scheduler,但它不太合适,因为它只在自己的工作存储中安排任务。我想要的是它能从数据库中获取任务。

我还找到了Taskforest,它正好符合我的需求,但它是基于文本文件的调度器,这意味着任务必须通过调度器或手动添加到文本文件中,我不想这样做。

有没有人能给我推荐一些有用的东西?

2 个回答

0

Celery 最好是和 RabbitMQ 一起使用,但它也支持数据库,可以用 SQLAlchemy 来连接。

1

这里有一个可能的解决方案:

  • 你可以写一个脚本,用 PHP 或 Python 来处理你的数据库任务。
  • 然后使用一个调度工具:在 Linux 上可以用 Cron,或者在 Windows 上用任务调度器;你可以设置这些任务运行的频率。

我在多个项目中都使用了这个方案。

设置起来非常简单。

撰写回答